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

3.  знаковые разряды слагаемых участвуют в операции наравне с числовыми разрядами;

4.  перенос из старшего знакового разряда, который может возникнуть при сложении, должен быть подсуммирован в младший разряд суммы

5.  если сумма – положительное число, то результат суммирования содержит нуль в знаковом разряде. Сумма в этом случае сформирована  в прямом коде. Напротив, если сумма – отрицательна, то результат суммирования содержит единицу в знаковом разряде, а сумма представлена в обратном коде;

6.  при суммировании операндов одного знака возможно отрицательное или положительное переполнение, которое определяется путем сравнения знака суммы со знаком операнда (любого)

7.  при использовании обратного код невозможен случай особого переполнения, а при тех же соотношениях модулей операндов имеет место простое отрицательное переполнение разрядной сетки.

Из Процедуры СлОК  вытекают  следующие особенности сложения чисел в обратных кодах:

1.  перенос из знакового разряда, который может возникнуть при сложении, не отбрасывается как в дополнительных кодах, а должен быть подсуммирован  в младший разряд суммы;

2.  для обратных кодов не характерен особый случай переполнения.

В Таблице 3 приведены случаи суммирования,   имеющие особенности в случае применения обратных кодах. Отличия имеют место для  случаев 3,4, 8,9 (Табл.2).

возникает перенос из знакового разряда суммы и необходимо его подсуммирование в младший разряд. В случае 5 соотношение величин модулей слагаемых вызывает  “особый ”случай переполнения в дополнительных кодах. Предполагается, что особый случай будет отсутствовать при  использовании обратных кодов. Перечисленные  случаи требуют более детального анализа.

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

Таблица 3 – Случаи сложения, вызывающие перенос из знакового разряда

Случай сложения из табл.2

Знак

результата

Переполнение

Способ определения переполнения

Случай 3

“–”

нет

Случай 4

“+”

есть

Сравнение знаков

Случай 5

“+”

простое переполнение, особое переполнение невозможно

Сравнение знаков

Случай 6

“+”

переполнение невозможно

переполнение невозможно

Случай 9

“–”

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

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

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

Кроме того, следует ожидать перенос из знакового разряда, который должен быть подсуммирован к младшему разряду суммы. Действительно, SA=SB=1. Поэтому, SA+SB=1 и CO=1 (см. Табл.1))

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