1、MCS-51系列单片机指令大全以字母的顺序排列(A-Z)A:-1、ACALL addr11指令名称:绝对调用指令指令代码:A10 A9 A9 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,进行子程序调用其方法是以指令提供的 11位地址(al0a0),取代 PC的低 11位,PC 的高 5位不变。 操作内容:PC(PC)+2SP(SP)+1(SP)(PC) 70SP(SP)+1(SP)(PC) 158PC100 addr l00字节数: 2机器周期:2使用说明:由于指令只给出子程序入口地址的低 11位,因此调用范围是 2KB。2、ADD A,Rn指令名
2、称:寄存器加法指令指令代码:28H2FH指令功能:累加器内容与寄存器内容相加操作内容:A(A)+(Rn), n07字节数: 1机器周期;1影响标志位:C,AC,OV3、ADD A,direct指令名称:直接寻址加法指令指令代码:25H指令功能:累加器内容与内部 RAM单元或专用寄存器内容相加操作内容:A(A)+(direct)字节数: 2机器周期:1影响标志位:C,AC,OV4、ADD A,Ri 指令名称:间接寻址加法指令指令代码:26H27H指令功能:累加器内容与内部 RAM低 128单元内容相加操作内容:A(A)+(Ri), i0,1字节数: 1机器周期:1影响标志位:C,AC,OV5、A
3、DD A,#data指令名称:立即数加法指令指令代码:24H指令功能:累加器内容与立即数相加操作内容:A(A)+data字节数: 2机器周期:1影响标志位:C,AC,OV6、ADDC A,Rn指令名称:寄存器带进位加法指令指令代码:38H3FH指令功能:累加器内容、寄存器内容和进位位相加操作内容:A(A)+(Rn)+(C), n07字节数: 1 机器周期:1影响标志位:C,AC,OV 7、ADDC A,direct指令名称:直接寻址带进位加法指令指令代码:35H指令功能:累加器内容、内部 RAM低 128单元或专用寄存器内容与进位位加操作内容:A(A)+(direct)+(C)字节数: 2机器
4、周期:1影响标志位:C,AC,OV8、ADDC A,Ri指令名称:间接寻址带进位加法指令指令代码:36H37H指令功能:累加器内容、内部 RAM低 128单元内容及进位位相加操作内容:A(A)+(Ri)+(C), i0,1字节数: 1机器周期:1影响标志位:C,AC,OV9、ADDC A,#data指令名称:立即数带进位加法指令指令代码:34H指令功能:累加器内容、立即数及进位位相加操作内容:A(A)+data+(C)字节数: 2机器周期:1影响标志位:C,AC,OV10、AJMP addr11指令名称:绝对转移指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3
5、 A2 A1 A0指令功能:构造目的地址,实现程序转移。其方法是以指令提供的 11位地址,取代PC的低 11位,而 PC的高 5位保持不变。操作内容:PC(PC)+2PCl00 addrll字节数: 2机器周期:2使用说明:由于 addrll的最小值是 000H,最大值是 7FFH,因此地址转移范围是2KB。11、ANL A,Rn指令名称:寄存器逻辑与指令指令代码:58H5FH指令功能:累加器内容逻辑与寄存器内容操作内容:A(A)(Rn), n07字节数: 1机器周期:112、ANL A,direct指令名称:直接寻址逻辑与指令指令代码:55H指令功能:累加器内容逻辑与内部 RAM低 128单
6、元或专用寄存器内容操作内容:A(A)(diret)字节数: 2机器周期:113、ANL A,Ri指令名称:间接寻址逻辑与指令指令代码:56H57H指令功能:累加器内容逻辑与内部 RAM低 128单元内容操作内容:A(A)(Ri) i0,1字节数: 1机器周期:114、ANL A,#data指令名称:立即数逻辑与指令指令代码:54H指令功能:累加器内容逻辑与立即数操作内容:A(A)data字节数: 2机器周期:115、ANL direct,A指令名称:累加器逻辑与指令指令代码:52H指令功能:内部 RAM低 128单元或专用寄存器内容逻辑与累加器内容操作内容:direct(A)(direct)字
7、节数: 2机器周期:116、ANL direct, #data指令名称:逻辑与指令指令代码:53H指令功能:内部 RAM低 128单元或专用寄存器内容逻辑与立即数操作内容:direct(direct)data字节数: 3机器周期:217、ANL C,bit指令名称:位逻辑与指令指令代码:82H指令功能:进位标志逻辑与直接寻址位操作内容:C(C)(bit)字节数: 2机器周期:218、ANL C,bit指令名称:位逻辑与指令指令代码:B0H指令功能:进位标志逻辑与直接寻址位的反操作内容:C(C)(bit)字节数: 2机器周期:2C:-1、CJNE A,dircet,rel指令名称:数值比较转移指
8、令指令代码:B5H指令功能:累加器内容与内部 RAM低 128字节或专用寄存器内容比较,不等则转移。操作内容:若(A)(direct),则 PC(PC)+3,C0若(A)(direct),则 PC(PC)+3+rel,C0若(A)(direct),则 PC(PC)+3+rel,C1字节数: 3机器周期:22、CJNE A,#data,rel指令名称:数值比较转移指令指令代码:B4H指令功能:累加器内容与立即数比较,不等则转移。操作内容:若(A)data,则 PC(PC)+3,C0若(A)data,则 PC(PC)+3+rel,C0若(A)data,则 PC(PC)+3+rel,C1字节数: 3
9、机器周期:23、CJNE Rn,#data,rel指令名称:数值比较转移指令指令代码:B8HBFH指令功能:寄存器内容与立即数比较,不等则转移。操作内容:若(Rn)data,则 PC(PC)+3,C0若(Rn)data,则 PC(PC)+3+rel,C0若(Rn)data,则 PC(PC)+3+rel,C1字节数: 3机器周期:24、CJNE Ri,#data,rel指令名称:数值比较转移指令指令代码:B6HB7H指令功能:内部 RAM低 128单元内容与立即数比较,不等则转移。操作内容:若(Ri)=data,则 PC(PC)+3,C0若(Ri)data,则 PC(PC)+3+rel,C0若(
10、Ri)data,则 PC(PC)+3+rel,C1字节数: 3机器周期:25、CLR A指令名称:累加器清 0指令指令代码:E4H指令功能:累加器清 0操作内容:A0字节数: 1机器周期:16、CLR C指令名称:进位标志清 0指令指令代码:C3H指令功能:进位位清 0操作内容:C0字节数: 1机器周期:17、CLR bit指令名称:直接寻址位清 0指令指令代码:C2H指令功能:直接寻址位清 0操作内容:bit0字节数: 2机器周期:18、CPL A指令名称:累加器取反指令指令代码:F4H指令功能:累加器取反操作内容:A(A)字节数: 1机器周期:19、CPL C指令名称:进位标志取反指令指令
11、代码:B3H指令功能:进位标志位状态取反操作内容:C(c 取反)字节数: 1机器周期:110、 CPL bit指令名称:直接寻址位取反指令指令代码:B2H指令功能:直接寻址位取反操作内容:bit(bit 取反)字节数: 2机器周期:1D:1、DA A指令名称:十进制调整指令指令代码:D4H指令功能:对 BCD码加法运算的结果进行有条件的修正操作内容:若(A) 30 9(AC)1,则 A30 (A) 30 +6若(A) 74 9(C)1,则 A74 (A) 74 +6若(A) 74 9(A) 30 9,则 A74 (A) 74 +6字节数: 1机器周期:1使用说明:DA 指令不影响溢出标志2、D
12、EC A指令名称:累加器减 1指令指令代码:14H指令功能:累加器内容减 1操作内容:A(A)-1字节数: 1机器周期:13、DEC Rn指令名称:寄存器减 1指令指令代码:18H1FH指令功能:寄存器内容减 1操作内容:Rn(Rn)-1,n07字节数: 1机器周期:14、DEC direct指令名称:直接寻址减 1指令指令代码:15H指令功能:内部 RAM低 128单元及专用寄存器内容减 1操作内容:direct(direct)-1字节数: 2机器周期:15、DEC Ri指令名称:间接寻址减 1指令指令代码:16H17H指令功能:内部 RAM低 128单元内容减 1操作内容:(Ri)(Ri)
13、-1, i0,1字节数: 1机器周期:16、DIV AB指令名称:无符号数除法指令;指令代码:84H指令功能:A 的内容被 B的内容除。指令执行后,商存于 A中,余数存于 B中。操作内容:A(A)(B)的商B(A)(B)的余数字节数: 1机器周期:4影响标志位:C 被清 0;若 B00H,除法无法进行,并使 OV1;否则 OV0。7、DJNZ Rn,rel指令名称:寄存器减 1条件转移指令指令代码:D8HDFH指令功能:寄存器内容减 1。不为 0转移;为 0顺序执行。操作内容:Rn(Rn)-l,n07若(Rn)0,则 PC(PC)+2+rel若(Rn)0,则 PC(PC)+2字节数: 2机器周
14、期:28、DJNZ direct,rel指令名称:直接寻址单元减 1条件转移指令指令代码:D5H指令功能:内部 RAM低 128单元内容减 1。不为 0转移;为 0顺序执行。操作内容:direct(direct)-1若(direct)0,则 PC(PC)+3+rel若(direct)0,则 PC(PC)+3字节数: 3机器周期:2I:1、INC A指令名称:累加器加 1指令指令代码:04H指令功能:累加器内容加 1操作内容:A(A)+1字节数: 1机器周期:12、INC Rn指令名称:寄存器加 1指令指令代码:08H0FH指令功能:寄存器内容加 1操作内容:Rn(Rn)+1,n07字节数: 1
15、机器周期:13、INC direct指令名称:直接寻址单元加 1指令指令代码:05H指令功能:内部 BAM低 128单元或专用寄存器内容加 1操作内容:direct(direct)+1字节数: 2机器周期:14、INC Ri指令名称:间接寻址单元加 1指令指令代码:06H07H指令功能:内部 RAM低 128单元内容加 1操作内容:(Ri)(Ri)+1;i0,l字节数: 1机器周期:15、INC DPTR指令名称:16 位数据指针加 1指令指令代码:A3H指令功能:数据指针寄存器 DPTR内容加 1操作内容:DPTR(DPTR)+1字节数: 1机器周期:2J:1、JB bit,rel指令名称:
16、位条件转移指令。指令代码:20H指令功能:根据指定位的状态,决定程序是否转移。若为 1则转移;否则顺序执行。操作内容:若(bit)1,则 PC(PC)+3+rel若(bit)1,则 PC(PC)+3字节数: 3机器周期:22、JBC bit,rel指令名称:位条件转移清 0指令指令代码:10H指令功能:对指定位的状态进行测试。若为 1,则把该位清 0并进行转移;否则程序顺序执行。操作内容:若(bit)1,则 PC(PC)+3+rel,bit0若(bit)1,则 PC(PC)+3字节数: 3机器周期:23、JC rel指令名称:累加位条件转移指令指令代码:40H指令功能:根据累加位(C)的状态决
17、定程序是否转移,若为 1则转移,否则顺序执行。操作内容:若(C)1,则 PC(PC)+2+rel若(C)1,则 PC(PC)+2字节数: 2机器周期:24、JMP A+DPTR指令名称:无条件间接转移指令指令代码:72H指令功能:A 内容与 DPTR内容相加作为转移目的地址,进行程序转移。操作内容:PC(A)+(DPTR)字节数: 1机器周期;25、JNB bit,rel指令名称:位条件转移指令指令代码:30H指令功能:根据指定位的状态,决定程序是否转移。若为 0则转移;否则顺序执行。操作内容:若(bit)0,则 PC(PC)+3+rel若(bit)0,则 PC(PC)+3字节数: 3机器周期
18、:26、JNC rel指令名称:累加位条件转移指令指令代码:50H指令功能:根据累加位(C)的状态决定程序是否转移。若为 o则转移;否则顺序执行。操作内容:若(C)0,则 PC(PC)+2+rel若(C)0,则 PC(PC)+2字节数: 2机器周期:27、JNZ rel指令名称:判 0转移指令指令代码:70H指令功能:累加位(A)的内容不为 0,则程序转移;否则程序顺序执行。操作内容:若(A)0,则 PC(PC)+2+rel若(A)0,则 PC(PC)+2字节数: 2机器周期:28、JZ rel指令名称:判 0转移指令指令代码:60H指令功能:累加位(A)的内容为 o,则程序转移;否则程序顺序
19、执行。操作内容:若(A)0,则 PC(PC)+2+rel若(A)0,则 PC(PC)+2字节数: 2机器周期:2L:-=1、LCALL addr16指令名称:长调用指令指令代码:12H指令功能:按指令给定地址进行子程序调用操作内容:PC(PC)+3SP(SP)+1(SP)(PC) 70SP(SP)+1(SP)(PC) 158PCaddrl6字节数: 3机器周期:2使用说明:在 64KB的范围内调用子程序2、LJMP addrl6指令名称:长转移指令指令代码:02H指令功能:使程序按指定地址进行无条件转移操作内容:PCaddrl6字节数: 3机器周期:2M:-1、MOV A,Rn指令名称:寄存器
20、数据传送指令指令代码:E8HEFH指令功能:寄存器内容送累加器操作内容:A(Rn), n07字节数: 1机器周期:12、MOV A,direct指令名称:直接寻址数据传送指令指令代码:E5H指令功能:内部 RAM低 126单元或专用寄存器内容送累加器操作内容:A(direct)字节数: 2机器周期:13、MOV A,Ri指令名称:间接寻址数据传送指令指令代码:E6HE7H指令功能:内部 RAM低 128单元内容送累加器操作内容:A(Ri), i0,1字节数: 1机器周期:14、MOV A,#data指令名称:立即数据传送指令指令代码:74H指令功能:立即数送累加器操作内容:Adata字节数:
21、2机器周期:15、 MOV Rn,A指令名称:累加器数据传送指令指令代码:F8HFFH指令功能:累加器内容送寄存器操作内容:Rn(A)字节数: 1机器周期:16、MOV Rn,direct指令名称:直接寻址数据传送指令指令代码:A8HAFH指令功能:内部 RAM低 128单元或专用寄存器内容送累加器操作内容:Rn(direct),n07字节数: 2机器周期:27、MOV Rn,#data指令名称:立即数据传送指令指令代码:78H7FH指令功能:立即数送寄存器操作内容:Rndata,n07字节数: 2机器周期:18、MOV direct,A指令名称:累加器数据传送指令指令代码:F5H指令功能:累
22、加器内容送内部 RAM低 128单元或专用寄存器操作内容:direct(A)字节数: 2机器周期:19、MOV direct,Rn指令名称:寄存器数据传送指令指令代码:88H8FH指令功能:寄存器内容送内部 RAM低 128单元或专用寄存器操作内容:direct(Rn), n07字节数: 2机器周期:210、MOV direct2,direct1指令名称:直接寻址数据传送指令指令代码:85H指令功能:内部 RAM低 123单元或专用寄存器之间的相互传送操作内容:direct2(direct1)字节数: 3机器周期:211、MOV direct, Ri指令名称:间接寻址数据传送指令指令代码:86
23、H87H指令功能:内部 RAM低 128单元内容送内部 RAM低 128单元或专用寄存器操作内容:direct(Ri),i0,1字节数: 2机器周期:212、MOV direct,#data指令名称:立即数传送指令指令代码:75H指令功能:立即数送内部 RAM低 128单元或专用寄存器操作内容:directdata字节数: 3机器周期:213、MOV Ri,A指令名称:累加器数据传送指令指令代码:F6HF7H指令功能:累加器内容送内部 RAM低 128单元操作内容:(Ri)(A),i0,1字节数: 1机器周期:114、MOV Ri,direct指令名称:直接寻址数据传送指令指令代码:A6HA7
24、H指令功能:内部 RAM低 128单元或专用寄存器内容送内部 RAM低 128单元操作内容:(Ri)(direct), i0,1字节数: 2机器周期:215、MOV Ri,data指令名称:立即数传送指令指令代码:76H77H指令功能:立即数送内部 RAM低 128单元操作内容:(Ri)data, i0,1字节数: 2机器周期:116、MOV C,bit指令名称:位数据传送指令指令代码:A2H指令功能:内部 RAM可寻址位或专用寄存器的位状态送累加位 C操作内容:C(bit)字节数: 2机器周期:117、MOV bit,C指令名称:累加位数据传送指令指令代码:92H指令功能:累加器状态送内部
25、RAM可寻址位或专用寄存器的指定位操作内容:bit(C)字节数: 2机器周期:218、MOV DPTR,#datal6指令名称:+六位数据传送指令指令代码:90H指令功能:十六位立即数送数据指针操作内容:DPHdatal 58DPLdata 70字节数: 3机器周期:219、MOVC A,A+DPTR指令名称:程序存储器读指令指令代码:93H指令功能:读程序存储器单元内容送累加器操作内容:A(A)+(DPTR)字节数: 1机器周期:2使用说明:变址寄存器 A内容加基址寄存器 DPTR内容时,低 8位产生的进位直接加到高位,不影响进位标志。20、MOVC A,A+PC指令名称:程序存储器读指令指
26、令代码:83H指令功能:读程序存储器单元内容送累加器操作内容:A(A)+(PC)字节数: 1机器周期:2使用说明:同 MOVC A,A+DPTR 指令(序号 70)21、MOVX A,Ri指令名称:寄存器间接寻址外部 RAM读指令指令代码:E2HE3H指令功能:读外部 RAM低 256单元数据送累加器字节数: 1机器周期:222、MOVX A,DPTR指令名称:数据指针间接寻址外部 RAM读指令指令代码:E0H指令功能:读外部 RAM单元数据送累加器操作内容:A1(DPTR)字节数: 1机器周期:223、MOVX Ri,A指令名称:寄存器间接寻址外部 RAM写指令指令代码:F2HF3H指令功能
27、:把累加器内容写入外部 RAM低 256单元操作内容:(Ri)(A),i1,0字节数: 1机器周期:224、MOVX DPTR,A指令名称:数据指针间接寻址外部 RAM写指令指令代码:F0H指令功能:把累加器内容写入外部 RAM单元操作内容:(DPTR)(A)字节数: 1机器周期:225、MUL AB指令名称:乘法指令指令代码:A4H指令功能:实现 8位无符号数乘法运算。两个乘数分别放在累加器 A和寄存器 B中。乘积为 16位,低 8位在 B中,高 8位在 A中。操作内容:AB(A)(B)字节数: 1机器周期:4影响标志位:进位标志复位。若乘积大于 255,则 OV标志置位;否则复位。N:1、
28、NOP指令名称:空操作指令指令代码;00H指令功能:不执行任何操作,常用于产生一个机器周期的时间延迟。操作内容:PC(PC)+l字节数: 1机器周期:1O:1、ORL A,Rn指令名称:逻辑或操作指令指令代码:48H4FH指令功能:累加器内容与寄存器内容进行逻辑或操作操作内容:A1(A)(Rn), n07字节数: 1机器周期:12、ORL A,direct指令名称:逻辑或操作指令指令代码:45H操作内容:A(A)(direct) 字节数: 2机器周期:13、ORL A,Ri指令名称:逻辑或操作指令指令代码:46H47H指令功能:累加器内容与内部 RAM低 128单元内容进行逻辑或操作操作内容:
29、A(A)(Ri); i0,1字节数: 1机器周期:14、ORL A,#data指令名称:逻辑或操作指令指令代码:44H指令功能:累加器内容与立即数进行逻辑或操作操作内容:A(A)data字节数: 2机器周期:15、ORL direct,A指令名称:逻辑或操作指令指令代码:42H指令功能:内部 RAM低 128单元或专用寄存器内容与累加器内容进行逻辑或操作操作内容:direct(direct)(A)字节数: 2机器周期:16、ORL direct,#data指令名称:逻辑或操作指令指令代码:43H指令功能:内部 RAM低 128单元或专用寄存器内容与立即数进行逻辑或操作。操作内容:direct(direct)data字节数: 3机器周期:27、ORL C,bit指令名称:位逻辑或操作指令指令代码:72H指令功能:累加位 C状态与内部 RAM可寻址位或专用寄存器指定位进行逻辑或操作操作内容:C(C)(bit)字节数: 2机器周期:28、ORL C,bit指令名称:位反逻辑或操作指令指令代码:A0H指令功能:累加位 C状态与内部 RAM可寻址位或专用寄存器指定位的反进行逻辑或操作操作内容:C(C)(bit 非)字节数: 2机器周期:2