Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Естественный способ представления отрицательных чисел можно получить, последовательно вычитая 1 из нуля. Полученное представление отрицательных чисел называется дополнительным кодом (английский эквивалентный термин: two’s complement). Представление чисел со знаком в дополнительном коде также будет циклическим.
HEX | BIN | DEC | К предыд. зн. | |
10...00*) | 100...000 | -2N-1 | -1 | Наименьшее отрицательное число |
..... | ..... | ..... | ||
1..FFE | -2 | -1 | ||
1..FFF | 111...111 | -1 | -1 | |
00...00 | 000...000 | -1 | Нуль | |
00...01 | 000...001 | -1 | ||
00...02 | 000...010 | -1 | ||
..... | ..... | |||
0..FFF | 011...111 | 2N-1-1 | -1 | Наибольшее положительное число |
Обратите внимание на то, что в выбранной разрядной сетке используются для представления чисел все кодовые комбинации, т.е. любой последовательности единиц и нулей в коде соответствует какое-то числовое значение. (При представлении чисел в форматах плавающей точки это будет не так!)
Граница между положительными и отрицательными числами на числовом круге выбирается так, чтобы диапазон был симметричен относительно нуля. Однако полной симметрии не получается. Наименьшее отрицательное число не имеет положительного эквивалента. Кроме того, при такой границе, как показано в таблице и на круговой диаграмме, старший бит кода играет роль знакового: 0 соответствует положительным числам, а 1 - отрицательным.
Как поменять знак числа: -k = -1 -k +1 = (-1 -k) +1
Действие (-1 -k) всегда возможно, и никогда не требует заема. Его можно реализовать инвертированием кода. Это легко увидеть, выполнив вычитание «столбиком»: результат есть инверсия вычитаемого:
- |
Смена знака наименьшего отрицательного числа 100..00 даст неверный результат. Это следствие того факта, что диапазон представимых значений в дополнительном коде несимметричен (отрицательных чисел на одно больше, нежели положительных). По этой причине это значение часто используется для специальных целей (например в стандарте на числа с плавающей точкой для изображения значения «неопределенность»).
Дата публикования: 2015-07-22; Прочитано: 453 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!