- •1. Предварительные замечания
- •3. Сложение чисел в простых кодах
- •3.1.1. Сложение дробных и целых положительных чисел без переполнения. (Случай 1)
- •3.1.2. Сложение дробных и целых положительных чисел с переполнением (Случай 2)
- •3.1.3. Сложение дробных и целых отрицательных чисел без переполнения (Случай 3)
- •3.1.4. Сложение дробных и целых отрицательных чисел с переполнением (Случай 4)
- •3.1.5. Сложение отрицательных чисел с “особым случаем переполнения”(Случай 5)
- •3.6.Сложение чисел разных знаков
- •3.1.6.1. Модуль положительного операнда больше модуля отрицательного. (Случаи 6, 9)
- •3.1.6.3. Модуль положительного операнда меньше модуля отрицательного (Случаи 7,8).
- •3.4 Обнаружение переполнения разрядной сетки в пдк
- •3.2.1. Сложение в обратных кодах дробных и целых отрицательных чисел без переполнения (Случай 3ок)
- •3.1.4. Сложение в обратных кодах дробных и целых отрицательных чисел с переполнением (Случай 4ок)
- •3.1.5. Сложение в обратных кодах отрицательных чисел с “особым случаем переполнением ” при сложении в дополнительных кодах (Случай 5)
- •3.6.Сложение в обратных кодах чисел разных знаков
- •3.1.6.1. Модуль положительного операнда больше модуля отрицательного. (Случаи 6, 9)
- •3.4 Обнаружение переполнения разрядной сетки в пок
- •4. Cложение чисел в модифицированных дополнительных кодах (мдк)
- •3.2.1. Сложение дробных и целых положительных чисел без переполнения. (Случай 1)
- •3.2.2. Сложение дробных и целых положительных чисел с переполнением (Случай 2)
- •3.2.3. Сложение дробных и целых отрицательных чисел без переполнения (Случай 3)
- •3.2.4. Сложение дробных и целых отрицательных чисел с переполнением (Случай 4)
- •3.2.5. Сложение целых отрицательных чисел с “особым случаем переполнения”(Случай 5)
- •3.2.6.Сложение чисел разного знака в модифицированных дополнительных кодах
- •3.2.6.1. Модуль положительного операнда больше модуля отрицательного. (Случаи 6,9)
- •3.2.6.3. Модуль положительного операнда меньше модуля отрицательного (Случаи 7,8).
- •4. Обнаружение переполнения разрядной сетки в модифицированных дополнительных кодах
- •1. Предварительные замечания..…………………………………………..1
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”. Поэтому в качестве признака переполнения выступают: а) единица в знаковом разряде; б) нулевое значение модуля суммы. |