mcs_51的指令表

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2
2
#data8
8位立即数送入间接RAM单元
#00H~#FFH
2
1
MCS-51单片机指令表(共111条指令)
表D.1 8位数据传送指令
表D.2 16位数据的传送类指令
助记符
功能说明
寻址范围
字节数
机器周期
MOV DPTR,#data16
16位立即数地址送入数据指针寄存器
0000H~FFFFH
3
2
表D.3外部数据传送类指令
直接地址单元内容与累加器内容交换
00H~FFH
2
1
@Ri
间接RAM内容与累加器内容交换
(R0~R7) , 00H~FFH
1
1
MOVC A,@A+DPTR
以DPTR为基地址变址寻址单元中的数据送入A
0000H~FFFFH
1
2
MOVC A,@A+PC
以PC为基地址变址寻址单元中的数据送入A
PC向下00H~FFH
堆栈中的数据弹出到到直接地址单元
2
2
NOP
空操作
1
1
表D.10位操作类指令
助记符
功能说明
字节数
机器周期
CLR C
清进位位
1
1
CLR bit
清直接地址位
2
1
SETB C
置进位位
1
1
SETB bit
置直接地址位
2
1
CPL C
进位位求反
1
1
CPL bit
直接地址位求反
2
1
ANL C,bit
进位位内容与直接地址位内容相与
3
2
@Ri
间接RAM中的数据送入直接地址单元
(R0~R7) , 00H~FFH
2
2
#data8
8位立即数送入直接地址单元
#00H~#FFH
3
2
MOV @Ri
A
累加器内容送入间接RAM单元
(R0~R1), 00H~FFH
1
1
Direct
直接地址单元中的数据送入间接RAM单元
(R0~R1), 00H~FFH
2
2
JNC rel
进位位内容为0则转移
2
2
JB bit,rel
直接地址位内容为1则转移
3
2
JNB bit,rel
直接地址位内容为0则转移
3
2
JBC bit,rel
直接地址位内容为1则转移,该位清零
3
2
Y
2
1
DEC
A
累加器内容减1
Y
1
1
Rn
寄存器内容减1
1
1
direct
直接地址按单元内容减1
2
1
@Ri
间接RAM内容减1
1
1
MUL
AB
A乘以B
0
Y
Y
1
4
DIV
A除以B
0
Y
Y
1
4
表D.6逻辑运算类指令
助记符
功能说明
寻址范围
字节数
机器周期
CLR A
累加器清零
A
1
1
CPL A
累加器内容求反
A
1
1
ANL A ,
助记符
功能说明
寻址范围
字节数
机器周期
MOV A,
Rn
寄存器内容送入累加器A
R0~R7
1
1
direct
直接地址单元中的数据送入累加器
00H~FFH
2
1
@Ri
间接RAM中的数据送入累加器
(R0~R7) , 00H~FFH
1
1
#data8
8位立即数送入累加器
#00H~#FFH
2
1
MOV Rn,
A
累加器内容送入寄存器
1
2
注:PC←PC+1 , A←A+PC
表D.5算术操作类指令
助记符
功能说明
对标志位的影响
字节数
机器周期
C
AC
OV
P
ADD A,
Rn
寄存器内容加到累加器
Y
Y
Y
Y
1
1
Direct
直接地址单元内容加到累加器
Y
Y
Y
Y
2
1
@Ri
间接RAM中的内容加到累加器
Y
Y
Y
Y
1
1
#data8
8位立即数加到累加器
Y
Y
Y
Y
2
2
ANL C,/bit
进位位内容和直接地址位内容的反码相与
2
2
ORL C,bit
进位位内容与直接地址位内容相或
2
2
ORL C,/bit
进位位内容和直接地址位内容的反码相或
2
2
MOV C,bit
直接地址位内容送入进位位
2
2
MOV bit,C
进位位内容送入直接地址位
2
2
JC rel
进位位内容为1则转移
直接地址单元中内容加1
1
1
DPTR
DPTR加1
1
2
DA A
累加器内容进行十进制转换
Y
Y
Y
Y
1
1
SUBB A,
Rn
累加器内容带借减寄存器内容
Y
Y
Y
Y
1
1
direct
累加器内容带借位减直接地址单元
Y
Y
Y
Y
2
1
@Ri
累加器内容带借位减间接RAM内容
Y
Y
Y
Y
1
1
#data8
累加器内容带借位减8位立即数
Y
Y
Y
不影响状态标志位
3
2
表D.9其他转移类指令(子程序调用和返回指令,空操作指令)
助记符
功能说明
字节数
机器周期
ACALL addr11
绝对短调用子程序
2
2
LCALL addr16
长调用子程序
3
2
RET
子程序返回
1
2
RETI
中断返回
1
2
PUSH direct
直接地址单元中的数据压入堆栈
2
2
POP direct
1
1
Direct
累加器内容与直接地址单元内容相异或
00H~FFH
2
1
@Ri
累加器内容与间接RAM内容相异或
(R0~R7) , 00H~FFH
1
1
#data8
累加器内容与8位立即数相异或
#00H~#FFH
2
1
XRL direct,
A
直接地址单元内容与累加器相异或
00H~FFH
2
1
#data8
直接地址单元内容与8位立即数相异或
寄存器内容与8位立即数比较,不等则转移
(Rn)<data,则C=1
3
2
CJNE @Ri,
间接RAM单元内容与8位立即数比较,内容不等则转移
((Ri))<data,则C置1,否则C置0
3
2
DJNZ Rn,
rel
寄存器内容减1,非零转移
不影响状态标志位
3
2
DJNZ direct
直接地址单元内容减1,非零转移
2
1
ADDC A,
Rn
寄存器内容带进位加到累加器
Y
Y
Y
Y
1
1
direct
直接地址单元内容带进位加到累加器
Y
Y
Y
Y
2
1
@Ri
间接RAM内容带进位加到累加器
Y
Y
Y
Y
1
1
#data8
8位立即数带进位加到累加器
Y
Y
Y
Y
2
1
INC
A
累加器内容加1
Y
1
1
Rn
寄存器内容加1
1
1
@Ri
间接RAM内容加1
2Байду номын сангаас
1
direct
0000H~FFFFH
1
2
表D.4交换和查表指令
助记符
功能说明
寻址范围
字节数
机器周期
SWAP A
累加器高四位与低四位的数据交换
A
1
1
XCHD A,@Ri
间接RAM与累加器进行低半字节交换
(R0~R7) , 00H~FFH
1
1
XCH A,
Rn
寄存器与累加器交换
(R0~R7) , 00H~FFH
1
1
Direct
助记符
功能说明
寻址范围
字节数
机器周期
MOVXA,
@Ri
外部RAM(8位地址)送入累加器
00H~FFH
1
2
@DPTR
外部RAM(16位地址)送入累加器
0000H~FFFFH
1
2
MOVX @Ri,
A
累加器送入外部RAM(8位地址)
00H~FFH
1
2
MOVX @DPTR,
A
累加器送入外部RAM(16位地址)
寻址范围
字节数
机器周期
LJMP addr16
长转移
0000H~FFFFH
3
2
AJMP addr11
绝对短转移
0000H~FFFFH
2
2
SJMP addr11 rel
相对转移
80H~7FH
2
2
JMP @A+DPTR
相对于DPTR的间接转移
0000H~FFFFH
1
2
JZ rel
累加器内容为零转移
-80H~7FH
#00H~#FFH
3
2
表D.7循环移位类指令
助记符
功能说明
对标志位的影响
字节数
机器周期
C
AC
OV
P
RL A
累加器内容循环左移
1
1
RLC A
累加器内容带进位循环左移
Y
Y
1
1
RR A
累加器内容循环右移
1
1
RRC A
累加器内容带进位循环右移
Y
Y
1
1
表D.8转移类指令(无条件转移指令和条件转移指令)
助记符
功能说明
Rn
累加器内容与寄存器内容相与
(R0~R7) , 00H~FFH
1
1
Direct
累加器内容与直接地址单元内容相与
00H~FFH
2
1
@Ri
累加器内容与间接RAM内容相与
(R0~R7) , 00H~FFH
1
1
#data8
累加器内容与8位立即数相与
#00H~#FFH
2
1
ANL direct,
A
直接地址单元内容与累加器相与
R0~R7
1
1
direct
直接地址单元中的数据送入寄存器
00H~FFH
2
2
#data8
8位立即数送入寄存器
#00H~#FFH
2
1
MOV direct,
A
累加器内容送入直接地址单元
00H~FFH
2
1
Rn
寄存器内容送入直接地址单元
R0~R7
2
2
direct
直接地址单元中的数据送入直接地址单元
00H~FFH
#data8
累加器内容与8位立即数相或
#00H~#FFH
2
1
ORL direct,
A
直接地址单元内容与累加器相或
00H~FFH
2
1
#data8
直接地址单元内容与8位立即数相或
#00H~#FFH
3
2
续表
助记符
功能说明
寻址范围
字节数
机器周期
XRL A,
Rn
累加器内容与寄存器内容相异或
(R0~R7) , 00H~FFH
2
2
JNZ rel
累加器内容非零转移
-80H~7FH
2
2
CJNE A,
Direct,rel
累加器内容与直接地址内容单元比较,不等则转移
(A)<(direct),则C置1,否则C置0
3
2
#data8,rel
累加器内容与8位立即数比较,不等则转移
(A)<data,则C=1
3
2
CJNE Rn,
#data8,rel
00H~FFH
2
1
#data8
直接地址单元内容与8位立即数相与
#00H~#FFH
3
2
ORL A,
Rn
累加器内容与寄存器内容相或
(R0~R7) , 00H~FFH
1
1
Direct
累加器内容与直接地址单元内容相或
00H~FFH
2
1
@Ri
累加器内容与间接RAM内容相或
(R0~R7) , 00H~FFH
1
1
相关文档
最新文档