Команды арифметических операций


В данную группу входят 24 команды, краткое описание которых приведено в табл. 1.17. Кроме этого в таблице приведены данные о длине команды в байтах и время ее выполнения в машинных циклах.

Таблица.1.17. Арифметические операции

Мнемоника команды Код операции Количество байтов в команде Время выполнения команды, циклы Выполняемые действия
ADD A, Rn 00l01rrr 1 1 (A) (A) + (Rn)
ADD A, ad 00100101 2 1 (A) (A) + (ad)
ADD A, @Ri 0010011i 1 1 (A) (A) + ((Ri))
ADD A, #d 00100100 2 1 (A) (A) + #d
ADDC A, Rn 00111rrr 1 1 (A) (A) + (Rn) + (C)
ADDC A, ad 00110101 2 1 (A) (A) + (ad) + (C)
ADDC A, @Ri 0011011i 1 1 (A) (A) + ((Ri)) + (C)
ADDC A, #d 00110100 2 1 (A) (A) + # d + (C)
DA A 11010100 1 1 Если (А0…3)>9 или ((AC)=1), то (А0…3) (А0…) + 6, затем если (А4…7) >9 или ((С)=1), то (А4…7) (А4…7) + 6
SUBB A, Rn 10011rrr 1 1 (A) (A) - (C) - (Rn)
SUBB A, ad 10010101 2 1 (A) (A) - (C) - ((ad))
SUBB А, @Ri 1001011i 1 1 (A) (A) - (C) - ((Ri))
SUBB А, d 10010100 2 1 (A) (A) - (C) - #d
INC А 00000100 1 1 (A) (A) + 1
INC Rn 00001rrr 1 1 (Rn) (Rn) + 1
INC ad 00000101 2 1 (ad) (ad) + 1
INC @Ri 0000011i 1 1 ((Ri)) ((Ri)) + 1
INC DPTR 10100011 1 2 (DPTR ) (DPTR) + 1
DEC A 00010100 1 1 (A) (A) – 1
DEC Rn 00011rrr 1 1 (Rn) (Rn) – 1
DEC ad 00010101 2 1 (ad) (ad) – 1
DEC @Ri 0001011i 1 1 ((Ri)) ((Ri)) - 1
MUL AB 10100100 1 4 (B)(A) (A)*(В)
DIV AB 10000100 1 4 (B).(A) (A)/(В)

По результату выполнения команд ADD, ADDC, SUBB, MUL и DIV устанавливаются флаги PSW.

Флаг С устанавливается при переносе из разряда D7, т. е. в случае, если результат не помещается в восемь разрядов; флаг АС устанавливается при переносе из разряда D3 в командах сложения и вычитания и служит для реализации десятичной арифметики. Этот признак используется командой DAA.

Флаг OV устанавливается при переносе из разряда D6, т. е. в случае, если результат не помещается в семь разрядов и восьмой не может быть интерпретирован как знаковый. Этот признак служит для организации обработки чисел со знаком.

Наконец, флаг Р устанавливается и сбрасывается аппаратно. Если число единичных бит в аккумуляторе нечетно, то Р = 1, в противном случае Р = 0.

Команды логических операций

В данную группу входят 25 команды, краткое описание которых приведено в табл. 1.18. Кроме этого в таблице приведены данные о длине команды в байтах и время ее выполнения в машинных циклах.

 

 

Таблица.1.18. Логические операции

Мнемоника команды Код операции Количество байтов в команде Время выполнения команды, циклы Выполняемые действия
ANL A, Rn 01011rrr 1 1 (A) (A) AND (Rn)
ANL A, ad 01010101 2 1 (A) (A) AND (ad)
ANL A, @Ri 0101011i 1 1 (A) (A) AND ((Ri))
ANL A, #d 01010100 2 1 (A) (A) AND #d
ANL ad, A 01010010 2 1 (ad) (ad) AND (A)
ANL ad, #d 01010011 3 2 (ad) (ad) AND #d
ORL A, Rn 01001rrr 1 1 (A) (A) OR (Rn)
ORL A, ad 01000101 2 1 (A) (A) OR (ad)
ORL A, @Ri 0100011i 1 1 (A) (A) OR ((Ri))
ORL A, #d 01000100 2 1 (A) (A) OR #d
ORL ad, A 01000010 2 1 (ad) (ad) OR (A)
ORL ad, #d 01000011 3 2 (ad) (ad) OR #d
XRL A, Rn 01101rrr 1 1 (A) (A) XOR (Rn)
XRL A, ad 01100101 2 1 (A) (A) XOR (ad)
XRL A, @Ri 0110011i 1 1 (A) (A) XOR ((Ri))
XRL A, #d 01100100 2 1 (A) (A) XOR #d
XRL ad, A 01100010 2 1 (ad) (ad) XOR (A)
XRL ad, #d 01100011 3 2 (ad) (ad) XOR #d
CLR A 11100100 1 1 (A) 0
CPL A 11110100 1 1 (A) NOT(A)
RL A 00100011 1 1 (An+1) (An), n=0÷6, (A0) (A7)
RLC A 00110011 1 1 (An+1) (An), n=0÷6 (A0) (C), (C) (A7)
RR A 00000011 1 1 (An) (An+1), n=0÷6, (A7) (A0)
RRC A 00010011 1 1 (An) (An+1), n=0÷6 (A7) (C), (C) (A0)
SWAP A 11000100 1 1 (A0…3) ↔ (A4…7)


Дата добавления: 2016-11-26; просмотров: 1822;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.