Реализация процессором арифметических операций. Будько М.Б - 6 стр.

UptoLike

5
Корректность при ЗИ проверятся по флагу OF:
1) OF = 0. Переполнения формата разрядной сетки при сложении не
произошло, результат ЗИ корректен;
2) OF = 1. Результат ЗИ некорректен, т.к. при сложении произошло
переполнение формата разрядной сетки, о котором можно судить по двум
признакам:
а) знаки операндов одинаковы, а знак суммы отличается от
них;
б) сравниваются переносы из старшего цифрового разряда в знако-
вый и из знакового за пределы формата, при этом один из переносов имеет
место, а другой отсутствует.
Примечание 1. При OF = 1 имеет место так называемый особый слу-
чай переполнения формата. Такое переполнение происходит при условии
А + В > 128, откуда получаем
128А < В < 127. В случае сложения пе-
реполнение имеет место при одинаковых знаках операндов.
Примечание 2. В пункте 3 задания (см. ниже) А подбирается из усло-
вия А + В = 128, при этом при сложении положительных чисел будет фик-
сироваться переполнение, а при сложении отрицательныхне будет.
1.2 Задание
1) Для заданных чисел А и В выполнить операцию знакового сложения
со всеми комбинациями знаков операндов (4 случая).
Для каждого примера выполнить следующее:
а) Проставить межразрядные переносы, возникающие при сложении.
б) Дать ЗИ операндов и результата. При получении отрицательного
результата предварительно преобразовать его из дополнительного кода в
прямой.
в) Дать БзИ операндов и результата. При получении неверного ре-
зультата пояснить причину его возникновения
.
г) Показать значения арифметических флагов для каждого из приме-
ров.
2) Сохранив значение первого операнда А, выбрать такое значение
операнда В, чтобы в операции сложения с одинаковыми знаками имел ме-
сто особый случай переполнения формата. Выполнить два примера, иллю-
стрирующие эти случаи (см. выше «Примечание 1»). Для каждого из них
выполнить следующее
:
а) Проставить межразрядные переносы, возникающие при сложении.
б) Дать ЗИ операндов и результата. При получении отрицательного
результата предварительно преобразовать его из дополнительного кода в
прямой.
в) Дать БзИ операндов и результата. При получении неверного ре-
зультата пояснить причину его возникновения.
г) Показать значения арифметических флагов для каждого из приме-
ров.