Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_итог7.doc
Скачиваний:
19
Добавлен:
17.11.2019
Размер:
16.96 Mб
Скачать

3.2.4. Сложение дробных и целых отрицательных чисел с переполнением (Случай 4)

3.2.4.1. Дробные отрицательные числа. Пусть складываются два отрицательных слагаемых представленных в форме дробных чисел. Пусть также (|A|+|B|)1. Очевидно, что модуль суммы в этом случае превосходит максимальное число, представимое в заданной разрядной сетке, т.е. должно иметь место отрицательное переполнение, признаком которого – положительный знак суммы. Так как слагаемые отрицательные числа, то сложение выполняется в модифицированных дополнительных кодах. При сложении должно иметь место отрицательное переполнение, признаком которого должна быть комбинация “10” в знаковых разрядах суммы.

3.2.4.2. Целые отрицательные числа. Пусть складываются два отрицательных слагаемых, представленных в форме целых чисел. Пусть также (|A|+|B|)2n-1. Очевидно, что модуль суммы в этом случае превосходит максимальное число, представимое в заданной разрядной сетке.

Таким образом, как и при сложении дробных чисел должно иметь место отрицательное переполнение, признаком которого должна быть комбинация “10” в знаковых разрядах суммы.

Пример 4. Сложение дробных и целых ОТРИЦАТЕЛЬНЫХ чисел С переполнениЕМ (случай 4мдк)

Выполнить сложение в модифицированном дополнительном коде пар дробных и целых отрицательных операндов соответственно А,В и X,Y.

Дробные слагаемые в ПК

равны

Целые слагаемые в ПК равны

А= –0.7510= –0.11000002;

В= –0.37510= – 0.01100002.

X= –8010= –10100002;

Y= –6410= –10000002.

Предварительные выводы.

Очевидно, что т.к. |75|+|0.375|1 и |80|+|64|12810, то для заданных целых и дробных отрицательных чисел выполняются условия (|A|+|B|)2n-1 и (|A|+|B|)1, соответственно. Поэтому, при сложении следует ожидать отрицательного переполнения.

Решение.

Дополнительные коды дробных слагаемые равны

Дополнительные коды целых слагаемые равны

[A]доп = 11.01000002;

[B]доп = 11.10100002,

[X]доп = 11 01100002;

[Y]доп =11 10000002

П ри сложении дробных чисел А+В в знаковых разрядах суммы–комбинация “10”, а модуль значащей части числа равен 0.11100002=0.87510. Разность 2–(А+В) подсчитанная теоретически также должна быть равна 2–(0.75+0.375)=2–1.125=0.875. Комбинация значений 10 в знаковых разрядах суммы не соответствует разрешенным комбинациям модифицированного кода и является признаком отрицательного переполнения.

При сложении целых чисел X+Y в знаковых разрядах суммы–комбинация “10”, а модуль значащей части числа равен 28 -144 , это опять совпадает с полученным в примере результатом.

Таким образом имеет место отрицательное переполнение с соответствующим признаком, те. комбинацией значений знаковых разрядов “10”