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

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

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

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

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

А= –0.7510  = –0.11000002;

В= –0.37510= – 0.01100002

X= –8010 = –10100002;

Y= –6410 = –10000002

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

         (А+В) =–1.2510® –1.00100002  и  (X+Y)= –14410 ® –10100002.

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

Возникающий из знаковых разрядов перенос отбрасывается.

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

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

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

[A]доп = 1.01000002;

[B]доп  = 1.10100002

[X]доп = 1 01100002;

[Y]доп  = 1 10000002

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


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

.

3.1.5. Сложение отрицательных чисел с “особым случаем переполнения”(Случай 5)

Пусть складываются два отрицательных слагаемых, представленных в форме или целых, или дробных чисел.

Пусть для целых чисел, выполняется условие (|A|+|B|)=2n-1 , а для дробных (|A|+|B|)=1.

Очевидно, что в этом  случае модуль суммы на единицу младшего разряда  больше модуля максимального числа,  представимого в заданной разрядной сетке (формулы 2,4). Таким образом, при сложении  должно иметь место отрицательное переполнение.

Однако, при особом случае переполнения значение знакового разряда как для целых, так и для дробных чисел совпадает с истинным (единичным ) значением знака суммы. В этом случае знак суммы не является достаточным признаком особого переполнения.

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


Пример 5Сложение отрицательных чисел с “особым случаем переполнения”(Случай 5)

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

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

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

A= –0.7510 = – 0.11000002  

B= – 0.2510= – 0.01000002

A= –8110= – 10100012

В= –4710= – 01011112

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

         (А+В) =–1.0010® –1.00000002  и  (X+Y)= –12810 ® –100000002.

         Предварительные выводы. Полученные суммы отвечают равенствам (|A|+|B|)=2n-1  и  (|X|+|Y|)=1, характерным для особого случая переполнения. Поэтому, при сложении следует ожидать “особый случай” переполнения.

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

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

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

[A]доп = 1.01000002;

[B]доп = 1.11000002.

[X]доп = 1 01011112;

[Y]доп = 1 10100012

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


Из примеров следует, что содержание знакового разряда в этом случае не позволяет однозначно определить переполнение, так как совпадает со значениями знаков слагаемых. Однако, модули сумм, как для целых, так и для дробных чисел равны “0”. Поэтому в качестве признака переполнения выступают: а) единица в знаковом разряде; б) нулевое значение модуля суммы.