Составители:
48
величину числа (одно из таких представлений чисел называется их
дополнительным кодом).
Использование чисел со знаком (прямого кода представления
чисел) усложняет структуру ЭВМ, так как операция сложения двух
чисел, имеющих разные знаки, должна быть заменена на операцию
вычитания меньшей величины из большей и присвоения результату
знака большей величины. Поэтому в большинстве ЭВМ
отрицательные числа представляют в виде так называемых
дополнений, что при суммировании двух чисел с разными знаками
позволяет заменить вычитание на обычное сложение.
Дополнением М n-разрядного целого числа К называется
разность
М = b
n
-К, (2.1)
где b - основание системы счисления.
Так как количество различных целых n-разрядных чисел равно
b
n
(от 0 до b
n
- 1), то половину этих чисел рассматривают как
положительные (от 0 до b
n
/2- 1), а другую половину - как
отрицательные (т. е. как дополнения к первой половине чисел).
Полный же набор таких чисел называют числами, представленными
в дополнительном коде (табл. 2.5).
Легко проверить правильность получения дополнений (кодов
отрицательных чисел) в столбцах табл. 2.5. Для этого надо сложить
число из нижней половины таблицы с его дополнением,
расположенным над кодом 0. Результатом такого суммирования
будут числа 10
5
=(1 00 000)
10
, 16
4
= (1 0000)
16
или 2
16
= (10 000 0000
0000 0000)
2
. В связи с тем, что разрядность чисел в табл. 2.5
ограничена 5, 4 и 16 разрядами соответственно, 1 в старшем разряде
полученных сумм не учитывается, так как она "вываливается" за
разрядную сетку. Следовательно, все суммы равны нулю, т. е.
правильному результату сложения двух одинаковых по величине
чисел, имеющих разные знаки.
Таблица 2.5
Дополнительные коды чисел
Прямой код ряда
5-разрядных
десятичных чисел
Дополнительный код чисел
5-разрядных
десятичных
4-разрядных
шестнадцатеричных
16-разрядных
двоичных
-50 000
-49 999
-49 998
…
-32 769
-32 768
-32 677
…
-3
50 000
50 001
50 002
…
67 231
67 232
67 233
…
99 997
–
–
–
…
–
8000
8001
…
FFFD
–
–
–
…
–
1 000 0000 0000 0000
1 000 0000 0000 0001
…
1 111 1111 1111 1101
Страницы
- « первая
- ‹ предыдущая
- …
- 49
- 50
- 51
- 52
- 53
- …
- следующая ›
- последняя »
