51单片机汇编语言指令汇总

您所在的位置:网站首页 单片机org指令是什么 51单片机汇编语言指令汇总

51单片机汇编语言指令汇总

2024-03-19 19:32| 来源: 网络整理| 查看: 265

本文以AT89C51为例,列举51单片机汇编语言指令集。 AT89C51单片机的汇编指令共有111条,可按功能分为5大类:

数据传送类指令28条; 算数操作类指令24条; 逻辑运算类指令25条; 控制转移类17条; 位操作类17条。

在此约定下列指令中各符号的意义:

Rn:当前寄存器区的8个工作寄存器(n=0~7) Ri:当前寄存器区中可作间接寻址寄存器的2个寄存器(i=0 1) Direct:直接地址 #data:包含在指令中的8位立即数 rel:相对转移指令中的偏移量,为8位带符号补码数 DPTR:数据指针,16位数据地址寄存器 bit:直接寻址位 C:进位标志位 addr11:11位目的地址 addr16:16位目的地址 @:间接寻址寄存器前缀

一、数据传送类指令 1.以累加器为目的操作数指令

MOV A,Rn MOV A,@Ri MOV A,direct MOV A,#data

2.以Rn为目的操作数的指令

MOV Rn,A MOV Rn,direct MOV Rn,#data

3.以直接地址为目的操作数指令

MOV direct,A MOV direct,Rn MOV direct1,direct2 MOV direct,@Ri MOV direct,#data

4.以寄存器间接地址为目的操作数指令

MOV @Ri,A MOV @Ri,direct MOV @Ri,#data

5.16位传送指令

MOV DPTR,#data16

6.堆栈操作指令

进栈:PUSH direct 出栈:POP direct

7.累加器A与外部数据存储器传送指令

MOVX A,@DPTR MOVX A,@Ri MOVX @DPTR,A MOVX @Ri,A

8.查表指令

MOVC A,@A+PC MOVC A,@A+DPTR

9.字节交换命令

XCH A,Rn XCH A,direct XCH A,@Ri

10.半字节交换指令

XCHD @Ri

二、算数操作类指令 1.加法指令

ADD A,Rn ADD A,direct ADD A,@Ri ADD A,#data

2.带进位加法指令

ADDC A,Rn ADDC A,direct ADDC A,@Ri ADDC A,#data

3.增1指令

INC A INC Rn INC direct INC @Ri INC DPTR

4.十进制调整指令

DA A

5.带借位减法

SUBB A,Rn SUBB A,direct SUBB A,@Ri SUBB A,#data

6.减1指令

DEC A DEC Rn DEC direct DEC @Ri

7.乘法指令

MUL AB

8.除法指令

DIV AB

三、逻辑操作类指令 1.简单逻辑操作指令

累加器A清零: CLR A 累加器A按位取反: CPL A

2.左循环指令

RL A

3.带进位左移指令

RLC A

4.右移指令

RR A

5.带进位循环指令

RRC A

6.累加器半字节交换指令

SWAP A

7.逻辑与指令

ANL A,Rn ANL A,direct ANL A,#data ANL A,@Ri ANL direct,A ANL direct,#data

7.逻辑或指令

ORL A,Rn ORL A,direct ORL A,#data ORL A,@Ri ORL direct,A ORL direct,#data

7.逻辑异或指令

XRL A,Rn XRL A,direct XRL A,#data XRL A,@Ri XRL direct,A XRL direct,#data

四、控制转移类指令 1.无条件转移指令

AJMP addr11

2.相对转移指令

SJMP rel

3.长跳转指令

LJMP addr16

4.间接跳转指令

JMP @A+DPTR

5.条件转移指令

若累加器为0则转移: JZ rel 若累加器非0则转移: JNZ rel

6.比较不相等转移指令

CJNE A,direct,rel CJNE A,#data,rel CJNE Rn,#data,rel CJNE @Ri,#data,rel

7.减1不为0转移指令

DJNZ Rn,rel DJNZ direct,rel

8.调用子程序指令

ACALL addr11 LCALL addr16

9.子程序返回指令

RET

10.中断返回指令

RETI

11.空操作指令

NOP

五、位操作指令 1.数据位传送指令

MOV C,bit MOV bit,C

2.位变量修改指令

清0: CLR C CLR bit 求反: CPL C CPL bit 置1: SETB C SETB bit

3.位变量逻辑与指令

ANL C,bit ANL C,/bit

3.位变量逻辑或指令

ORL C,bit ORL C,/bit

4.条件转移类指令

JC rel JNC rel JB bit,rel JNB bit,rel JBC bit,rel



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3