51单片机指令速查表
51单片机汇编指令速查表

51单片机汇编指令速查表指令格式功能简述字节数周期一、数据传送类指令MOV A, Rn 寄存器送累加器 1 1MOV Rn,A 累加器送寄存器 1 1MOV A ,@Ri 内部RAM单元送累加器 1 1MOV @Ri ,A 累加器送内部RAM单元 1 1MOV A ,#data 立即数送累加器 2 1MOV A ,direct 直接寻址单元送累加器 2 1MOV direct ,A 累加器送直接寻址单元 2 1MOV Rn,#data 立即数送寄存器 2 1MOV direct ,#data 立即数送直接寻址单元 3 2MOV @Ri ,#data 立即数送内部RAM单元 2 1MOV direct ,Rn 寄存器送直接寻址单元 2 2MOV Rn ,direct 直接寻址单元送寄存器 2 2MOV direct ,@Ri 内部RAM单元送直接寻址单元 2 2 MOV @Ri ,direct 直接寻址单元送内部RAM单元 2 2 MOV direct2,direct1 直接寻址单元送直接寻址单元 3 2 MOV DPTR ,#data16 16位立即数送数据指针 3 2MOVX A ,@Ri 外部RAM单元送累加器(8位地址) 1 2 MOVX @Ri ,A 累加器送外部RAM单元(8位地址) 1 2 MOVX A ,@DPTR 外部RAM单元送累加器(16位地址) 1 2 MOVX @DPTR ,A 累加器送外部RAM单元(16位地址) 1 2 MOVC A ,@A+DPTR 查表数据送累加器(DPTR为基址) 1 2 MOVC A ,@A+PC 查表数据送累加器(PC为基址) 1 2 XCH A ,Rn 累加器与寄存器交换 1 1XCH A ,@Ri 累加器与内部RAM单元交换 1 1XCHD A ,direct 累加器与直接寻址单元交换 2 1 XCHD A ,@Ri 累加器与内部RAM单元低4位交换 1 1 SWAP A 累加器高4位与低4位交换 1 1POP direct 栈顶弹出指令直接寻址单元 2 2PUSH direct 直接寻址单元压入栈顶 2 2二、算术运算类指令ADD A, Rn 累加器加寄存器 1 1ADD A,@Ri 累加器加内部RAM单元 1 1ADD A, direct 累加器加直接寻址单元 2 1ADD A, #data 累加器加立即数 2 1ADDC A, Rn 累加器加寄存器和进位标志 1 1ADDC A,@Ri 累加器加内部RAM单元和进位标志 1 1 ADDC A, #data 累加器加立即数和进位标志 2 1 ADDC A, direct 累加器加直接寻址单元和进位标志 2 1 INC A 累加器加1 1 1INC Rn 寄存器加1 1 1INC direct 直接寻址单元加1 2 1INC @Ri 内部RAM单元加1 1 1INC DPTR 数据指针加1 1 2DA A 十进制调整 1 1SUBB A, Rn 累加器减寄存器和进位标志 1 1SUBB A,@Ri 累加器减内部RAM单元和进位标志 1 1 SUBB A, #data 累加器减立即数和进位标志 2 1 SUBB A, direct 累加器减直接寻址单元和进位标志 2 1 DEC A 累加器减1 1 1DEC Rn 寄存器减1 1 1DEC @Ri 内部RAM单元减1 1 1DEC direct 直接寻址单元减1 2 1MUL AB 累加器乘寄存器B 1 4DIV AB 累加器除以寄存器B 1 4三、逻辑运算类指令ANL A, Rn 累加器与寄存器 1 1ANL A,@Ri 累加器与内部RAM单元 1 1ANL A, #data 累加器与立即数 2 1ANL A, direct 累加器与直接寻址单元 2 1ANL direct, A 直接寻址单元与累加器 2 1ANL direct, #data 直接寻址单元与立即数 3 1ORL A, Rn 累加器或寄存器 1 1ORL A,@Ri 累加器或内部RAM单元 1 1ORL A,#data 累加器或立即数 2 1ORL A,direct 累加器或直接寻址单元 2 1ORL direct, A 直接寻址单元或累加器 2 1ORL direct, #data 直接寻址单元或立即数 3 1XRL A, Rn 累加器异或寄存器 1 1XRL A,@Ri 累加器异或内部RAM单元 1 1XRL A,#data 累加器异或立即数 2 1XRL A,direct 累加器异或直接寻址单元 2 1XRL direct, A 直接寻址单元异或累加器 2 1XRL direct, #data 直接寻址单元异或立即数 3 2RL A 累加器左循环移位 1 1RLC A 累加器连进位标志左循环移位 1 1RR A 累加器右循环移位 1 1RRC A 累加器连进位标志右循环移位 1 1CPL A 累加器取反 1 1CLR A 累加器清零 1 1四、控制转移类指令类ACCALL addr11 2KB范围内绝对调用 2 2AJMP addr11 2KB范围内绝对转移 2 2LCALL addr16 2KB范围内长调用 3 2LJMP addr16 2KB范围内长转移 3 2SJMP rel 相对短转移 2 2JMP @A+DPTR 相对长转移 1 2RET 子程序返回 1 2RET1 中断返回 1 2JZ rel 累加器为零转移 2 2JNZ rel 累加器非零转移 2 2CJNE A ,#data ,rel 累加器与立即数不等转移 3 2 CJNE A ,direct ,rel 累加器与直接寻址单元不等转移 3 2 CJNE Rn,#data ,rel 寄存器与立即数不等转移 3 2 CJNE @Ri ,#data,rel RAM单元与立即数不等转移 3 2 DJNZ Rn ,rel 寄存器减1不为零转移 2 2DJNZ direct ,rel 直接寻址单元减1不为零转移 3 2 NOP 空操作 1 1五、布尔操作类指令(C表示进位标识)MOV C, bit 直接寻址位送C 2 1MOV bit, C C送直接寻址位 2 1CLR C C清零 1 1CLR bit 直接寻址位清零 2 1CPL C C取反 1 1CPL bit 直接寻址位取反 2 1SETB C C置位 1 1SETB bit 直接寻址位置位 2 1ANL C, bit C逻辑与直接寻址位 2 2 ANL C, /bit C逻辑与直接寻址位的反 2 2 ORL C, bit C逻辑或直接寻址位 2 2 ORL C, /bit C逻辑或直接寻址位的反 2 2 JC rel C为1转移 2 2JNC rel C为零转移 2 2JB bit,rel 直接寻址位为1转移 3 2JNB bit,rel 直接寻址为0转移。
mcs_51的指令表

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
MCS-51单片机指令简表

算 术 运 算 类 指 令
算 术 运 算 类 指 令
04 08~0F 05 __ 06~07 A3 14 18~1F 16~17 15 __ A4 84 D4 58~5F 56~57 54 __ 55 __ 52 __ 53 __ __ 48~4F 46~47 44 __ 45 __ 42 __ 43 __ __ 68~6F 66~67 64 __ 65 __ 62 __ 63 __ __ 23 33 03 13 F4 E4 A2 __ 92 __ C3 C2 __ B3 B2 __ D3 D2 __ 82 __ B0 __
高四位 ↓ → 低四位 0 1 0 1 NOP JBC bit,rel AJMP0 ACALL0
(反汇编)
2 LJMP addr16 LCALL addr16 RET RETI ORL dir,A
3 RR A RRC A RL A RLC A ORL dir,#data ANL dir,#data XRL dir,#data
INC A INC Rn INC direct INC @Ri INC DPTR DEC A DEC Rn DEC @Ri DEC direct MUL AB DIV AB DA A ANL A, Rn ANL A, @Ri ANL A, #data ANL A, direct ANL direct, A ANL direct, #data ORL A, Rn ORL A,@Ri ORL A,#data ORL A,direct ORL direct, A ORL direct,#data XRL A, Rn XRL A,@Ri XRL A,#data XRL A,direct XRL direct, A XRL direct,#data RL A RLC A RR A RRC A CPL A CLR A MOV MOV CLR CLR CPL CPL SETB SETB ANL ANL C,bit bit,C C bit C bit C bit C,bit C,/ bit
MCS-51指令表

MCS-51指令系统所用的符号和含义
addr11 11位地址
addr16 16位地址
bit 位地址
rel 相对偏移量,为8位有符号数(补码形式)
direct 直接地址单元
#data 立即数
Rn 工作寄存器R0~R7
A 累加器
Ri i=0,1,R0或R1
X 片内RAM中的直接地址或寄存器
@ 表示间址寄存器的符号表示直接地址X中的内容;在间接寻址方式中,表示间址寄存器地址X指出的地址单元中的内容
→数据传送方向
∧逻辑与
∨逻辑或
⊕逻辑异或
√对标志产生影响
×不影响标志
算术运算指令
续上表
算术运算指令
逻辑运算指令
数据传送指令
续上表
位操作指令
续上表
控制转移指令。
51指令速查表

XCHD A, @Ri
寄存器Ri内为RAM地址,将该地址单元内的数据低4位与的低4位交换
22
与外部RAM传送
MOVX @DPTR, A
将累加器A的数据送数据指针DPTR寄存器所指外部RAM地址单元内
23
MOVX A , @DPTR
将DPTR寄存器所指外部RAM地址单元内的数据送累加器A
24
MOVX A, @Ri
8051系列单片机汇编语言指令速查表
编号
指令名称
指令助记符
指令说明
数据传送类指令
1
一般传送
MOV A, #data
将立即数#data送累加器A
2
MOV direct, #data
将立即数#data送片内RAM direct地址单元内
3
Mov Rn,#data
将立即数#data送寄存器Rn
4
Mov @Ri, #data
将direct地址单元内的数据送累加器A
13
Mov direct, A
将累加器A内的数据送direct地址单元内
14
Mov A, @Ri
寄存器Ri内为RAM地址,将该地址单元内的数据送累加器A
15
Mov @Ri , A
寄存器Ri内为RAM地址,将累加器A的数据送该地址单元内
16
目的地址传@Ri
寄存器Ri内为RAM地址,将累加器A的值和该地址单元内的值进行与操作,结果保存到累加器A中
57
ANL A, #data
将累加器A的值和立即数进行与操作,结果保存到累加器A中
58
ANL direct, A
将累加器A的值和direct地址单元内的值进行与操作,结果保存到direct地址单元内
51单片机汇编指令速查表

51单片机汇编指令速查表指令格式功能简述字节数周期一、数据传送类指令MOV A, Rn 寄存器送累加器 1 1MOV Rn,A 累加器送寄存器 1 1MOV A ,@Ri 内部RAM单元送累加器 1 1MOV @Ri ,A 累加器送内部RAM单元 1 1MOV A ,#data 立即数送累加器 2 1MOV A ,direct 直接寻址单元送累加器 2 1MOV direct ,A 累加器送直接寻址单元 2 1MOV Rn,#data 立即数送寄存器 2 1MOV direct ,#data 立即数送直接寻址单元 3 2MOV @Ri ,#data 立即数送内部RAM单元 2 1MOV direct ,Rn 寄存器送直接寻址单元 2 2MOV Rn ,direct 直接寻址单元送寄存器 2 2MOV direct ,@Ri 内部RAM单元送直接寻址单元 2 2 MOV @Ri ,direct 直接寻址单元送内部RAM单元 2 2 MOV direct2,direct1 直接寻址单元送直接寻址单元 3 2 MOV DPTR ,#data16 16位立即数送数据指针 3 2MOVX A ,@Ri 外部RAM单元送累加器(8位地址) 1 2 MOVX @Ri ,A 累加器送外部RAM单元(8位地址) 1 2 MOVX A ,@DPTR 外部RAM单元送累加器(16位地址) 1 2 MOVX @DPTR ,A 累加器送外部RAM单元(16位地址) 1 2 MOVC A ,@A+DPTR 查表数据送累加器(DPTR为基址) 1 2MOVC A ,@A+PC 查表数据送累加器(PC为基址) 1 2 XCH A ,Rn 累加器与寄存器交换 1 1XCH A ,@Ri 累加器与内部RAM单元交换 1 1XCHD A ,direct 累加器与直接寻址单元交换 2 1 XCHD A ,@Ri 累加器与内部RAM单元低4位交换 1 1 SWAP A 累加器高4位与低4位交换 1 1POP direct 栈顶弹出指令直接寻址单元 2 2PUSH direct 直接寻址单元压入栈顶 2 2二、算术运算类指令ADD A, Rn 累加器加寄存器 1 1ADD A, @Ri 累加器加内部RAM单元 1 1ADD A, direct 累加器加直接寻址单元 2 1ADD A, #data 累加器加立即数 2 1ADDC A, Rn 累加器加寄存器和进位标志 1 1ADDC A, @Ri 累加器加内部RAM单元和进位标志 1 1 ADDC A, #data 累加器加立即数和进位标志 2 1ADDC A, direct 累加器加直接寻址单元和进位标志 2 1 INC A 累加器加1 1 1INC Rn 寄存器加1 1 1INC direct 直接寻址单元加1 2 1INC @Ri 内部RAM单元加1 1 1INC DPTR 数据指针加1 1 2DA A 十进制调整 1 1SUBB A, Rn 累加器减寄存器和进位标志 1 1SUBB A, @Ri 累加器减内部RAM单元和进位标志 1 1 SUBB A, #data 累加器减立即数和进位标志 2 1SUBB A, direct 累加器减直接寻址单元和进位标志 2 1 DEC A 累加器减1 1 1DEC Rn 寄存器减1 1 1DEC @Ri 内部RAM单元减1 1 1DEC direct 直接寻址单元减1 2 1MUL AB 累加器乘寄存器B 1 4DIV AB 累加器除以寄存器B 1 4三、逻辑运算类指令ANL A, Rn 累加器与寄存器 1 1ANL A, @Ri 累加器与内部RAM单元 1 1ANL A, #data 累加器与立即数 2 1ANL A, direct 累加器与直接寻址单元 2 1ANL direct, A 直接寻址单元与累加器 2 1ANL direct, #data 直接寻址单元与立即数 3 1ORL A, Rn 累加器或寄存器 1 1ORL A,@Ri 累加器或内部RAM单元 1 1ORL A,#data 累加器或立即数 2 1ORL A,direct 累加器或直接寻址单元 2 1ORL direct, A 直接寻址单元或累加器 2 1ORL direct, #data 直接寻址单元或立即数 3 1XRL A, Rn 累加器异或寄存器 1 1XRL A,@Ri 累加器异或内部RAM单元 1 1XRL A,#data 累加器异或立即数 2 1XRL A,direct 累加器异或直接寻址单元 2 1XRL direct, A 直接寻址单元异或累加器 2 1XRL direct, #data 直接寻址单元异或立即数 3 2RL A 累加器左循环移位 1 1RLC A 累加器连进位标志左循环移位 1 1RR A 累加器右循环移位 1 1RRC A 累加器连进位标志右循环移位 1 1CPL A 累加器取反 1 1CLR A 累加器清零 1 1四、控制转移类指令类ACCALL addr11 2KB范围内绝对调用 2 2AJMP addr11 2KB范围内绝对转移 2 2LCALL addr16 2KB范围内长调用 3 2LJMP addr16 2KB范围内长转移 3 2SJMP rel 相对短转移 2 2JMP @A+DPTR 相对长转移 1 2RET 子程序返回 1 2RET1 中断返回 1 2JZ rel 累加器为零转移 2 2JNZ rel 累加器非零转移 2 2CJNE A ,#data ,rel 累加器与立即数不等转移 3 2CJNE A ,direct ,rel 累加器与直接寻址单元不等转移 3 2 CJNE Rn,#data ,rel 寄存器与立即数不等转移 3 2CJNE @Ri ,#data,rel RAM单元与立即数不等转移 3 2 DJNZ Rn ,rel 寄存器减1不为零转移 2 2DJNZ direct ,rel 直接寻址单元减1不为零转移 3 2 NOP 空操作 1 1五、布尔操作类指令 (C表示进位标识)MOV C, bit 直接寻址位送C 2 1MOV bit, C C送直接寻址位 2 1CLR C C清零 1 1CLR bit 直接寻址位清零 2 1CPL C C取反 1 1CPL bit 直接寻址位取反 2 1SETB C C置位 1 1SETB bit 直接寻址位置位 2 1ANL C, bit C逻辑与直接寻址位 2 2ANL C, /bit C逻辑与直接寻址位的反 2 2ORL C, bit C逻辑或直接寻址位 2 2ORL C, /bit C逻辑或直接寻址位的反 2 2JC rel C为1转移 2 2JNC rel C为零转移 2 2JB bit,rel 直接寻址位为1转移 3 2JNB bit,rel 直接寻址为0转移。
附录 MCS-51单片机指令表

1 1 1 1 1 1
移位指令
RR RLC RRC
附录 MCS-51单片机指令表 MCS-51单片机指令表
指令类型 指令 代码 LJMP 无条件转移指令 AJMP SJMP JMP JZ JNZ CJNE 条件转移指令 CJNE CJNE CJNE DJNZ DJNZ 操作数 addr16 addr11 rel @A+DPTR rel rel A,#data, #data, rel A,direct, direct, rel Rn,#data, Rn,#data, rel 操作说明 PC←addr16 PC←PC+2, 10PC←PC+2,PC10-0←addr11 PC←PC+2, PC←PC+2,PC←PC+rel PC←+A+DPTR 若A=0,PC←PC+2+rel A=0, A≠0, 若A≠0,PC←PC+2 若A≠0,PC←PC+2+rel A≠0, A=0, 若A=0,PC←PC+2 不相等转移 不相等转移 不相等转移 字节数 3 2 2 1 2 2 3 3 3 3 2 3 机器周 期数 2 2 2 2 2 2 2 2 2 2 2 2
若Ac=1或A的低四位大于9, Ac=1或 的低四位大于9 A←A+06H Cy=1或 的高四位大于9 若Cy=1或A的高四位大于9 ,A←A+60H A×B=BA,形成标志 B=BA, A÷B=A…B,形成标志 B=A…B, A←A∩Rn A←A∩ (direct) A←A∩ (Ri) A←A∩#data (direct)←(direct) ∩ A (direct)←(direct) ∩ #data
附录 MCS-51单Hale Waihona Puke 机指令表 MCS-51单片机指令表
MCS-51单片机指令简表-2011

类 别 指令 代码 74 __ E8~EF E5 __ E6~E7 F8~FF 78~7F __ A8~AF __ F5 __ 88~8F __ 75 __ __ 86~87 __ 85 d2 d1 F6~F7 76~77 __ A6~A7 __ 90 __ __ E2~E3 F2~F3 E0 F0 93 83 C8~CF C6~C7 C5 __ D6~D7 C4 C0 __ D0 __ 28~2F 26~27 25 __ 24 __ 38~3F 36~37 34 __ 35 __ 98~9F 96~97 94 __ 95 __ 指令格式 MOV A ,#data MOV A, Rn , MOV A ,direct MOV A ,@ ,@Ri MOV Rn,A , MOV Rn,#data , MOV Rn ,direct MOV direct ,A MOV direct ,Rn MOV direct ,#data MOV direct ,@ ,@Ri MOV direct1,direct2 , MOV @Ri ,A MOV @Ri ,#data MOV @Ri ,direct MOV DPTR ,#data16 MOVX A ,@ ,@Ri MOVX @Ri ,A MOVX A ,@ ,@DPTR MOVX @DPTR ,A MOVC A ,@ ,@A+DPTR MOVC A ,@ ,@A+PC XCH A ,Rn XCH A ,@ ,@Ri XCH A ,direct XCHD A ,@ ,@Ri SWAP A PUSH POP ADD ADD ADD ADD ADDC ADDC ADDC ADDC SUBB SUBB SUBB SUBB direct direct A, Rn , A, @Ri , A, direct , A, #data , A, Rn , A, @Ri , A, #data , A, direct , A, Rn , A, @Ri , A, #data , A, direct , 功能简述 立即数送累加器 A 工作寄存器内容 内容送累加器 工作寄存器内容送累加器 A 直接寻址片内单元(含 内容送累加器 直接寻址片内单元 含 SFR)内容送累加器 A 内容 单元内容 内容送累加器 间接寻址片内 RAM 单元内容送累加器 A 的内容 累加器 A 的内容送工作寄存器 立即数送工作寄存器 直接寻址片内单元内容 内容送工作寄存器 直接寻址片内单元内容送工作寄存器 的内容送直接寻址片内单元 累加器 A 的内容送直接寻址片内单元 工作寄存器内容送直接寻址片内单元 寄存器内容 工作寄存器内容送直接寻址片内单元 立即数送直接寻址片内单元 间址片内 单元内容 内容送直接寻址片内单元 间址片内 RAM 单元内容送直接寻址片内单元 直接寻址片内单元 2 送片内单元 1 累加器的内容 的内容送间接寻址片内 累加器的内容送间接寻址片内 RAM 单元 立即数送间接寻址片内 RAM 单元 直接寻址片内单元内容 片内单元内容送间址片内 直接寻址片内单元内容送间址片内 RAM 单元 16 位立即数送 16 位寄存器 DPTR 外部数据存储器单元内容 数据存储器单元内容送累加器 外部数据存储器单元内容送累加器 A(P2、Ri 址) 、 内容送外部数据存储器单元 送外部数据存储器单元(P2、 累加器 A 内容送外部数据存储器单元 、Ri 址) 外部数据存储器单元内容 数据存储器单元内容送累加器 位址) 外部数据存储器单元内容送累加器 A(16 位址 的内容送外部数据存储器单元 送外部数据存储器单元(16 位址 位址) 累加器 A 的内容送外部数据存储器单元 查表读程存 读程存数据送累加器 查表读程存数据送累加器 A (A+DPTR 为地址) 查表读程存 读程存数据送累加器 值为地 查表读程存数据送累加器 A (A+ PC 值为地址) 与工作寄存器内容 内容交换 累加器 A 与工作寄存器内容交换 单元内容 内容交换 累加器 A 与间接寻址片内 RAM 单元内容交换 与直接寻址片内单元内容 内容交换 累加器 A 与直接寻址片内单元内容交换 单元之间 之间低 累加器 A 与间址片内 RAM 单元之间低 4 位交换 中的高 累加器 A 中的高 4 位与低 4 位交换 直接寻址片内单元的内容压入新的栈顶单元 直接寻址片内单元的内容压入新的栈顶单元 新的栈顶 SP←SP+1, (SP) ← , ( )←(direct) ) 弹出栈顶单元数据给 弹出栈顶单元数据给直接寻址片内单元 ,SP← (direct)←(SP) ) ) , ←SP-1 累加器加工作寄存器 结果存累加器 A 累加器加间址片内 RAM 单元 累加器加直接寻址片内单元 累加器加立即数 累加器加工作寄存器以及进位标志位 以及进位标志 累加器加工作寄存器以及进位标志位 单元以及进位标志位 以及进位标志 累加器加间址片内 RAM 单元以及进位标志位 累加器加立即数以及进位标志位 以及进位标志 累加器加立即数以及进位标志位 累加器加直接寻址片内单元以及进位标志位 以及进位标志 累加器加直接寻址片内单元以及进位标志位 累加器减工作寄存器以及进位标志位 以及进位标志 累加器减工作寄存器以及进位标志位 单元以及进位标志位 以及进位标志 累加器减间址片内 RAM 单元以及进位标志位 累加器减立即数以及进位标志位 以及进位标志 累加器减立即数以及进位标志位 累加器减直接寻址片内单元以及进位标志位 累加器减直接寻址片内单元以及进位标志位 以及进位标志 字节 机器 数 周期 2 1 1 1 2 1 1 1 1 1 2 1 2 2 2 1 2 2 3 2 2 2 3 2 1 1 2 1 2 2 3 2 1 2 1 2 1 2 1 2 1 2 1 2 1 1 1 1 2 1 1 1 1 1 2 2 1 1 2 2 1 1 2 2 1 1 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
×
×
×
1
2
A6,A7
MOV@Ri,direct
direct →(Ri)
×
×
×
×
2
2
76,77
MOV@Ri,#data
data →(Ri)
×
×
×
×
2
2
90
MOVDPTR,#data16
data16 →DPTR
×
×
×
×
3
1
93
MOVC A,@A+DPTR
((A)+(DPTR))→A
×
×
×
×
1
2
83
MOVC A,@A+PC
√
×
×
×
2
1
46,47
ORLA,@Ri
(A)∨((Ri))→A
√
×
×
×
1
1
44
ORLA,#data
(A)∨data →A
√
×
×
×
2
1
42
ORLdirect,A
(direct)∨(A)→direct
×
×
×
×
2
1
43
ORLdirect,#data
(direct)∨data →direct
×
×
×
×
3
2
68~6F
√
×
×
×
1
1
18~1F
DECRn
(Rn)- 1→Rn
×
×
×
×
1
1
15
DECdirect
(direct)- 1 →direct
×
×
×
×
2
1
16,17
DEC@Ri
((Ri))- 1 →(Ri)
×
×
×
×
1
1
A4
MULAB
(A)·(B)→AB
√
×
×
√
1
4
84
DIVAB
(A)/(B)→AB
√
×
×
√
1
4
D4
DAA
MCS-51系列单片机指令速查表
算术运算指令(共24条)
机器码
助记符
功能
对标志影响
字节数
周期数
P
OV
AC
CY
28~2F
ADDA,Rn
(A)+(Rn)→A
√
√
√
√
1
1
25
ADDA,direct
(A)+(direct)→A
√
√
√
√
2
1
26,27
ADDA,@Ri
(A)+((Ri))→A
√
√
√
√
1
1
24
ADDA,#data
(A)+ data →A
√
√
√
√
2
1
38~3F
ADDCA,Rn
(A)+(Rn)+Cy →A
√
√
√
√
1
1
35
ADDCA,direct
(A)+(direct)+ Cy →A
√
√
√
√
2
1
36,37
ADDCA,@Ri
(A)+((Ri))+Cy →A
√
√
√
√
1
1
34
ADDCA,#data
(A)+ data +Cy →A
×
×
×
×
1
1
C4
SWAPA
A半字节交换
×
×
×
×
1
1
数据传送指令(共28条)
机器码
助记符
功能
对标志影响
字节数
周期数
P
OV
AC
CY
E8~EF
MOVA,Rn
(Rn)→A
√
×
×
×
1
1
E5
MOVA,direct
(direct)→A
√
×
×
×
2
1
E6,E7
MOVA,@Ri
((Ri))→A
√
×
×
×
1
1
74
MOVA,#data
√
×
×
×
1
1
D6,D7
XCHDA,@Ri
(A)0--3← →((Ri))0--3
√
√
√
√
2
1
98~9F
SUBBA,Rn
(A)-(Rn)-Cy →A
√
√
√
√
1
1
95
SUBBA,direct
(A)-(direct)-Cy →A
√
√
√
√
2
1
96,97
SUBBA,@Ri
(A)-((Ri))-Cy →A
√
√
√
√
1
1
94
SUBBA,#data
(A)- data - Cy →A
√
√
√
√
2
1
04
data →A
√
×
×
×
2
1
F8~FF
MOVRn,A
(A)→(Rn)
×
×
×
×
1
1
A8--AF
MOVRn,direct
(direct)→Rn
×
×
×
×
2
2
78~7F
MOVRn,#data
data →Rn
×
×
×
×
2
1
F5
MOVdirect,A
(A)→direct
×
×
×
×
2
1
88~8F
MOVdirect,Rn
INCA
(A)+ 1 →A
√
×
×
×
1
1
08~0F
INCRn
(Rn)+ 1→Rn
×
×
×
×
1
1
05
INCdirect
(direct)+ 1 →direct
×
×
×
×
2
1
06,07
INC@Ri
((Ri))+ 1 →(Ri)
×
×
×
×
1
1
A3
INCDPTR
(DPTR)+ 1 →DPTR
×
×
×
×
1
2
14
DECA
(A)- 1 →A
(SP)+1→SP
(direct)→SP
×
×
×
×
2
2
D0
POPdirect
((direct))→direct (SP)-1→SP
×
×
×
×
2
2
C8~8F
XCHA,Rn
(A)← →(Rn)
√
×
×
×
1
1
C5
XCHA,direct
(A)← →(direct)
√
×
×
×
2
1
C6,C7
XCHA,@Ri
(A)← →((Ri))
((A)+(PC))→A
×
×
×
×
1
2
E2,E3
MOVX A,@Ri
((Ri)+P2) →A
√
×
×
×
1
2
E0
MOVX A,@DPTR
((DPTR)) →A
√
×
×
×
1
2
F2,F3
MOVX@Ri,A
(A)→(Ri)+(P2)
√
×
×
×
1
2
F0
MOV@DPTR,A
(A)→(DPTR)
×
×
×
×
1
2
C0
PUSHdirect
×
×
2
1
63
XRLdirect,#data
(direct)⊕data →direct
×
×
×
×
3
2
E4
CLRA
0 →A
√
×
×
×
1
1
F4
CPLA
/(A)→A
×
×
×
×
1
1
23
RLA
A循环左移一位
×
×
×
×
1
1
33
RLCAA带进位循环左移来自位×××
×
1
1
03
RRA
A循环右移一位
×
×
×
×
1
1
13
RRCA
A带进位循环右移一位
(A)∧data →A
√
×
×
×
2
1
52
ANLdirect,A
(direct)∧(A)→direct
×
×
×
×
2
1
53
ANLdirect,#data
(direct)∧data →direct