当前位置:文档之家› 单片机汇编语言指令表

单片机汇编语言指令表


data16→ DPTR A+DPTR→A A+PC→A
对标志位影响
OA C P
VC Y √X X X √X X X XXX X
XXX X
√X X X √X X X √X X X √X X X XXX X
XXX X
√X X X
XXX X
XXX X √X X √ XXX X √X X √ XXX X
√X X X √X X X √X X X √X X X XXX X XXX X XXX X XXX X XXX X XXX X XXX X XXX X XXX X XXX X XXX X XXX X √X X X √X X X
E6,E7 74
F8~FF A8~AF 78~7F
F5 88~8F
85 86,87
75 F6,F7 A6,A7 76,77
90 93 83
ORL A,@Ri ORL A,#data ORL direct,A
ORL direct,#data
XRL A,Rn XRL A,direct XRL A,@Ri XRL A,#data XRL direct,A
XRL direct,#data
CLR A
A∨( Ri )→A A∨data →A
(direct)∨A→(direct) (direct)∨ data →(direct)
A⊕Rn→A A⊕(direct)→A A⊕( Ri )→A
A⊕data →A
(direct)⊕A→(direct) (direct)⊕ data →(direct)
字周 节期 数数
12 12 12 12
X XXX22
X XXX22
√ XX X 11 √ XX X 21 √ XX X 11 √ XX X 11
X X X √1 1
X XX
21
X X X √1 1
X XX
21
X X X √1 1
X XX
21
X X X √2 2
X X X √2 2
X X X √2 2
字周 节期 数数 11 21 21
32
11 21 11 21 21
32
11
11
11 11 11 11 11
11 21 11 21 11 22 21 21 22 32 22 32 11 22 21 32 12 12
3
十六进制 代码
助记符
功能
E2,E3 E0
F2,F3 F0 C0
D0 C8~CF
C5 C6,C7 D6,D7
XXXX 3 2
48~4F ORL A,Rn 45 ORL A,direct
A∨Rn→A A∨(direct)→A
√X X X 1 1 √X X X 2 1
2
十六进制 代码
助记符
功能
46,47 44 42
43
68~6F 65
66,67 64 62
63
E4
F4
23 33 03 13 C4
E8~EF E5
A- data -CY→A √ √ √ √ 2 1
04 INC A
A+1→A
√X X X 1 1
08~0F INC Rn
Rn+1→ Rn
XXX X 1 1
05 INC direct
(direct)+1→(direct) X X X X 2 1
06,07 INC @Ri
( Ri )+1→( Ri ) X X X X 1 1
D5
DJNZ direct, rel
00
NOP
SP→(PC)8~15,SP-1→SP SP→(PC)0~7, SP-1→SP SP→(PC)8~15,SP-1→SP SP→(PC)0~7, SP-1→SP
中断返回 PC+2→PC addr11→( PC)10~0 addr16→PC
PC+2→PC,rel→PC
空操作,PC+1→PC
O P
V XX
XX
XX XX XX √X XX XX XX XX XX XX XX XX XX XX XX XX XX XX
A C 节期 C Y 数数 XX12
XX12
XX22 XX32 XX22 XX12 XX22 XX22 XX22 XX22 XX32 XX32 XX32 X √3 2 X √3 2 X √3 2 X √3 2 XX22 X √3 2 XX11
1
十六进制 代码
助记符
功能
对标志位影响 字 周 OA C 节期
PVC Y 数数
算术运算指令
28~2F ADD A,Rn
A+ Rn→A
√√√√ 1 1
25 ADD A,direct
A+(direct)→A
√√√√ 2 1
26,27 ADD A,@Ri
A+( Ri )→A
√√√√ 1 1
24 ADD A,#data
( Ri )→ (direct)
MOV direct ,#data MOV @Ri , A MOV @Ri ,direct
data → (direct) A→(Ri)
(direct)→(Ri)
MOV @Ri ,#data
data → (Ri)
MOV DPTR,#data16 MOVC A,@A+DPTR MOVC A,@A+PC
附录 5 MCS-51 指令表
MCS-51 指令中所用符号和含义 Rn——当前工作寄存器组的 8 个工作寄存器(n=0~7)。 Ri—— 可用于间接寻址的寄存器,只能是当前寄存器组中的 2 个寄存器 R0、R1(i=0,1)。 direct——内部 RAM 中的 8 位地址(包括内部 RAM 低 128 单元地址和专用寄存器单元地址)。 #data——8 位常数。 #data16——16 位常数。 addr16——16 位目的地址,只限于在 LCALL 和 LJMP 指令中使用。 addr11——11 位目的地址,只限于在 ACALL 和 AJMP 指令中使用。 rel——相对转移指令中的 8 位带符号偏移量。 DPTR——数据指针,16 位寄存器,可用作 16 位地址寻址。 SP——堆栈指针,用来保护有用数据。 bit——内部 RAM 或专用寄存器中的直接寻址位。 A——累加器。 B——专用寄存器,用于乘法和除法指令或暂存器。 C——进位标志或进位位,或布尔处理机中的累加器。 @——间接寻址寄存器的前缀标志,如@Ri,@DPTR。 /——位操作数的前缀,表示对位操作数取反,如/bit。 (×)——以×的内容为地址的单元中的内容,X 为表示指针的寄存器 Ri(i=0、1)、DPTR、 SP(Ri、DPTR、SP 的内容均为地址)或直接地址单元。如:为了区别地址单元与立即数如 30H 单元与立即数 30H,注释时,表述地址单元时用括号如(30H),立即数直接表示 30H。 $——表示当前指令的地址。 <=>——表示数据交换。 ←——箭头左边的内容被箭头右边的内容所代替。
addr11
(PC)0~7→(SP), SP+1→SP
(PC)8~15→(SP) addr11→( PC)10~0 PC+3→PC,SP+1→SP
addr16
(PC)0~7→(SP), SP+1→SP
(PC)8~15→(SP) addr16→PC
十六进
助记符
功能
对标志位影响
OAC P
VCY √XXX √XXX X XXX X XXX
0→A
CPL A
A →A
RL A
A 循环左移一位
RLC A RR A RRC A SWAP A
A 带进位位循环左移一位
A 循环右移一位
A 带进位位循环右移一位
A 半字节交换
数据传送指令
MOV A,Rn MOV A,direct MOV A,@Ri
Rn→A (direct)→A ( Ri )→A
MOV A,#data MOV Rn, A MOV Rn ,direct
20
JB bit,rel
30
JNB bit,rel
10
JBC bit,rel
B5
CJNE A, direct, rel
B4
CJNE A,# data, rel
B8~BF CJNE Rn, # data, rel
B6~B7 CJNE @ Ri, # data, rel
D8~DF
DJNZ Rn, rel
data →A A→Rn
(direct)→ Rn
MOV Rn ,#data
data → Rn
MOV direct , A MOV direct ,Rn
A→ (direct) direct→ Rn
MOV direct1 ,direct2 (direct2)→(direct1)
MOV direct ,@Ri
位操作指令
C
0→CY
bit
0→bit
C
1→CY
bit
1→bit
C
CY →CY
bit
bit →bit
C, bit
CY∧bit→CY
C, /bit C, bit
CY∧ bit →CY CY∨bit→CY
C, /bit
CY∨ bit →CY
C, bit
bit→CY
bit,C
CY→bit
控制转移指令
PC+2→PC,SP+1→SP
C3 C2 D3 D2 B3 B2 82 B0 72 A0 A2 92
*1
12
MOVX MOVX MOVX MOVX PUSH
相关主题