1、完整word51单片机汇编指令集推荐文档1)数据传送类指令(7种助记符)MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送;MOVC(Move Code)读取程序存储器数据表格的数据传送;MOVX(Move External RAM)对外部RAM的数据传送;XCH(Exchange)字节交换;XCHD(Exchange low-order Digit)低半字节交换;PUSH(Push onto Stack)入栈;POP (Pop from Stack)出栈;(2)算术运算类指令(8种助记符)ADD(Addition) 加法;ADDC(Add with Carr
2、y) 带进位加法;SUBB(Subtract with Borrow) 带借位减法;DA(Decimal Adjust) 十进制调整;INC(Increment) 加1;DEC(Decrement) 减1;MUL(Multiplication、Multiply) 乘法;DIV(Division、Divide) 除法;(3)逻辑运算类指令(10种助记符)ANL(AND Logic) 逻辑与;ORL(OR Logic) 逻辑或;XRL(Exclusive-OR Logic) 逻辑异或;CLR(Clear) 清零;CPL(Complement) 取反;RL(Rotate left) 循环左移;RLC
3、(Rotate Left throught the Carry flag) 带进位循环左移;RR(Rotate Right) 循环右移;RRC(Rotate Right throught the Carry flag) 带进位循环右移;SWAP (Swap)低4位与高4位交换;(4)控制转移类指令(17种助记符)ACALL(Absolute subroutine Call)子程序绝对调用;LCALL(Long subroutine Call)子程序长调用;RET(Return from subroutine)子程序返回;RETI(Return from Interruption)中断返回;SJ
4、MP(Short Jump)短转移;AJMP(Absolute Jump)绝对转移;LJMP(Long Jump)长转移;CJNE (Compare Jump if Not Equal)比较不相等则转移;DJNZ (Decrement Jump if Not Zero)减后不为则转移;JZ (Jump if Zero)结果为则转移;JNZ (Jump if Not Zero) 结果不为则转移;JC (Jump if the Carry flag is set)有进位则转移;JNC (Jump if Not Carry)无进位则转移;JB (Jump if the Bit is set)位为则转
5、移;JNB (Jump if the Bit is Not set) 位为则转移;JBC(Jump if the Bit is set and Clear the bit) 位为则转移,并清除该位;NOP (No Operation)空操作;(5)位操作指令(1种助记符)SETB(Set Bit)位 置 。MCS-51系列单片机指令以A开头的指令有18条,分别为:ACALL addr11 ADD A,Rn ADD A,direct ADD A,Ri ADD A,#data ADDC A,Rn ADDC A,direct ADDC A,Ri ADDC A,#data AJMP addr11 AN
6、L A,Rn ANL A,direct ANL A,Ri ANL A,#data ANL direct,A ANL direct,#data ANL C,bit ANL C,/bit 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)158PC100addrl00字节数: 2机器周期:
7、2使用说明:由于指令只给出子程序入口地址的低11位,因此调用范围是2KB。2、ADD A,Rn指令名称:寄存器加法指令指令代码: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单元内容相加操
8、作内容:A(A)+(Ri), i0,1字节数: 1机器周期:1影响标志位:C,AC,OV5、ADD 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
9、单元或专用寄存器内容与进位位加操作内容:A(A)+(direct)+(C)字节数: 2机器周期: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指令名称:绝对
10、转移指令指令代码:A10 A9 A8 1 0 0 0 1 A7 A6 A5 A4 A3 A2 A1 A0指令功能:构造目的地址,实现程序转移。其方法是以指令提供的11位地址,取代PC的低11位,而PC的高5位保持不变。操作内容:PC(PC)+2PCl00addrll字节数: 2机器周期:2使用说明:由于addrll的最小值是000H,最大值是7FFH,因此地址转移范围是2KB。11、ANL A,Rn指令名称:寄存器逻辑与指令指令代码:58H5FH指令功能:累加器内容逻辑与寄存器内容操作内容:A(A)(Rn), n07字节数: 1机器周期:112、ANL A,direct指令名称:直接寻址逻辑与
11、指令指令代码:55H指令功能:累加器内容逻辑与内部RAM低128单元或专用寄存器内容操作内容: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单元或专用寄存器内容逻辑
12、与累加器内容操作内容:direct(A)(direct)字节数: 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机器周期:2MCS-51系
13、列单片机指令以C开头的指令有10条,分别为:CJNE A,dircet,rel CJNE A,#data,rel CJNE Rn,#data,rel CJNE Ri,#data,rel CLR A CLR C CLR bit CPL A CPL C CPL bit 1、CJNE A,dircet,rel指令名称:数值比较转移指令指令代码:B5H指令功能:累加器内容与内部RAM低128字节或专用寄存器内容比较,不等则转移。操作内容:若(A)(direct),则PC(PC)+3,C0若(A)(direct),则PC(PC)+3+rel,C0若(A)(direct),则PC(PC)+3+rel,C1
14、字节数: 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机器周期: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若(Ri)data,则PC(PC)+3+rel,C1字节数: 3机器
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1