Команда увеличения на единицу

Деление

Умножение

Вычитание

Сложение с переносом

Сложение

Команда складывает первый операнд со вторым и результат помещает в первый операнд. В качестве первого операнда всегда аккумулятор.

· ADD A

o R0-R7

o Ad

o @R0-R1

o #d

В результате выполнения могут выставляться флаги C AC, OV

Пример:

Сложить 2 числа, одно из которых находится по адресу 30, а другое по адресу 40

MOV A,30

ADD A,40

Команда складывает аккумулятор со вторым операндом и с флагом С. Флаг С находится в PSW и отвечает за перенос битов из байта

· ADDC A

o R0-R7

o #d

o Ad

o @R0-R1

В результате выполнения выставляются флаги C AC, OV

Пример:

Сложить 2 числа, находящиеся в регистрах R2 и R3, результат разместить в ячейках 30 и 31.

 

F5+32=127

 

MOV A,R2

ADD A,R3

MOV 30,A

MOV A,#0

ADDC A,#0

MOV 31,A

Команда вычитает из аккумулятора второй операнд и всегда флаг С

· SUBB A,

o R0-R7

o #d

o Ad

o @R0-R1

В результате выполнения выставляются флаги C AC, OV

Если флаг С не требуется учитывать (он мешает) использовать команду CLR C

Команда умножает аккумулятор A на вспомогательный аккумулятор B, Результат распределяется следующим образом: Младший байт в А, старший байт в В

· MUL AB

OV=1 когда младший байт результата больше FF

C=0 всегда

Команда делит А на В и результат размещает следующим образом: Частное в А, остаток в В

· DIV AB

OV=1, если деление на 0

С=0

· INC

o R0-R7

o Ad

o A

o @R0-R1

o DPTR

Флаги не работают