您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 单片机指令(自己整理的)
单片机指令单片机指令分为5类:数据传送类算术运算类逻辑运算及移位类控制转移类位操作类数据传送类指令:(29)1、内部RAM数据传送8位立即数:MOVA,#dataMOVdirect,#dataMOV@Ri,#dataMOVRn,#data16位立即数:MOVDPTR,#data内部RAM之间:MOVdirect2,direct1MOVdirect2,@RiMOVdirect2,RnMOV@Ri,direct1MOVRn,direct通过累加器传送:MOVA,directMOVA,@RiMOVA,RnMOVdirect,AMOV@Ri,AMOVRn,A2、外部数据存储器读写(只能用A使用间址寻址)Ri作为间址寄存器:MovxA,@RiMovx@Ri,ADPTR作为间址寄存器:MovxA,@DPTRMovx@DPTR,A3、程序存储器读指令MovcA,@A+DPTRMovcA,@A+PC4、数据交换整字节交换:XCHA,RnXCHA,directXCHA,@Ri半字节交换:(A的低4位与RAM低4位交换)XCHDA,@Ri累加器高低半字节交换:(A的高低半字节交换)SWAPA5、堆栈操作PUSHdirectPOPdirect算术运算类(24)1、加法指令:6、乘除:ADDA,#data乘(低8位给A,高8位给B)ADDA,directMULABADDA,@Ri除(商给A,余数给B)ADDA,RnDIVAB2、带进位加法:7、十进制调整:(紧跟加减反指令后)ADDCA,#dataDAAADDCA,directADDCA,@RiADDCA,Rn3、带借位减法:SUBBA,#dataSUBBA,directSUBBA,@RiSUBBA,Rn4、加1:INCAINCdirectINC@RiINCRnINCDPTR5、减1:DECADECdirectDEC@RiDECRn逻辑运算及移位类指令(24)1、逻辑“与”运算:ANLdirect,AANLdirect,#dataANLA,#dataANLA,directANLA,@RiANLA,Rn2、逻辑“或”运算:ORLdirect,AORLdirect,#dataORLA,#dataORLA,directORLA,@RiORLA,Rn3、逻辑“异或”运算:XRLdirect,AXRLdirect,#dataXRLA,#dataXRLA,directXRLA,@RiXRLA,Rn4、累加器清零和取反:CLRACPLA5、移位指令:RLA(累加器循环左移)RRA(累加器循环右移)RLCA(通过CY循环左移)RRCA(通过CY循环右移)控制转移类指令(17)1、无条件转移指令长转移指令:LJMPaddr16绝对转移:AJMPaddr11短转移:SJMPrel变址寻址转移:JMP@A+DPTR2、条件转移指令累加器判零转移指令:JZrel(零转移)JNZrel(非零转移)数值比较转移指令:CJNZA,#data,relCJNZA,direct,relCJNZRn,#data,relCJNZ@Ri,#data,rel减1条件转移指令:DJNZRn,relDJNZdirect,rel4、子程序调用与返回指令组绝对调用指令:ACALLaddr11长调用指令:LCALLaddr16返回指令:RETRETI3、空操作指令NOP位操作类指令(17)1、位传送指令组MOVC,bitMOVbit,C2、位置位复位指令组SETBCSETBbitCLRCCLRbit3、位逻辑运算指令组ANLC,bitANLC,/bitORLC,bitORLC,/bitCPLCCPLbit4、位控制转移指令以C状态为条件的转移指令JCrelJNCrel以位状态为条件的转移指令JBbit,relJNBbit,relJBCbit,rel
本文标题:单片机指令(自己整理的)
链接地址:https://www.777doc.com/doc-4512601 .html