Пример2–ОК. Сложение в опк дробных и целых отрицательных чисел с переполнением (Случай 4ок) |
||||||
Выполнить сложение в обратном коде пар дробных и целых отрицательных операндов соответственно А,В и X,Y. |
||||||
Дробные слагаемые равны |
Целые слагаемые равны |
|||||
А= –0.87510 = –0.11100002; В= –0.37510= – 0.01100002 |
X= –8710 = –10101112; Y= –6910 = –10001012 |
|||||
Предварительное решение. Предварительное сложение приводит к следующим результатам. Отрицательная сумма дробных чисел, должна быть равна: –1. 12510. Теоретическое значение целой суммы равно –15610 |
||||||
Предварительные выводы. В обоих случаях полученные значения сумм превышают значения, представимые в заданной разрядной сетки, т.е. должно имееть место отрицательное переполнение. Кроме того, следует ожидать переносы из знаковых разрядов дробных и целых сумм. |
||||||
Решение. Так как слагаемые – отрицательные числа, то они должны быть представлены в обратных кодах. |
||||||
Обратные коды дробных слагаемые равны |
Обратные коды целых слагаемые равны |
|||||
[A]обр=1.00011112; [B]обр=1.10011112, |
[X]обр = 1 01010002; [Y]обр = 1 01110102. |
|||||
Сложение в двоичных дополнительных кодах имеет вид: |
||||||
|
||||||
При сложении знаковом разряде суммы (А+В) и (X+Y) – нулевые значения. Таким образом, в обеих случаях имеет место отрицательное переполнение с соответствующими признаками. |
3.1.5. Сложение в обратных кодах отрицательных чисел с “особым случаем переполнением ” при сложении в дополнительных кодах (Случай 5)
Пусть складываются отрицательные слагаемые, представленные в форме или целых, или дробных чисел.
Ранее показано, что особый случай переполнения для дополнительных кодов имеет место, если для модулей целых чисел, выполняется условие (|A|+|B|)=2n-1 , а для дробных (|A|+|B|)=1.
Очевидно, что переполнение в этих условиях должно иметь место и для обратных кодов. Вопрос о признаке, позволяющем обнаружить такое переполнение, может быть разрешен на примерах.
Пример 3–ОК. Сложение в опк дробных и целых отрицательных чисел с СООтношениями модулей (|A|+|B|)=2n-1 и (|A|+|B|)=1 (Случай 5ок) |
||||||
Выполнить сложение в обратном коде пар дробных и целых отрицательных операндов соответственно А,В и X,Y. |
||||||
Дробные слагаемые равны |
Целые слагаемые равны |
|||||
A= –8110= – 10100012 В= –4710= – 01011112 |
X= –0.7510 = – 0.11000002 Y= – 0.2510= – 0.01000002 |
|||||
Предварительные выводы. Очевидно, что т.к. |81|+|47|=12810 и |0.75|+|0.25|=1, то для заданных целых и дробных отрицательных чисел выполняются условия (|A|+|B|)=2n-1 и (|A|+|B|)=1, соответственно. Поэтому, при сложении следует ожидать переполнения. |
||||||
Кроме того, следует ожидать переносы из знаковых разрядов дробных и целых сумм. |
||||||
Решение. Так как слагаемые отрицательные числа, то они должны быть представлены в обратных кодах. |
||||||
Обратные коды дробных слагаемые равны |
Обратные е коды целых слагаемые равны |
|||||
[A]обр = 1 01011102; [В]обр = 1 10100002 |
[X] обр = 1.00111112; [Y] обр = 1.10111112. |
|||||
Сложение в двоичных обратных кодах имеет вид: |
||||||
|
||||||
Из примеров следует, что в отличии от сложения в дополнительных кодах при сложении в обратных кодах при соотношении модулей (|A|+|B|)=2n-1 и (|A|+|B|)=1 формируется обычный признак отрицательного переполнения, которое распознается путем сравнения знаков слагаемых и суммы. |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.