80c51单片机指令大全

助记符操作数指令说明字节数周期数
(数据传递类指令)    
MOVA,Rn寄存器传送到累加器11
MOVA,direct直接地址传送到累加器21
MOVA,@Ri累加器传送到外部RAM(8 地址)11
MOVA,#data立即数传送到累加器21
MOVRn,A累加器传送到寄存器11
MOVRn,direct直接地址传送到寄存器22
MOVRn,#data累加器传送到直接地址21
MOVdirect,Rn寄存器传送到直接地址21
MOVdirect,direct直接地址传送到直接地址32
MOVdirect,A累加器传送到直接地址21
MOVdirect,@Ri间接RAM 传送到直接地址22
MOVdirect,#data立即数传送到直接地址32
MOV@Ri,A直接地址传送到直接地址12
MOV@Ri,direct直接地址传送到间接RAM21
MOV@Ri,#data立即数传送到间接RAM22
MOVDPTR,#data1616 位常数加载到数据指针31
MOVCA,@A+DPTR代码字节传送到累加器12
MOVCA,@A+PC代码字节传送到累加器12
MOVXA,@Ri外部RAM(8 地址)传送到累加器12
MOVXA,@DPTR外部RAM(16 地址)传送到累加器12
MOVX@Ri,A累加器传送到外部RAM(8 地址)12
MOVX@DPTR,A累加器传送到外部RAM(16 地址)12
PUSHdirect直接地址压入堆栈22
POPdirect直接地址弹出堆栈22
XCHA,Rn寄存器和累加器交换11
XCHA, direct直接地址和累加器交换21
XCHA, @Ri间接RAM 和累加器交换11
XCHDA, @Ri间接RAM 和累加器交换低4 位字节11
(算术运算类指令)    
INCA累加器加111
INCRn寄存器加111
INCdirect直接地址加121
INC@Ri间接RAM 加111
INCDPTR数据指针加112
DECA累加器减111
DECRn寄存器减111
DECdirect直接地址减122
DEC@Ri间接RAM 减111
MULAB累加器和B 寄存器相乘14
DIVAB累加器除以B 寄存器14
DAA累加器十进制调整11
ADDA,Rn寄存器与累加器求和11
ADDA,direct直接地址与累加器求和21
ADDA,@Ri间接RAM 与累加器求和11
ADDA,#data立即数与累加器求和21
ADDCA,Rn寄存器与累加器求和(带进位)11
ADDCA,direct直接地址与累加器求和(带进位)21
ADDCA,@Ri间接RAM 与累加器求和(带进位)11
ADDCA,#data立即数与累加器求和(带进位)21
SUBBA,Rn累加器减去寄存器(带借位)11
SUBBA,direct累加器减去直接地址(带借位)21
SUBBA,@Ri累加器减去间接RAM(带借位)11
SUBBA,#data累加器减去立即数(带借位)21
(逻辑运算类指令)    
ANLA,Rn寄存器“与”到累加器11
ANLA,direct直接地址“与”到累加器21
ANLA,@Ri间接RAM“与”到累加器11
ANLA,#data立即数“与”到累加器21
ANLdirect,A累加器“与”到直接地址21
ANLdirect, #data立即数“与”到直接地址32
ORLA,Rn寄存器“或”到累加器12
ORLA,direct直接地址“或”到累加器21
ORLA,@Ri间接RAM“或”到累加器11
ORLA,#data立即数“或”到累加器21
ORLdirect,A累加器“或”到直接地址21
ORLdirect, #data立即数“或”到直接地址31
XRLA,Rn寄存器“异或”到累加器12
XRLA,direct直接地址“异或”到累加器21
XRLA,@Ri间接RAM“异或”到累加器11
XRLA,#data立即数“异或”到累加器21
XRLdirect,A累加器“异或”到直接地址21
XRLdirect, #data立即数“异或”到直接地址31
CLRA累加器清零12
CPLA累加器求反11
RLA累加器循环左移11
RLCA带进位累加器循环左移11
RRA累加器循环右移11
RRCA带进位累加器循环右移11
SWAPA累加器高、低4 位交换11
(控制转移类指令)    
JMP@A+DPTR相对DPTR 的无条件间接转移12
JZrel累加器为0 则转移22
JNZrel累加器为1 则转移22
CJNEA,direct,rel比较直接地址和累加器,不相等转移32
CJNEA,#data,rel比较立即数和累加器,不相等转移32
CJNERn,#data,rel比较寄存器和立即数,不相等转移22
CJNE@Ri,#data,rel比较立即数和间接RAM,不相等转移32
DJNZRn,rel寄存器减1,不为0 则转移32
DJNZdirect,rel直接地址减1,不为0 则转移32
NOP 空操作,用于短暂延时11
ACALLadd11绝对调用子程序22
LCALLadd16长调用子程序32
RET 从子程序返回12
RETI 从中断服务子程序返回12
AJMPadd11无条件绝对转移22
LJMPadd16无条件长转移32
SJMPrel无条件相对转移22
(布尔指令)    
CLRC清进位位11
CLRbit清直接寻址位21
SETBC置位进位位11
SETBbit置位直接寻址位21
CPLC取反进位位11
CPLbit取反直接寻址位21
ANLC,bit直接寻址位“与”到进位位22
ANLC,/bit直接寻址位的反码“与”到进位位22
ORLC,bit直接寻址位“或”到进位位22
ORLC,/bit直接寻址位的反码“或”到进位位22
MOVC,bit直接寻址位传送到进位位21
MOVbit, C进位位位传送到直接寻址22
JCrel如果进位位为1 则转移22
JNCrel如果进位位为0 则转移22
JBbit,rel如果直接寻址位为1 则转移32
JNBbit,rel如果直接寻址位为0 则转移32
JBCbit,rel直接寻址位为1 则转移并清除该位22
  • 15
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陆小马

赏个核桃让我补补脑呗!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值