Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод_итог7.doc
Скачиваний:
19
Добавлен:
17.11.2019
Размер:
16.96 Mб
Скачать

3.4 Обнаружение переполнения разрядной сетки в пок

На рисунке 3 представлен алгоритм обнаружения переполнения путем сравнения знаков. Алгоритм аналогичен по логической структуре с рассмотренным ранее алгоритмом обнаружения переполнения для дополнительных кодов. Отличие состоит в отсутствии проверки на особый случай переполнения разрядной сетки, что является преимуществом обратных кодов.

4. Cложение чисел в модифицированных дополнительных кодах (мдк)

Модифицированные коды упрощают процедуру обнаружения переполнения.

В модифицированных кодах для кодирования знака используются не один, как в простых кодах а два разряда S0, S1. т.е. для представления слагаемого вводится дополнительный разряд. (Рис.5)

Комбинация значений “00” используется как код знака “+”, а комбинация “11” как код знака “–”. В модифицированном коде может быть представлен как прямой, так и обратный и дополнительный коды (Рис.6).

Процедура 3. Основные правила сложения в модифицированных дополнительных кодах:

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

  2. отрицательные операнды должны быть преобразованы в дополнительные модифицированные коды и, в таком виде – суммироваться;

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

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

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

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

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

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

На результаты сложения влияют

  1. знаки слагаемых;

  2. соотношения величин модулей слагаемых.

При сложении возможно переполнение результата. Поэтому необходимо определять признаки таких ситуаций.

Знаки слагаемых

Знак/код знака

Соотношение

величин модулей

слагаемых

Возможность

переполнения

Случай

Код знака суммы,

как признак

наличия/отсутствия

переполнения

Условия

наличия/отсутствия

переполнения

A

B

Одинаковые

+/00

+/00

несущественно

возможно

положительное

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

1,

переполнения нет

переполнения нет, если “00”

(A+B)<1 –для дроби

(A+B)<2n-1 –для целого

2,

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

положительное переполнение,

если “01“

(A+B) 1 – для дроби

(A+B)2n- – для целого

/11

/11

несущественно

возможно

отрицательное

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

3,

переполнения нет

переполнения нет, если “11”

|A|+|B|<1 – для дроби

|A|+|B|<2n-1 – для целого

4,

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

отрицательное переполнение,

если “10“

|A|+|B|1 –для дроби

|A|+B|2n-1 – для целого

/11

/11

существенно

особый случай

переполнения

5, особый случай

переполнения

переполнение,

если “11 “ и

модуль суммы равен нулю

|A|+|B|=1 –для дроби

|A|+|B|=2n-1 – для целого

Разные

+/00

/11

|A| >|B|

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

невозможно

6

“00“

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

невозможно

+/00

/11

|A| <|B|

7

“11“

/11

+/00

|A| >|B|

8

“11“

/11

+/00

|A| <|B|

9

“00“

Таблица 3 – Случаи сложения дробных и целых чисел в модифицированных ДК