|
, B- m9 B( o! T5 y, t% i" V
) d, z; a! z; w* c数据传送类指令:/ l5 i9 q5 e) h- n/ N- _
% T" U$ w2 z' L' g8 E
1 MOV A,Rn 寄存器内容送入累加器 7 [4 N& B8 d1 |
9 z1 a( n; ?* e+ C+ n$ y# [, l. E) x* l2 MOV A,direct 直接地址单元中的数据送入累加器
. q9 c. H' ~) f( f6 f
" `0 Z. M: z" m+ J2 e3 MOV A,@Ri 间接RAM 中的数据送入累加器 5 c: p2 K3 {5 m
; Y- i5 X9 e$ Y2 g4 MOV A,#tata 立即数送入累加器
S" V; s6 q0 Z. n, X# ^0 ?! Y+ _4 z* T% [: |2 }
5 MOV Rn,A 累加器内容送入寄存器 @0 U! n) a2 ?: F! P/ I
$ D7 |' L# Y- c, K$ |- v6 MOV Rn,direct 直接地址单元中的数据送入寄存器 6 M5 V7 g5 g0 F( ^
* C8 {8 W0 E l) U! N8 v+ K2 }7 MOV Rn,#data 立即数送入寄存器
0 \/ K$ _& g2 P" K; \+ h( X$ w* J% n. d3 _) m7 O: F
8 MOV direct,A 累加器内容送入直接地址单元
+ T5 P! d2 u& s5 _3 B( \1 |. G4 m' F" |, ^3 O: p
9 MOV direct,Rn 寄存器内容送入直接地址单元 & o" u5 m$ w/ E& f, J% A
( d! c! {( B8 j0 a0 O5 K7 ?: [
10 MOV direct,direct 直接地址单元中的数据送入另一个直接地址单元 ! i, i' f/ w. a. w" o
3 v- Z6 o$ o& C0 p- v! }7 N11 MOV direct,@Ri 间接RAM 中的数据送入直接地址单元 , C) ~& h ?, W% r" D& j! n
9 l# v% c/ _0 p' F& r: M6 a) L- S
12 MOV direct,#data 立即数送入直接地址单元
9 t6 [) e. u1 ?
! F* x( |/ x' ?5 V13 MOV @Ri,A 累加器内容送间接RAM 单元
. B0 J3 s$ P/ d/ I( f# l9 t9 |% I
9 l) g3 f; t: D. B* C14 MOV @Ri,direct 直接地址单元数据送入间接RAM 单元
7 w" X3 x+ M5 ?$ \. @2 E2 b, n( J0 X! R3 z
15 MOV @RI,#data 立即数送入间接RAM 单元 ( \. i1 c) R) z# X6 U9 N
- Y1 `+ ^* b" W3 X; N$ k4 o16 MOV DRTR,#dat16 16 位立即数送入地址寄存器
2 o2 g& h- a/ M: |) _# M) \4 i4 |0 N/ {+ q0 K0 ^3 b- a% r
17 MOVC A,@A DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器 / t) g; ~4 l- c# {$ l% ]" A+ k% Q
- y9 X! u2 Z" n% s2 d) k
18 MOVC A,@A PC 以PC 为基地址变址寻址单元中的数据送入累加器
! I2 x4 N& x. ~* t L* D# m9 J' i) P" _" L, Q4 H7 O" ^2 |* u
19 MOVX A,@Ri 外部RAM(8 位地址)送入累加器 $ ]1 j& @6 Y% \8 t6 k
- _, I! R f5 ^, r: x20 MOVX A,@DPTR 外部RAM(16 位地址)送入累加器
+ Z, r3 Q5 j( ?4 v+ d" u$ n: ?- { E
21 MOVX @Ri,A 累计器送外部RAM(8 位地址)
$ }6 L' j7 K) A, |, d9 g# O! I
0 L: o" y& S) k0 G2 ^0 D22 MOVX @DPTR,A 累计器送外部RAM(16 位地址) 4 @8 m) v, [* p. }+ g/ c
: i( s; {( f/ v$ K5 A6 @3 @23 PUSH direct 直接地址单元中的数据压入堆栈 0 n, k6 J/ `! I# D$ g; _4 C6 R
! g! D" ?/ y% t. e& `6 W7 W: R24 POP direct 弹栈送直接地址单元 5 e0 t$ u! a7 E( z7 o
! A! b# a" a$ q25 XCH A,Rn 寄存器与累加器交换
- V8 _4 d3 J2 p$ v" R1 k6 a6 {4 G- f6 R3 H t2 b
26 XCH A,direct 直接地址单元与累加器交换 / q$ p) P/ Z0 _- v
# z; N& ?9 n- |4 h3 K27 XCH A,@Ri 间接RAM 与累加器交换 s, k& v- U! R* y1 i* S" K8 l
! Y$ ~* e! C- Y! O* [& S, N
28 XCHD A,@Ri 间接RAM 的低半字节与累加器交换
1 T4 I1 S' Y: n- P& s2 T" @; h. x' R7 S) f2 j
" S) O7 f0 d4 ]# y# O& d/ l
算术操作类指令:
! b& p, G- e- s, {8 F. A, V1 O: G+ Z
' Q* ^3 y) k: F+ _1 ADD A,Rn 寄存器内容加到累加器 1 [1 H$ O. ^! K' |5 Z
: }5 z; O& t1 {5 R6 L0 |2 f& x2 ADD A,direct 直接地址单元的内容加到累加器
" x# @# B5 X: e8 r4 R6 X) Z! y/ j# E+ K5 G0 |$ D
3 ADD A,@Ri 间接ROM 的内容加到累加器
, N9 T V! F6 g( _2 L3 c* f4 A( n$ t4 l0 @. G9 ^
4 ADD A,#data 立即数加到累加器 $ I) M6 j! ^, `1 x/ c6 f
; E7 F1 z* K) b0 y: M# f
5 ADDC A,Rn 寄存器内容带进位加到累加器
8 j* i1 \/ Y; W% l# @( ?) ~
% r0 ]' Y P9 K- y6 k6 ADDC A,direct 直接地址单元的内容带进位加到累加器 ' u" y1 u2 f# b
% _6 O/ O+ e1 V. e( j
7 ADDC A,@Ri 间接ROM 的内容带进位加到累加器 ' H( ^4 r) x# K# n7 A& ?4 H
+ x, c9 M- ~$ ]% D8 ADDC A,#data 立即数带进位加到累加器
" I: X+ P: ]- ?, \2 [; G9 q8 O% `+ e# N0 k' o" `, C: Z# A, w5 d
9 SUBB A,Rn 累加器带借位减寄存器内容 ! o- ]' h$ Y5 D
' |7 E' W* B* F2 b. X( @
10 SUBB A,direct 累加器带借位减直接地址单元的内容
- j& o6 v3 r: ~( ?0 _/ ]6 I
4 j$ r3 @) ~' s% h! d$ [# p. N11 SUBB A,@Ri 累加器带借位减间接RAM 中的内容
7 h" P2 m) A& b" D+ f% Q7 K, H& W/ w$ Y$ I# ]( r
12 SUBB A,#data 累加器带借位减立即数
6 O6 e) b: ^! [7 ?4 C! K i+ h# Y
3 _- t* S# Q& t7 H. l13 INC A 累加器加1 ' h( a P6 w' i5 s
8 z* Q- R c6 y4 ^2 e; X" O
14 INC Rn 寄存器加1 7 v, G9 e' ~2 t. x
9 a: m, w6 z! g0 f W* K+ _/ g15 INC direct 直接地址单元加1 ; R1 W6 V, C" v0 H% ]% d2 q* b
& u- c- Z i7 u$ @0 k16 INC @Ri 间接RAM 单元加1 d+ t: y( e+ C6 C
, n: {% R) @# K/ J6 j R4 m' C
17 DEC A 累加器减1 & F& Y+ ], o- `1 {" L# v
& Q# ~4 D6 N) B5 a; V1 W& @18 DEC Rn 寄存器减1 1 12
$ \- U5 e" w! J8 i
9 r. w2 W0 x3 L" ^- _19 DEC direct 直接地址单元减1
" b7 d7 `) s. w0 C1 j' f; W: F4 P y" f$ [
20 DEC @Rj 间接RAM 单元减 1
! a9 Y! X, F( \- y) o" i
1 j* U0 E0 q$ Z* ^! p21 INC DPTR 地址寄存器DPTR 加 1 ! ?, Z) G) A. y8 A! ^
- P) x& @8 ~) f Y/ t
22 MUL AB A 乘以B,结果放在A
6 f" L# b- H4 `/ R4 m: M% y. n: k6 z5 J; d. C5 J9 X
23 DIV AB A 除以B,结果放在A
7 r1 l. s4 N+ x+ j: X5 n; Y. v/ G7 ?; r! p5 z
24 DA A 累加器十进制调整 1 a* X" q8 q c3 z& b7 a
& X, \! _# N( r" L& |5 ?- ~* G
: \4 Y" J( t6 b; z' c布尔变量操作类指令: & Z7 J, @+ M. Q. b
) K& `4 U1 V) f" ?7 `. Y" u. U
1 CLR C 清进位位
- |! Q! l0 o: A/ q5 \$ H
# J3 x8 P; X( x- y% m' |# k2 CLR bit 清直接地址位
P1 w/ _! h, ~) o# \
( L- ~$ ?7 m8 ^% I3 SETB C 置进位位 . F* p- o- g, x
$ G- T. G, C! i1 |
4 SETB bit 置直接地址位
" R8 m# J2 ~0 l- ~# y0 a, d. K' e6 B
5 CPL C 进位位求反
$ k7 h5 i0 I4 r6 w1 {. z/ h" k9 N4 z. x6 b* l: _2 {
6 CPL bit 直接地址位求反
# M8 D2 q7 U( z; u, P. Q1 E2 o; G( h: x9 {9 }; j9 d
7 ANL C,bit 进位位和直接地址位相“与” ; `; s6 p% }- p. q( F( s
& l/ Z7 J" W' r, P8 ANL C,bit 进位位和直接地址位的反码相“与”
, o# M5 u/ [% D- Y) B8 g! U$ v% S
; a( I* Z6 Q8 H n9 ORL C,bit 进位位和直接地址位相“或”
( c/ @" B% @0 u$ s' C' p- h0 C0 j4 p
10 ORL C,bit 进位位和直接地址位的反码相“或” ' h, \% T& X- Q4 R+ l
1 U% M/ l" A( U# Q
11 MOV C,bit 直接地址位送入进位位
0 v' S- z. S; V
2 S3 Y5 v# T5 B% H4 x' k0 t' K, {12 MOV bit,C 进位位送入直接地址位 ) W+ `/ G7 D; c, M* e" ~, M# d
& O" l- G% t5 S: V) T* ]5 f
13 JC rel 进位位为1 则转移 6 h( \. W8 c! s4 p E9 K
+ Q+ d0 ] a5 U; j4 m+ ]% V
14 JNC rel 进位位为0 则转移
& Z! d, i+ k2 l$ F3 l
4 s6 f5 W9 c2 q15 JB bit,rel 直接地址位为1 则转移 ' y6 D& z* z9 g I
4 e2 l/ ? }9 W' x
16 JNB bit,rel 直接地址位为0 则转移 ( n7 q' {' y$ L- m. z
" C' M* _: a+ Z3 j+ Y0 Y: q( O l
17 JBC bit,rel 直接地址位为1 则转移,该位清零
9 S6 {, t" F5 R0 {! R0 m: W. ~: A+ a" t3 C, t" [
; x/ a# A( {) O& Q( u/ ~逻辑操作数指令:
Q2 c, V: _$ @5 |$ I2 w( d* V0 r) f4 w( s" B
1 ANL A,Rn 累加器与寄存器相“与” 8 {+ e4 \* t9 E6 V& L+ V% U
4 j! n5 P" X# a: C q1 }
2 ANL A,direct 累加器与直接地址单元相“与”
5 T5 E' A8 ~+ V3 F( C7 P9 F9 A9 |1 e* R5 u: M
3 ANL A,@Ri 累加器与间接RAM 单元相“与”
5 ^) Q1 A( J+ J4 E' S$ S. A6 |5 a) K
) z( d. ?" |# N4 X4 ANL A,#data 累加器与立即数相“与”
( t' F T+ o, {# s3 Q( ?; E! W; k4 U6 G+ F8 B7 p Y
5 ANL direct,A 直接地址单元与累加器相“与” # L# D4 C, Z( p; u2 }
# ]! i: l2 x- x l
6 ANL direct,#data 直接地址单元与立即数相“与”
, A/ A `. u8 x: v! F. K4 `7 s1 N' [
7 ORL A,Rn 累加器与寄存器相“或”
1 ?+ o9 t# S' c& H* }! `2 P# O1 d2 z$ ^. V( D4 \9 h/ u
8 ORL A,direct 累加器与直接地址单元相“或”
4 p( F! r7 M. j3 g+ e- D
8 y# I7 ^) B7 C; L @9 ORL A,@Ri 累加器与间接RAM 单元单元相“或” # g3 M" f) r1 f. Z9 m1 f
4 f% y5 D& m* t. \$ C) h10 ORL A,#data 累加器与立即数相“或” " M1 V6 Y" ]/ |$ H! ^
Z2 J4 @4 H2 c, b9 l% F
11 ORL direct,A 直接地址单元与累加器相“或”
) K3 ?/ G( M# D C+ k% r$ F [5 W* k8 s
12 ORL direct,#data 直接地址单元与立即数相“或”
( Y' m- w5 X8 a6 f2 t* l2 k3 r) T0 B" h
13 XRL A,Rn 累加器与寄存器相“异或” 5 i4 d9 h# b8 m4 P' z: G9 c% v
7 }1 a- ]- T8 l' X
14 XRL A,direct 累加器与直接地址单元相“异或” & E8 H( M* B: t- T' x) u
1 N& w- k3 Y9 h0 ?* u3 h4 _
15 XRL A,@Ri 累加器与间接RAM 单元单元相“异或” 3 U* e. L% ^7 [
: u1 J, ]8 [/ e; ~, f& T
16 XRL A,#data 累加器与立即数相“异或” 4 |& @- v5 I4 a+ m! |* b
5 u2 B1 H; X+ F* t2 I5 a; K
17 XRL direct,A 直接地址单元与累加器相“异或” ) o- U- d Z8 N# ~& p" B
4 n6 a( O, }6 t! @3 t
18 XRL direct,#data 直接地址单元与立即数相“异或”
1 L, C; z4 c& ?1 U, Z5 M" w$ _$ ~; E( }
19 CLR A 累加器清“0”
* M, M3 u) [' b y1 z; I
. r7 @$ t7 ~9 I/ c7 M6 `20 CPL A 累加器求反
9 h# ~5 C) l1 k8 A
) j5 C5 l" y. [. S/ U- ]21 RL A 累加器循环左移
9 f! \, A' d/ M4 [ l
7 @$ F# F! ]" P d9 i) y2 E22 RLC A 累加器带进位位循环左移 8 J6 y$ t7 O" R! I: @1 `
_4 Z( K5 H v: y+ d23 RR A 累加器循环右移
4 D; y+ g9 [1 L0 S9 w4 w& |" O" F* x- B. o8 @9 b- i
24 RRC A 累加器带进位位循环右移 ) H: r ~$ L3 c6 v0 v: K" ?: P
% N5 d3 m; B, w4 U25 SWAP A 累加器半字节交换 * d" a* h) u" E0 F: K& O
, L+ @: i9 W$ y
3 q4 d2 G4 G$ o5 ?/ I控制转移类指令:
: o% o" m; O/ B' d2 r4 [
0 ?9 `7 G0 e1 y+ e3 P# Y. ^1 ACALL addr11 绝对(短)调用子程序
/ A% \) J0 T0 D4 g( y( E: b: N' c% y5 B8 {5 r, V1 j! k; O6 t# Y! l
2 LCALL addr16 长调用子程序
( x4 w% p) l) b- M0 v
; W5 M" P4 g; S% U6 Z" W; ^( Q3 RET 子程序返回 . Q! [) I4 i$ T2 F+ R7 O u
t+ K+ e# v$ I8 _7 N
4 RETI 中数返回 ( I( }5 w3 E4 @
* @% x [% R) t, J7 Y6 S# P$ a# |5 AJMP addr11 绝对(短)转移
$ G/ p6 A. b3 G) j4 v0 C) S# ?% I8 U3 X' @& p8 x! E
6 LJMP addr16 长转移
! z W+ R7 p- e2 g
0 M) v5 X. o- e7 ]# [ r5 P7 SJMP rel 相对转移 3 \: T9 d+ [$ |) m9 f
4 ]. H/ [* D0 ~1 p& u8 a8 JMP @A DPTR 相对于DPTR 的间接转移
/ m* C' m9 L+ N. M& j% B3 ?4 v+ m+ I& i5 b
9 JZ rel 累加器为零转移+ i1 _8 i" ^" B5 x3 j! E6 Y
! o7 h# f9 l9 z2 }# r
9* JNZ rel 累加器非零转移
! r; j% l3 ~0 p; s& M* J# W3 ~1 W* p% S Z* |+ @
10 CJNE rel 累加器非零转移 9 u& X9 }' W' |1 K
7 s' x1 v3 w7 j, r11 CJNE A,direct,rel 累加器与直接地址单元比较,不相等则转移
$ g9 O! o; E, z
, i" n! p' \2 F' J: [2 y8 t! P8 A12 CJNE A,#data,rel 累加器与立即数比较,不相等则转移
3 X. H' O% v; z5 [+ {
- x( c; ?2 ?2 u& Q" X5 |13 CJNE Rn,#data,rel 寄存器与立即数比较,不相等则转移 % ~: x. K9 W* N z* E% t$ C, Q
6 H9 ^* p' r( r14 CJNE @Ri,#data,rel 间接RAM 单元与立即数比较,不相等则转移
: }$ |# A& z& J0 b! v5 G
% o" B& O9 l3 J% a: E15 DJNZ Rn,rel 寄存器减1,非零转移 * d4 @3 J+ e, Z; p7 i! v/ d/ I. v
+ J1 r& c3 g- D+ T9 _: E; e# l3 F16 DJNZ direct,rel 直接地址单元减1,非零转移
( i C: I/ Q7 \2 A
2 i8 Y- x8 s3 }. z0 M17 NOP 空操作4 S* i! C- G1 v; K Z! k
1 o8 l" T0 Z/ C7 Q( f
|
“来自电巢APP”
|