Функциональная организация микро-ЭВМ и микроконтроллеров. Часть 2: К1816ВЕ48. Негода В.Н - 26 стр.

UptoLike

2
Ps @= A[3..0]
ORLD
Ps, A
100011ss
2
Ps |= A[3..0]
Арифметические команды (таблица 3) немногочисленны и
предназначены для обработки восьмибитовых целых двоичных
чисел. При сложении операнд-приемник всегда аккумулятор,
одресуемый неявно. Для организации вычитания необходимо
перевести вычитаемое как отрицательное число в дополнительный
код и сложить его с уменьшаемым. Команда сложение с учетом
переноса позволяет выполнять суммирование многобайтовых чисел.
Команды сдвига в качестве операнда используют только
аккумулятор, который адресуется неявно, и позволяют умножить и
разделить на 2 в целой степени и позиционировать разряды в
нужное положение. Например:
; Прибавление OP1.X += OP2,
; где: X - битовое поле, размещенное в OP1[7..4],
; OP2 - операнд
; Считается, что переполнение поля X невозможно
MOV R0, #OP2 ; R0 = адрес OP2
MOV A, @R0 ; A = (OP2)
RL A ; позиционирование копии OP2 против поля X
RL A ;
RL A ;
RL A ;
MOV R0, #OP1 ; R0 = адрес OP1
ADD A, @R0 ;подсуммирование копии OP1 к полю X
При использовании комады перестановки тетрад программа
получается короче:
MOV R0, #OP2 ; R0 = адрес OP2
MOV A, @R0 ; A = (OP2)
SWAP A ; позиционирование копии OP2 против
поля X
MOV R0, #OP1 ; R0 = адрес OP1
ADD A, @R0 ;подсуммирование копии OP1 к полю X