Курс лекций. - Микропроцессоры



             

Описание команд микроконтроллеров семейства MCS-48 - часть 5


(PC) = (PC) + 1
(F1) = 0
Машинный код:

1 0 1 0 0 1 0 1

DA A - десятичная коррекция аккумулятора при сложении двоично-десятичных чисел.

Описание: команда десятичной коррекции позволяет вести сложение чисел, представленных в упакованном двоично-десятичном коде. Команда применяется после инструкций ADD или ADDC. Инструкции (команды) ADD или ADDC позволяют суммировать сразу две тетрады, расположенные в одном байте.

Если биты аккумулятора с 0 по 3 содержат число большее 9 (xxxx1010:xxxx1111) или флаг вспомогательного переноса AC содержит '1', то к аккумулятору прибавляется число 6 для того, чтобы получить правильную двоично-десятичную цифру в младшей тетраде.

Если старшие биты аккумулятора (с 4 по 7) содержат число большее 9 (1010xxxx :1111xxxx) или флаг переноса C содержит '1', то к аккумулятору прибавляется число 60h для того, чтобы получить правильную двоично-десятичную цифру в старшей тетраде.

Если в результате операции DA A возникнет перенос, то флаг переноса C будет установлен в 1. Единичный флаг переноса после операции DA A означает, что результат суммирования больше 100 и этим можно воспользоваться для суммирования многоразрядных двоично-десятичных чисел. Команда десятичной коррекции не воздействует на флаг переполнения OV.

Примечание: команда DA A не может преобразовать двоичное число из аккумулятора в двоично-десятичный вид или правильно скорректировать двоично-десятичное вычитание.

Пример: DA A

Количество байт: 1
Количество циклов: 1
Действие команды
:
(PC) = (PC) + 1
IF [[(A3-0) > 9] or [(AC) = 1]] THEN (A3-0) = (A3-0) + 6
AND
IF [[(A7-4) > 9] or [(C) = 1]] THEN (A7-4) = (A7-4) + 6
Машинный код: 0 1 0 1 0 1 1 1

DEC <байт> - производит вычитание 1 из указанного операнда.

Описание: операнд уменьшается на 1. Если первоначально в ячейке было записано значение 00h, то в нее заносится значение 0FFh. Команда не воздействует на флаги.

Для команды DEC разрешены следующие режимы адресации:

  • неявная.

Пример: DEC A

Количество байт: 1



Содержание  Назад  Вперед