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). Таким образом, при сложении должно иметь место отрицательное переполнение, признаком которого должен быть положительный знак суммы.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.