Составители:
11
C = A + B
перевод C в двоичную систему счисления
вывод C (дополнительный код)
перевод C в прямой код
вывод результата
вывод значений флагов
конец
2 ВЫЧИТАНИЕ ЦЕЛЫХ ЧИСЕЛ
2.1 Основные положения
Вычитание целых чисел выполняется в байтном формате (размер
разрядной сетки – 8 бит).
При вычитании целых чисел с фиксированной
запятой используются
их дополнительные коды, при этом знаковый разряд участвует в операции
точно так же, как и цифровые. В результате этого автоматически формиру-
ется знак результата, причем результат получается в дополнительном коде.
При вычитании целых чисел с фиксированной запятой используются
следующие арифметические флаги:
CF – Carry Flag (флаг переноса). В нем фиксируется заем
в старший
разряд при вычитании.
PF – Parity Flag (флаг четности). Он устанавливается при наличии чет-
ного числа единиц в младшем байте результата, в противном случае –
сбрасывается.
AF – Auxiliary Flag (флаг вспомогательного переноса). В нем фиксиру-
ется межтетрадный (из младшей тетрады в старшую) заем при вычитании.
ZF – Zero Flag (флаг нуля). Он устанавливается при нулевом результате
операции, в
противном случае – сбрасывается.
SF – Sign Flag (флаг знака). В него копируется старший разряд резуль-
тата, интерпретируемый как знак.
OF – Overflow Flag (флаг переполнения). Он устанавливается в коман-
дах вычитания в случае, если результат операции не помещается в формате
операндов.
Корректность при БзИ проверятся по флагу CF:
1) CF = 0. Заем в старший разряд при вычитании
отсутствует, следова-
тельно, результат БзИ корректен;
2) CF = 1. Заем в старший разряд при вычитании имеет место, следова-
тельно, результат БзИ некорректен.
Корректность при ЗИ проверятся по флагу OF:
1) OF = 0. Переполнения формата разрядной сетки при вычитании не
произошло, результат ЗИ корректен;
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »