Команды микроконтроллера семейства 8051




Команды передачи данных

 

Мнемоника Название команды КОП Б Ц Коммент
mov A, Rn Пересылка в аккумулятор из регистров общего назначения R0 – R7 текущего банка 11101iii     (A) (Rn)
mov A, ad Пересылка в аккумулятор прямоадресуемого байта       (A) (ad)
mov A, @Ri Пересылка в аккумулятор байта из внутр. ОЗУ (i=0,1) 1110011i     (A) ((Ri))
mov A, #data8 Загрузка в аккумулятор константы       (A) #data8
mov Rn, A Пересылка в регистр из аккумулятора 11111iii     (Rn) (A)
mov Rn, ad Пересылка в регистр прямоадресуемого байта 10101iii     (Rn) (ad)
mov Rn, #data8 Загрузка в регистр константы 01111iii     (Rn) #data8
mov ad, A Пересылка по прямому адресу аккумулятора       (ad) (A)
mov ad, Rn Пересылка по прямому адресу регистра 10001ii     (ad) (Rn)
mov add, ads Пересылка прямоадресуемого байта по прямому адресу       (add) (ads)
mov ad, @Ri Пересылка байта из внутреннего ОЗУ по прямому адресу 1000011i     (ad) ((Ri))
mov ad, #data8 Пересылка по прямому адресу константы       (ad) #data8
mov @Ri, A Пересылка во внутреннее ОЗУ из аккумулятора       ((Ri)) (A)
mov @Ri, ad Пересылка во внутреннее ОЗУ прямоадресуемого байта 0110011i     ((Ri)) (ad)
mov @Ri, #data8 Пересылка во внутреннее ОЗУ константы 0111011i     ((Ri)) #data8
mov DPTR, #data16 Загрузка указателя данных       DPTR #data16
movc A,@A+DPTR Пересылка в аккумулятор байта из памяти программ       (A) ((A)+DPTR))
movc A,@A+PC Пересылка в аккумулятор байта из памяти программ       (PC) (PC)+1; (A) ((A)+(PC))
movx A,@Ri Пересылка в аккумулятор байта из внешнего ОЗУ 1110001i     (A) ((Ri))
movx A,@DPTR Пересылка в аккумулятор байта из расширенного внешнего ОЗУ       (A) ((DPTR))
movx @Ri, A Пересылка во внешнее ОЗУ из аккумулятора 1111001i     ((Ri)) (A)
movx @DPTR,A Пересылка в расширенное внешнее ОЗУ из аккумулятора       ((DPTR)) (A)
push ad Загрузка в стек       (SP) (SP)+1; ((SP)) (ad)
pop ad Извлечение из стека       (ad) ((SP)); (SP) (SP)-1
xch A, Rn Обмен аккумулятора с регистром 11001iii     (A)«(Rn)
xch A, ad Обмен аккумулятора с прямоадресуемым байтом       (A)«(ad)
xch A, @Ri Обмен аккумулятора с байтом из внутреннего ОЗУ       (A)«((Ri))
xchd A, Ri Обмен младшей тетрады аккумулятора с младшей тетрадой внутреннего ОЗУ 1101011i     (A0-3)«((Ri0-3))

 

 

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

 

Мнемоника Название команды КОП Б Ц Коммент
add A, Rn Сложение аккумулятора с регистром общего назначения R0 – R7 текущего банка 00101iii     (A) (A) + (Rn)
add A, ad Сложение аккумулятора с прямоадресуемым байтом       (A) (A) + (ad)
add A, @Ri Сложение аккумулятора с байтом из внут. ОЗУ (i=0,1) 0010011i     (A) (A) + (Ri)
add A,#data8 Сложение аккумулятора с константой       (A) (A) + #data8
addc A, Rn Сложение аккумулятора с регистром общего назначения R0 – R7 и переносом 00111iii     (A) (A) + (Rn)+(C)
addc A, ad Сложение аккумулятора с прямоадресуемым байтом и переносом       (A) (A) + (ad)+(C)
addc A, @Ri Сложение аккумулятора с байтом из внут. ОЗУ и переносом 0011011i     (A) (A) + (Ri)+(C)
addc A,#data8 Сложение аккумулятора с константой и переносом       (A) (A) + #data8 +(C)
da A Десятичная коррекция аккумулятора        
subb A, Rn Вычитание из аккумулятора, регистра общего назначения и заема 10011iii     (A) (A) - (Rn) - (C)
subb A, ad Вычитание из аккумулятора, прямоадресуемого байта и заема       (A) (A) - (Ad) - (C)
subb A, @Ri Вычитание из аккумулятора, байта из внутреннего ОЗУ и заема 1001011i     (A) (A) - ((Ri)) - (C)
subb A, #data8 Вычитание из аккумулятора, константы и заема       (A) (A) - #data8 - (C)
inc A Инкремент аккумулятора       (A) (A) + 1
inc Rn Инкремент регистра 00001ii     (Rn) (Rn) + 1
inc ad Инкремент прямоадресуемого байта       (ad) (ad) + 1
inc @Ri Инкремент байта из внутр. ОЗУ 0000011i     ((Ri)) ((Ri)) +1
inc DPTR Инкремент указателя данных       (DPTR) (DPTR) + 1
dec A Декремент аккумулятора       (A) (A) - 1
dec Rn Декремент регистра 00011ii     (Rn) (Rn) - 1
dec ad декремент прямоадресуемого байта       (ad) (ad) - 1
dec @Ri Декремент байта из внутр. ОЗУ 0001011i     ((Ri)) ((Ri)) -1
mul AB Умножение аккумулятора и регистра B       (B)(A) (A)*(B)
div AB Деление аккумулятора на регистр B       (A),(B) (A)/(B)

 

 

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

 

Мнемоника Название команды КОП Б Ц Коммент
anl A, Rn Логическое И аккумулятора и регистра общего назначения R0 – R7 текущего банка 01011iii     (A) (A) Илог (Rn)
anl A, ad Логическое И аккумулятора и прямоадресуемого байта       (A) (A) Илог (ad)
anl A, @Ri Логическое И аккумулятора с байтом из внут. ОЗУ (i=0,1) 0101011i     (A) (A) Илог (Ri)
anl A,#data8 Логическое И аккумулятора и константы       (A) (A) Илог #data8
anl ad, A Логическое И прямоадресуемого байта и аккумулятора       (ad) (ad) Илог (A)
anl ad,#data8 Логическое И прямоадресуемого байта и константы       (ad) (ad) Илог #data8
orl A, Rn Логическое ИЛИ аккумулятора и регистра общего назначения R0 – R7 текущего банка 01001iii     (A) (A) ИЛИлог (Rn)
orl A, ad Логическое ИЛИ аккумулятора и прямоадресуемого байта       (A) (A) ИЛИлог (ad)
orl A, @Ri Логическое ИЛИ аккумулятора с байтом из внут. ОЗУ (i=0,1) 0100011i     (A) (A) ИЛИлог ((Ri))
orl A,#data8 Логическое ИЛИ аккумулятора и константы       (A) (A) ИЛИлог #data8
orl ad, A Логическое ИЛИ прямоадресуемого байта и аккумулятора       (ad) (ad) ИЛИлог (A)
orl ad,#data8 Логическое ИЛИ прямоадресуемого байта и константы       (ad) (ad) ИЛИлог #data8
xrl A, Rn Исключающее ИЛИ аккумулятора и регистра общего назначения R0 – R7 текущего банка 01101iii     (A) (A) ИЛИискл (Rn)
xrl A, ad Исключающее ИЛИ аккумулятора и прямоадресуемого байта       (A) (A) ИЛИискл (ad)
xrl A, @Ri Исключающее ИЛИ аккумулятора с байтом из внут. ОЗУ (i=0,1) 0110011i     (A) (A) ИЛИискл (Ri)
xrl A,#data8 Исключающее ИЛИ аккумулятора и константы       (A) (A) ИЛИискл #data8
xrl ad, A Исключающее ИЛИ прямоадресуемого байта и аккумулятора       (ad) (ad) ИЛИискл (A)
xrl ad,#data8 Исключающее ИЛИ прямоадресуемого байта и константы       (ad) (ad) ИЛИискл #data8
clr A Сброс аккумулятора       (A) 0
cpl A Инверсия аккумулятора       (A) / (A)
rl A Сдвиг аккумулятора влево циклический       (A.n+1) (A.n.). n=0-6; (A.0) (A.7)
rlc A Сдвиг аккумулятора влево через перенос       (A.n+1) (A.n.). n=0-6; (A.0) (C); (C) (A.7)
rr A Сдвиг аккумулятора вправо циклический       (A.n) (A.n+1), n=0-6; (A.7) (A.0)
rrc A Сдвиг аккумулятора вправо через перенос       (A.n) (A.n+1). n=0-6; (A.7) (C); (C) (A.0)
swap A Обмен местами тетрад в аккумуляторе       (A.0, A.1, A.2, A.3) «(A.4, A.5, A.6, A.7)

 

Команды операций с битами

 

Мнемоника Название команды КОП Б Ц Коммент
clr C Сброс переноса       (С) 0
clr bit Сброс бита       (bit) 0
setb C установка переноса       (С) 1
setb bit Установка бита       (bit) 1
cpl C Инверсия переноса       (С) /(С)
cpl bit Инверсия бита       (bit) /(bit)
anl C, bit Логическое И бита и переноса       (С) (С) Илог (bit)
anl C, /bit Логическое И инверсии бита и переноса       (С) (С) Илог /(bit)
orl C, bit Логическое ИЛИ бита и переноса       (С) (С) ИЛИлог (bit)
orl C, /bit Логическое ИЛИ инверсии бита и переноса       (С) (С) ИЛИлог /(bit)
mov C, bit Пересылка бита в перенос       (С) (bit)
mov bit, C Пересылка переноса в бит       (bit) (C)

 

 

Команды передачи управления

 

Мнемоника Название команды КОП Б Ц Коммент
ljmp ad16 Длинный абсолютный переход в полном объеме памяти программ       (PC) ad16
ajmp ad11 Длинный абсолютный переход в полном объеме памяти программ       (PC) (PC)+2, затем (PC 0-10) ad11
sjmp rel Короткий относительный переход в нутрии страницы 256 байт       (PC) (PC)+2, затем (PC) (PC) + rel
jmp @A+DPTR Косвенный относительный переход       (PC) (A)+(DPTR)
jz rel Переход, если аккумулятор равен 0       (PC) (PC)+2, затем если (A)=0, то (PC) (PC) + rel
jnz rel Переход, если аккумулятор не равен 0       (PC) (PC)+2, затем если (A)<>0, то (PC) (PC) + rel
jc rel Переход, если перенос равен 1       (PC) (PC)+2, затем если (C)=1, то (PC) (PC) + rel
jnc rel Переход, если перенос равен нулю       (PC) (PC)+2, затем если (C)=0, то (PC) (PC) + rel
jb bit,rel Переход, если бит равен единице       (PC) (PC)+3, затем если (bit)=1, то (PC) (PC) + rel
jnb bit,rel Переход, если бит равен нулю       (PC) (PC)+3, затем если (bit)=0, то (PC) (PC) + rel
jbc bit,rel Переход, если бит установлен, последующим сбросом бита       (PC) (PC)+3, затем если (bit)=1, то (PC) (PC) + rel, (bit) 0
djnz Rn, rel Декремент регистра и переход если не нуль 11011iii     (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, #data8, rel Сравнение аккумулятора с константой и переход, если не равно       (PC) (PC)+3, если (A)<> #data8, то (PC) (PC) + rel при этом если (A)<#data8, то (C) 1, иначе (C) 0
cjne Rn, #data8, rel Сравнение регистра с константой и переход, если не равно 10111iii     (PC) (PC)+3, если (Rn)<> #data8, то (PC) (PC) + rel при этом если (Rn)<#data8, то (C) 1, иначе (C) 0
cjne @Ri, #data8, rel Сравнение байта во внутреннем ОЗУ и переход, если не равно 1011011i     (PC) (PC)+3, если ((Ri))<> #data8, то (PC) (PC)+rel, при этом если ((Ri))<#data8, то (C) 1, иначе (C) 0
lcall ad16 Длинный абсолютный вызов подпрограммы       (PC) (PC)+3, (SP) (SP)+1, и ((SP)) (PC0-7); затем (SP) (SP)+1 и ((SP)) (PC8-15); затем (PC) ad16
acall ad11 Абсолютный вызов подпрограммы внутри двухкилобайтной страницы       (PC) (PC)+3, (SP) (SP)+1, и ((SP)) (PC0-7); затем (SP) (SP)+1 и ((SP)) (PC8-15); затем (PC0-10) ad11
ret Возврат из подпрограммы       (PC8-15)((SP)); (SP) (SP)-1; затем (PС0-7) ((SP)); (SP) (SP)-1
reti Возврат из подпрограммы обработки прерывания       (PC8-15)((SP)); (SP) (SP)-1; затем (PС0-7) ((SP)); (SP) (SP)-1
nop Холостая команда       (PC) (PC)+1
           

 



Поделиться:




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

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


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