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




Название команды Мнемокод КОП Т Б Ц Операция
Логическое И аккумулятора и регистра ANL A, Rn 01011rrr       (A) = (A) /\ (Rn)
Логическое И аккумулятора и прямоадресуемого байта ANL A, ad         (A) = (A) /\ (ad)
Логическое И аккумулятора и байта из РПД ANL A, @Ri 0101011i       (A) = (A) /\ ((Ri))
Логическое И аккумулятора и константы ANL A, #d         (A) = (A) /\ #d
Логическое И прямоадресуемого байта и аккумулятора ANL ad, A         (ad) = (ad) /\ (A)
Логическое И прямоадресуемого байта и константы ANL ad, #d         (ad) = (ad) /\ #d
Логическое ИЛИ аккумулятора и регистра ORL A, Rn 01001rrr       (A) = (A) \/ (Rn)
Логическое ИЛИ аккумулятора и прямоадресуемого байта ORL A, ad         (A) = (A) \/ (ad)
Логическое ИЛИ аккумулятора и байта из РПД ORL A, @Ri 0100011i       (A) = (A) \/ ((Ri))
Логическое ИЛИ аккумулятора и константы ORL A, #d         (A) = (A) \/ #d
Логическое ИЛИ прямоадресуемого байта и аккумулятора ORL ad, A         (ad) = (ad) \/ (A)
Логическое ИЛИ прямоадресуемого байта и константы ORL ad, #d         (ad) = (ad) \/ #d
Исключающее ИЛИ аккумулятора и регистра XRL A, Rn 01101rrr       (A) = (A) \/ (Rn)
Исключающее ИЛИ аккумулятора и прямоадресуемого байта XRL A, ad         (A) = (A) \/ (ad)
Исключающее ИЛИ аккумулятора и байта из РПД XRL A, @Ri 0110011i       (A) = (A) \/ ((Ri))
Исключающее ИЛИ аккумулятора и константы XRL A, #d         (A) = (A) \/ #d
Исключающее ИЛИ прямоадресуемого байта и аккумулятора XRL ad, A         (ad) = (ad) \/ (A)
Исключающее ИЛИ прямоадресуемого байта и константы XRL ad, #d         (ad) = (ad) \/ #d
Сброс аккумулятора CLR A         (A) = 0
Инверсия аккумулятора CPL A         (A) = (A)
Сдвиг аккумулятора влево циклически RL A         (An+1) = (An), n = 0? 6, (A0) = (A7)
Сдвиг аккумулятора влево через перенос RLC A         (An+1) = (An), n = 0? 6, (A0) = (C), (C) = (A7)
Сдвиг аккумулятора вправо циклически RR A         (A n) = (A n+1), n = 0? 6, (A7) = (A0)
Сдвиг аккумулятора вправо через перенос RRC A         (A n) = (A n+1), n = 0? 6, (A7) = (C), (C) = (A0)
Обмен местами тетрад в аккумуляторе SWAP A         (A0-3) <-> (A4-7)

Группа команд операции с битами

Название команды Мнемокод КОП Т Б Ц Операция
Сброс переноса CLR C         (C) = 0
Сброс бита CLR bit         (b) = 0
Установка переноса SETB C         (C) = 1
Установка бита SETB bit         (b) = 1
Инверсия переноса CPL C         (C) = (C)
Инверсия бита CPL bit         (b) = (b)
Логическое И бита и переноса ANL C, bit         (C) = (C) /\ (b)
Логическое И инверсии бита и переноса ANL C, /bit         (C) = (C) /\ (b)
Логическое ИЛИ бита и переноса ORL C, bit         (C) = (C) \/ (b)
Логическое ИЛИ инверсии бита и переноса ORL C, /bit         (C) = (C) \/ (b)
Пересылка бита в перенос MOV C, bit         (C) = (b)
Пересылка переноса в бит MOV bit, C         (b) = (C)

Группа команд передачи управления

Название команды Мнемокод КОП Т Б Ц Операция
Длинный переход в полном объеме памяти в программ LJMP ad16         (PC) = ad16
Абсолютный переход внутри страницы в 2 Кбайта AJMP ad11 a10a9a800001       (PC) = (PC) + 2 (PC0-10) = ad11
Короткий относительный переход внутри страницы в 256 байт SJMP rel         (PC) = (PC) + 2 (PC) = (PC) + rel
Косвенный относительный переход JMP @A+DPTR         (PC) = (A) + (DPTR)
Переход, если аккумулятор равен нулю JZ rel         (PC) = (PC) + 2, если (A) = 0, то (PC) = (PC) + rel
Переход, если аккумулятор не равен нулю JNZ rel         (PC) = (PC) + 2, если (A)? 0, то (PC) = (PC) + rel
Переход, если перенос равен единице JC rel         (PC) = (PC) + 2, если (C) = 1, то (PC) = (PC) + rel
Переход, если перенос равен нулю JNC rel         (PC) = (PC) + 2, если (C) = 0, то (PC) = (PC) + rel
Переход, если бит равен единице JB bit, rel         (PC) = (PC) + 3, если (b) = 1, то (PC) = (PC) + rel
Переход, если бит равен нулю JNB bit, rel         (PC) = (PC) + 3, если (b) = 0, то (PC) = (PC) + rel
Переход, если бит установлен, с последующим сбросом бита JBC bit, rel         (PC) = (PC) + 3, если (b) = 1, то (b) = 0 и (PC) = (PC) + rel
Декремент регистра и переход, если не нуль DJNZ Rn, rel 11011rrr       (PC) = (PC) + 2, (Rn) = (Rn) -1, если (Rn)? 0, то (PC) = (PC) + rel
Декремент прямоадресуемого байта и переход, если не нуль DJNZ ad, rel         (PC) = (PC) + 2, (ad) = (ad) -1, если (ad)? 0, то (PC) = (PC) + rel
Сравнение аккумулятора с прямоадресуемым байтом и переход, если не равно CJNE A, ad, rel         (PC) = (PC) + 3, если (A)? (ad), то (PC) = (PC) + rel, если (A) < (ad), то (C) = 1, иначе (C) = 0
Сравнение аккумулятора с константой и переход, если не равно CJNE A, #d, rel         (PC) = (PC) + 3, если (A)? #d, то (PC) = (PC) + rel, если (A) < #d, то (C) = 1, иначе (C) = 0
Сравнение регистра с константой и переход, если не равно CJNE Rn, #d, rel 10111rrr       (PC) = (PC) + 3, если (Rn)? #d, то (PC) = (PC) + rel, если (Rn) < #d, то (C) = 1, иначе (C) = 0
Сравнение байта в РПД с константой и переход, если не равно CJNE @Ri, #d, rel 1011011i       (PC) = (PC) + 3, если ((Ri))? #d, то (PC) = (PC) + rel, если ((Ri)) < #d, то (C) = 1, иначе (C) = 0
Длинный вызов подпрограммы LCALL ad16         (PC) = (PC) + 3, (SP) = (SP) + 1, ((SP)) = (PC0-7), (SP) = (SP) + 1, ((SP)) = (PC8-15), (PC) = ad16
Абсолютный вызов подпрограммы в пределах страницы в 2 Кбайта ACALL ad11 a10a9a810001       (PC) = (PC) + 2, (SP) = (SP) + 1, ((SP)) = (PC0-7), (SP) = (SP) + 1, ((SP)) = (PC8-15), (PC0-10) = ad11
Возврат из подпрограммы RET         (PC8-15) = ((SP)), (SP) = (SP) - 1, (PC0-7) = ((SP)), (SP) = (SP) - 1
Возврат из подпрограммы обработки прерывания RETI         (PC8-15) = ((SP)), (SP) = (SP) - 1, (PC0-7) = ((SP)), (SP) = (SP) - 1
Холостая команда NOP         (PC) = (PC) + 1

 

 



Поделиться:




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

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-06-17 Нарушение авторских прав и Нарушение персональных данных


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