Сложение чисел в МПТ: Методическое пособие к лабораторной работе, страница 5

3.1.3. Сложение дробных  и целых отрицательных чисел без переполнения (Случай 3)

3.1.3.1. Дробные отрицательные числа. Пусть складываются два отрицательных слагаемых, представленных в форме дробных чисел и таких, что (|A|+|B|)<1. Это означает, что модуль суммы не превосходит максимального числа,  представимого в заданной разрядной сетке, т.е. переполнения быть не должно. Так как слагаемые отрицательные числа, то сложение выполняется в дополнительных кодах, а  согласно Процедуре 2 сумма также должна формироваться в доп. коде.

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

Пример 3 Сложение дробных и целых отрицатель­ных чисел без переполнения(Случай 3)

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

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

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

А= –0.7510= –0.11000002;

В= –0.12510= – 0.00100002,

X= –3210= –01000002

Y= –6410= –10000002

         Предварительное решение. При заданных значениях слагаемых, суммы (А+В) и (X+Y) должна быть равны, соответственно  

         (А+В) =–0.87510® –0.11100002  и  (X+Y)= –9610 ® –11000002.

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

Суммы сформированы в дополнительных кодах. Возникающий из знаковых разрядов перенос отбрасывается.

        Решение. Так как все операнды отрицательные числа, то они должны быть преобразованы в дополнительные коды.

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

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

A]доп=1.01000002; [B]доп=1.11100002,

A]доп=1.01000002; [B]доп=1.11100002,

        Сложение в двоичных простых дополнительных кодах имеет вид:


Сумма дробных чисел (А+В), переведенная из дополнительного кода в прямой,  равна  [1.0010000]дк ®[1.11100002]пр= –0.87510.

Сумма целых чисел , также переведенная из дополнительного кода в прямой  равна [1 0100000]дк ®[1 1100000]пр= – 9610. Это совпадает с прогнозируемыми результатами..

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

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

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