《2022年单片机汇编指令总结 .pdf》由会员分享,可在线阅读,更多相关《2022年单片机汇编指令总结 .pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据传输指令一 .片内 RAM 数据传输指令1.以累加器 A 为目的操作数的指令:MOV A , Rn MOV A , direct MOV A , Ri MOV A , #data 2.以寄存器 Rn 为目的操作数的指令:MOV Rn , A MOV Rn ,direct MOV Rn , data 3.以直接地址为目的操作数的指令:MOV direct , A MOV direct , Rn MOV direct1 , derect2 MOV direct , Ri MOV direct , #data 4.间接地址为目的操作数的指令:MOV Ri ,A MOV Ri ,direct MO
2、V Ri , #data 5.十六位数据传送指令:MOV DPTR , #data16 二 .累加器 A 与片外 RAM 数据传送指令:MOVX A , Ri MOVX A , DPTR MOVX Ri , A MOVX DPTR , A 三 .查表寻址:MOVC A , A+DPTR (先 PC( PC)+1,后 A( (A)+(DPTR) ) )+ MOVC A , A+PC (先 PC(PC)+1,后 A( (A) +(PC) ) )四 .交换指令:1.字节交换指令:XCH A , Rn XCH A , direct XCH A , Ri 2.半字节交换指令:XCHD A , Ri 3.
3、累加器半字节交换指令:SWAP A 五 .栈操作指令:1.PUSH(入栈指令)PUSH direct 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 2.POP(出栈指令)POP direct 算术运算指令:一 . 加法减法指令:1.加法指令:ADD A , Rn ADD A , direct ADD A , Ri ADD A , #data 2.带进位加法指令:ADDC A ,Rn A(A)+(Rn)+CY ADDC A ,d
4、irect A (A)+(direct)+CY ADDC A , Ri A( A)+(Ri)+CY ADDC A , #data A (A)+(data)+CY 3.带借位减法指令:SUBB A , Rn A (A)-CY-(Rn) SUBB A , direct A(A)-CY-(direct) SUBB A , Ri A (A)-CY-(Ri) SUBB A , #data A(A)-CY-#data 二 . 乘法除法指令:1.乘法指令:MUL AB BA(A) (B)高字节放在B 中,低字节放在A 中2.除法指令:DIV AB A(A) (B)的商 ,(B) (A) (B)的余数三 .
5、加 1 减 1 指令:1.加 1 指令:INC A A(A)+1 INC Rn Rn(Rn)+1 INC direct direct(direct)+1 INC Ri (Ri) (Ri)+1 INC DPTR DPTR (DPTR)+1 2.减 1 指令:DEC A DEC Rn DEC direct DEC Ri 四 . 十进制调制指令:DA A 调整累加器A 的内容为BCD 码逻辑操作指令:一 .逻辑与、或、异或指令:1.逻辑与指令:ANL A ,Rn ANL A , direct 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
6、 - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - ANL A , Ri ANL A , #data 2.逻辑或这令:ORL A , Rn ORL A , direct ORL A , Ri ORL A , #data ORL direct , A ORL direct , #data 3.逻辑异或指令:XRL A , Rn XRL A , direct XRL A , Ri XRL A , #data XRL direct , A XRL direct , #data 二.清零、取反指令:1.累加器 A 清零指令:CRL A 2.累加器
7、 A 取反指令:CPL A 三.循环位移指令:1.累加器 A 循环左移指令:RL A 2.累加器 A 循环右移指令:RR A 3.累加器 A 连同进位位循环左移指令:RLC A 4. 累加器 A 连同进位位循环右移指令:RRC A 控制转移指令:一. 无条件转移指令:1.绝对转移指令:AJMP addr11 (先 PC+2,然后将addr11 的低十位传给PC,PC 的高六位不变)2.长转移指令:LJMP addr16 (用 addr16 的值替换PC 的值)3.相对转移(短转移)指令:SJMP rel(带符号的偏移字节数)(PC+2,再加 rel 赋值给 PC)4.间接转移指令:JMP A+
8、DPTR (A)+(DPTR) (PC) 二.条件转移指令:1.累加器判零转移指令:JZ rel 先 PC+2;后判断, A 为 0时转移, PC+rel 赋值给 PC;否则顺序名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - 执行JNZ rel 先 PC+2,后判断, A 不为 0 时转移, PC+rel 赋值给 PC;否则顺序执行2.比较转移指令:CJNE 目的操作数,源操作数,rel CJNE A,direct,rel 先
9、PC+3 传回 PC,再比较目的操作数和原操作数CJNE A,#data,rel 目源时,程序转移,PC+rel 传回 PC 且 CY=0 CJNE Rn,#data,rel 目=源时,程序顺序执行CJNE Ri, #data,rel 目源时,程序转移,PC+rel 传回 PC 且 CY=1 3.减一非 0指令:DJNZ Rn,rel 先 PC+2,Rn-1,当 Rn 为 0 时程序顺序执行,否则PC+rel 传回PC DJNZ direct,rel 先 PC+3,direct-1, direct 为 0 时程序顺序执行,否则PC+rel传回 PC 二. 子程序调用、返回指令:1.绝对调用指令
10、ACALL: ACALL addr11 先 PC+2,SP+1 将 PC 的低八位存入SP;SP+1,将 PC 的高八位存入 SP。将 addr 的低十一位传给PC 的底十一位,PC 的高五位不变2.长调用指令LCALL: LCALL addr16 先 PC+|3,SP+1 将 PC 的低八位存入SP,SP+1,将 PC 的高八位存入 SP。将 addr 的十六位全部传给PC 3.返回指令:RET PC 的 8 到十五位 (SP),弹出断点的高8 位,然后SP减 1 赋给 SP ,PC的 0 到七位(PC ) ) ,弹出断点的低八位;然后PC减 1 赋给 PC RETI PC 的 8 到十五位
11、 (SP),弹出断点的高8 位,然后SP减 1 赋给 SP ,PC的 0 到七位(PC ) ) ,弹出断点的低八位;然后PC减 1 赋给 PC 注意:RET 是从子程序返回指令,当程序执行到此指令时,表示结束子程序的执行,返回调用指令(ACALL或 LCALL )的下一条指令处(断点)继续往下执行。因此它的主要操作是将栈顶的断点地址送给PC 。RETI 是中断返回指令,除了具有RET的功能外,还具有开放低优先级中断、回复中断逻辑等功能。编程时不能混用这两种返回指令,中断指令一定安排在中断服务程序的最后三. 空操作指令:NOP PC(PC)+1 这是一条单字节指令,除了 PC+1 指向下一条指令
12、外不执行其他的操作,不影响其他寄存器和标志位。用来编写软件延时程序。位操作指令:一. 位数据传送指令:MOV C,bit MOV bit,C 二. 位逻辑运算指令:1.位逻辑与指令:ANL C,bit ANL C,/bit 2.位逻辑或指令:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - ORL C,bit ORL C,bit 三. 位清零、置一、取反指令:1.位清零指令:CLR C CLR bit 2.位置一指令:SETB C
13、 STEB bi 3.位取反指令:CPL C CPL bit 这类指令的功能执行的结果不影响标志位,当直接寻址位地址为端口P0P3 中的某一位时,具有“读-改-写”的功能。四. 位条件转移指令:1.位累加器C 判断转移指令JC rel 先 pc+2 后判断, (C)=1 时, 则 PC+rel 赋值给 PC,反之顺序执行JNC rel 先 pc+2 后判断, (C)=0 时,则 PC+rel 赋值给 PC,反之顺序执行2.判位变量转移指令:JB bit,rel 先 PC+3,判断,若( bit)=1,PC+rel 赋值给 PC,反之顺序往下执行JNB bit ,rel 先 PC+3,判断,若(bit)=0,PC+rel 赋值给 PC,反之顺序往下执行3.判位变量转移指令:JBC bit,rel 先 PC+3,判断,若(bit)=0, PC+rel 赋值给PC,且 bit0,反之顺序往下执行名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -
限制150内