51单片机汇编指令集1 下载本文

内容发布更新时间 : 2024/5/20 6:12:31星期一 下面是文章的全部内容请认真阅读。

符号 含义 Rn R0~R7寄存器 @Ri R0或R1寄存器间接寻址 8051/31RAM地址(00H~7FH),8052/32RAM地址(00H~FFH) #data 8位立即数 符号#data16 16位立即数 定义Addr16 16位地址 表Addr11 低11位地址 rel 8位带符号的地址偏移量 Direct 直接地址,内部数据区的地址RAM(00H~FFH) bit 内部数据RAM(20H~2FH),SFR的直接地址的位 $ 当前指令的地址 @DPTR 以DPTR的内容为数据指针的间接寻址(16位) 算数运算指令 ADD A,(Rn、direct、@Ri、#data) 加法,第一个加数一定在A中 加ADDC A,(Rn、direct、@Ri、#data) 带进位加法 法加1(当DPTR的低字节(DPL)从FFH INC(A、Rn、direct、@Ri、DPTR) 溢出至00H时,会使高字节(DPH)加1,但不影响任何标志位) 减法 SUBB A,(Rn、direct、@Ri、#data) MCS-51只有带借位减法 DEC (A、Rn、direct、@Ri) 减1 十进制调整 DA A 将累加器A作十进制调整 乘积的低位字节存回A,高位字节存无符号MUL AB 回B寄存器。若积大于FFH,则溢出位(OV)为1,而进位C为0 乘除法 DIV AB 结果的商存回A,余数存回B寄存器。若B=0,则OV=1;否则,OV=0 数据转移指令 内部数据传送 16位数据传送 MOV DPTR,#data16 将16位的常数存入数据指针寄存器 用于外部MOVC A,@A+DPTR (A) ←((A)+(DPTR)) ROM MOVC A,@A+PC {(PC)←(PC)+1;(A)←((A)+(PC)} 外部数MOVX A,@Ri 将Ri所指外部存储器的内容 据传送 读入A(8位地址) 用于外部MOVX A,@DPTR 将DPTR所指外部存储器的内容 读入A(16位地址) RAM MOVX @Ri,A 将A写入Ri所指外部存储器 (8位地址) MOVX @DPTR,A 将A写入DPTR所指外部存储器 (16位地址) PUSH (direct...) 将直接地址的内容压入堆栈区 堆栈操作指令 {SP←SP+1;(SP)←(direct...)} POP (direct...) 从堆栈弹出该直接地址的内容 {(direct...)←(SP);SP←SP-1} XCH A,(Rn、direct、@Ri) 将A的内容与(Rn、direct、@Ri) 的内容互换 数据交换 SWAP A 将A的高4位与低4位互换 XCHD A,@Ri 将A的高4位与Ri指向内存单元 低4位互换