Составители:
35
Для проверки правильности результата представим его в десятичной
системе счисления. Имеем: +10000000
2
= +128, что соответствует
правильному результату.
Пример 7.3.8. Вычислить -120-9 = -1111000
2
- 1001
2
= 1 0000111
обр
+
+ 1 1110110
обр
= 1 0001000
доп
+ 1 1110111
доп
.
Так как оба числа отрицательны, то представим их, к примеру, в
дополнительном коде и выполним сложение по правилам двоичной
арифметики.
1 0001000
+ 1 1110111
1 0 1111111
+ –
Образовалась единица переноса из знакового разряда за пределы
разрядной сетки, но при этом отсутствовал перенос из информационного
разряда в знаковый (4 ситуация). Следовательно, имеет место наличие
отрицательного переполнения разрядной сетки. Судя по знаку (1), результат
отрицателен, значит, представлен в дополнительном коде (поскольку
сложение выполнялось в этом коде) и требует перевода в прямой код.
Для проверки правильности результата представим его в десятичной
системе счисления. Для этого нам необходимо получить абсолютное
значение информационных разрядов. Тогда: 01111111
доп
= 10000000
=
10000001
пр
= 129. Так как знак результата 1, то имеем -129, что соответствует
истине.
Из приведенных примеров видно, что при положительном переполнении
(121+7) результат операции сложения положительный, при отрицательном
переполнении (-120-9) – результат отрицательный. При наличии переноса в
знаковый разряд и из него (-120-7), переполнение отсутствует, а
возникающий перенос из знакового разряда игнорируется.
Для проверки правильности результата представим его в десятичной
системе счисления. Имеем: +100000002 = +128, что соответствует
правильному результату.
Пример 7.3.8. Вычислить -120-9 = -11110002 - 10012 = 1 0000111обр +
+ 1 1110110обр = 1 0001000доп + 1 1110111доп.
Так как оба числа отрицательны, то представим их, к примеру, в
дополнительном коде и выполним сложение по правилам двоичной
арифметики.
1 0001000
+ 1 1110111
1 0 1111111
+ –
Образовалась единица переноса из знакового разряда за пределы
разрядной сетки, но при этом отсутствовал перенос из информационного
разряда в знаковый (4 ситуация). Следовательно, имеет место наличие
отрицательного переполнения разрядной сетки. Судя по знаку (1), результат
отрицателен, значит, представлен в дополнительном коде (поскольку
сложение выполнялось в этом коде) и требует перевода в прямой код.
Для проверки правильности результата представим его в десятичной
системе счисления. Для этого нам необходимо получить абсолютное
значение информационных разрядов. Тогда: 01111111доп = 10000000 =
10000001пр = 129. Так как знак результата 1, то имеем -129, что соответствует
истине.
Из приведенных примеров видно, что при положительном переполнении
(121+7) результат операции сложения положительный, при отрицательном
переполнении (-120-9) – результат отрицательный. При наличии переноса в
знаковый разряд и из него (-120-7), переполнение отсутствует, а
возникающий перенос из знакового разряда игнорируется.
35
Страницы
- « первая
- ‹ предыдущая
- …
- 33
- 34
- 35
- 36
- 37
- …
- следующая ›
- последняя »
