找回密码
 注册
关于网站域名变更的通知
查看: 251|回复: 3
打印 上一主题 下一主题

单片机教程-附录:51单片机指令表

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-8-17 10:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
此表主要是为了方便大家查阅每条指令的作用,写法以及字节数和周期数,建议大家保存为书签。
, z/ }' L: t% U# u
助记符- H- l1 ~9 R1 h+ |
指令说明4 n# V3 A6 b1 |( ?2 V1 x
字节数
2 ~6 |! l) e2 K) G# H. t9 e* u
周期数
# J( @" r$ v& e' l' ^, ~
(数据传递类指令)
MOV% ~. R- \+ J7 ]- {
A,Rn1 V1 c/ |% p* c, b$ C+ p5 \7 L
寄存器传送到累加器- \+ a9 K2 u% ?- o7 @
10 u5 |3 K: Y: _+ F7 ?1 n. W, m8 I
1
  @% M6 L- T0 e# h0 e" R
MOV
2 M" N# K$ g/ r" l
A,direct+ F* A. Q0 e" B* l" K) A
直接地址传送到累加器' S5 U! D. R1 `# k3 J+ U9 K
2' k, ^+ j/ p0 b0 C9 W3 W. h
13 `, H" _7 n. |/ o1 A4 P
MOV! ^9 G5 d1 }) L' D0 d+ t3 L" V3 [
A,@Ri  T" u# B9 u/ z: }
累加器传送到外部RAM(8 地址)
  T9 O1 R; G- T& K9 o& k
11 K  l8 ~4 I1 u: }0 Y
1
' [9 [5 n; W' u8 N2 h5 j
MOV
" B% e9 M$ U: |- `1 U9 X
A,#data
$ r! A9 o) Y  h/ b  y6 z# [
立即数传送到累加器' ]* ?4 i' {) S2 E* M1 Z
2
( p. o& i; Z/ o8 m
1, n. V; ^: o* ?- t: [
MOV
! q. T" F) U* s$ }
Rn,A- ]$ B* V( U+ [( e
累加器传送到寄存器3 ]) \' o% f4 n! u
1# P7 o# p$ r) `, E0 D) @
1
! P5 f9 y( g3 S
MOV: F) \$ v; j# F/ P; I
Rn,direct9 K0 {. M, Q4 R; Z
直接地址传送到寄存器, z  }4 B- P, O* \
2
) _: ?1 s9 h9 Q$ K' q3 c
2) ^% a: b5 s6 d
MOV
" r6 \/ T0 L$ g, L' c$ o- Q0 _7 G
Rn,#data
, c. D: _/ h3 u# o7 R7 @1 E7 g) E3 Z
累加器传送到直接地址
& E+ p. {9 {# A/ ~
2# c0 Z  m- U# C4 M
1
8 e* S5 }# {% u9 {! E0 Y
MOV
: K3 P+ {- C+ W6 c% z
direct,Rn1 u! w/ G5 g' l: ?5 P: o0 v
寄存器传送到直接地址% p( K4 l1 T3 J5 F, q
2- O; Y( s- n, c+ M. @
1: P& W* U0 o. D- [
MOV) l# v6 }6 g& L6 y) f% ~1 L* J
direct,direct: @6 O* Z+ K& ^1 |8 L" T
直接地址传送到直接地址
$ p3 Y, d0 v/ Q
3
6 e9 j4 O' r0 A" |' ]  \! \
2
/ j0 J! Y1 _8 m# W3 O
MOV
9 |& A" l5 V5 i! B1 T: \
direct,A6 I8 w# D- u$ _6 s/ ~0 i. I
累加器传送到直接地址1 A& ~% e( L5 t6 [
2
( C0 {0 X. z" C2 {! J
1
7 n  ?" }9 r# H& V: p3 t/ v  p
MOV
/ y' k2 u: n, M* c
direct,@Ri5 b6 }% U) Z9 ?
间接RAM 传送到直接地址- a9 L& I  {5 V: ?
2
3 [* h$ Y3 x9 P- W; }. j6 v  K
2. Y7 h' A& g, h( x- p
MOV9 ~7 K) O# E- k0 C; L
direct,#data
9 y+ {- T- g  _) a" ~9 S
立即数传送到直接地址
. t4 |' K; g: o4 j% Y6 x
3
$ u8 g: S9 z  s. o1 J& E2 O9 p3 a+ L% v
2/ o8 K4 d' L0 [) e+ e3 ?/ k
MOV
) D( k( O5 l% P2 ^* X
@Ri,A
  h. L: v% \. ~' X
直接地址传送到直接地址
$ H: _$ H/ e" r# F& I
1
. e, D9 Z! M1 |. m! @( O% _/ W& v
21 L0 ?$ q. W. ~/ y7 W
MOV
2 i, ]! x* b5 O; w4 a
@Ri,direct2 Y& U- K( }0 |* Z
直接地址传送到间接RAM4 i" J' z9 r3 t7 M3 y" }5 H% W
24 p* {8 }" z6 g# ?3 q
1% d9 p$ L6 x3 t/ n2 Y& j$ _
MOV
/ d8 L) i" `4 F0 G+ F
@Ri,#data
- j' s% Q8 C5 f/ |
立即数传送到间接RAM" a5 y! E9 b; J
2
. `1 Z. p. C, y! P* ?3 |* H+ w
2* d" a. i! o. U' x! Y
MOV" j- V  d* u* W. p* Q
DPTR,#data16  f9 c' ~) g$ p
16 位常数加载到数据指针0 O- V7 |  j* L5 }: {, i! r
36 q- O- n5 ^! ^( N7 \
1
( z$ J' [9 {6 |2 y8 g, ?0 l4 K; {0 N
MOVC3 N% ?6 l. D3 a; y* C
A,@A+DPTR
$ P- Y* V; A! q) N
代码字节传送到累加器
8 Q/ M# Q: M3 c
1
4 G( b% {. z8 f9 A  I% ?* k
2
4 R7 X0 K5 G6 S$ G' T* P7 S
MOVC
4 e3 X( G8 W$ K+ Z( g
A,@A+PC
6 Z) X+ W" m& T. x
代码字节传送到累加器
# t3 [' B/ z4 o- ]7 Z
1
/ n) H3 N+ P% w% a. j- ^8 W1 B
2, h& G0 L8 O/ x$ ?3 R* z# c
MOVX
; u5 [  E+ f/ r% v$ R' L; I5 i
A,@Ri
& [. f) j1 ^+ s6 P
外部RAM(8 地址)传送到累加器  o3 U% g9 A7 Z5 R3 h* ]
1
+ n% _* c# w  T" J; b+ q4 P; o
2
! w2 V: i# A% l* U" ^
MOVX
2 f5 ], j* `* g
A,@DPTR: U. c# ?/ r- B6 ?  _% q5 N
外部RAM(16 地址)传送到累加器
. F) A) B; q+ ~! P
1
$ V( K& @6 I( @, p
2  U  }/ d" g! p: q7 y2 H1 C
MOVX
$ e% H) S- c: \+ I3 G
@Ri,A
9 M9 _# Q! z3 A# Q. W) p6 `9 y6 p
累加器传送到外部RAM(8 地址)
7 J$ M6 @% k% S7 b: M2 t8 ?  q
1
, z+ }# P# W' p* I
2
/ \2 y. `3 ], G9 g/ f4 P/ X
MOVX
- |& p: j7 g: S1 ]. X
@DPTR,A
' G- w: o* y9 X% F5 p
累加器传送到外部RAM(16 地址)4 K- B7 I1 Z9 `
1  A% t" t. m( J' }8 j
2
0 U) y- Z, }* W+ d& k7 n
PUSH
0 n2 a+ Z6 C6 V& e9 z
direct7 q+ m4 ~8 W$ ^, }3 l, h
直接地址压入堆栈" z) }: z1 Z" _
2. e! f- O4 K+ O6 m+ {
28 v' E# s% Q5 ]8 C; V; ]
POP" Q, A; _0 D. j0 y
direct/ _7 B* J6 @. b7 y2 h
直接地址弹出堆栈) q8 c' ?8 u" s! Y! M0 F
2
$ s3 X7 }: m8 M" L! J8 q
2
& l8 H( u6 h% ]  L! u
XCH
0 A& s2 L, u/ j" T9 p6 f
A,Rn
. M  q: X. R5 P8 \8 ~6 v% p' Y
寄存器和累加器交换- g7 i4 g9 `" w! q3 l& P' L! N) s, i
17 y. c5 z3 g7 Z8 _( _9 \5 O. c& ^
1% u' t7 V8 |' y1 @/ `1 [
XCH8 U# Y* Y2 R9 W" c  G3 W
A, direct9 A# I6 H9 O- I' ~: Z2 e
直接地址和累加器交换6 v4 e. i5 G- l: ]- `! ~+ b9 p
2& S) k6 X4 M. b3 J- X3 ]
1$ i; L0 Z8 u" |& g: `
XCH. E* x! V$ F  t( L" m7 A# @
A, @Ri9 t! a3 E) w6 y& _
间接RAM 和累加器交换
% J- V  u0 G% G  I& X
17 D3 _  S2 _9 V: }- P4 p' f
1
* ~/ U6 Y# J% s8 Y& A2 q9 f1 m4 A
XCHD# ?* s9 _: n9 v) {  f
A, @Ri
0 a( h* @6 v& r6 {* |' v- J
间接RAM 和累加器交换低4 位字节
# f/ q6 N0 R& Q. Z2 _
1+ @* O5 I+ S* N4 L% C" g: i7 j; w
1
$ V8 j! ^9 l: e- h) W
(算术运算类指令)
INC7 F' S! y& G3 D( [6 q7 f
A
& ^9 p5 Y9 v$ U) s( F
累加器加1
" m" `4 p3 @/ |" j3 }: M$ u
1
& S  [- Z/ N2 w
1
( ?% m9 _: o0 A9 c: G$ D
INC; R2 Q5 N( f3 f# V" Z
Rn
6 x  x. C! g* P2 F
寄存器加1
8 k" s8 @) i2 t* a7 s5 y
1) i$ L. h" L1 p! l) I4 N
1  E! Z1 M# k; }4 Q  E$ c/ @6 E( x: C
INC
. j% d# L- t0 L
direct- U7 r9 r( s- J- Q( ]) E
直接地址加1
5 |: g: j, R, `! U6 n) O9 ]
2. U" V/ U0 l/ R+ o/ h9 N/ |
1
& J# O1 O( u. B
INC9 h) I1 y9 t! Y5 B
@Ri" }# E3 C( c# ~; i5 h1 N
间接RAM 加11 s- X8 K& k3 ]8 v
1
' }; ?' Q! F6 a  |5 F" u  x$ P
17 |2 y% ]7 }, c2 _
INC3 i" @/ j! G! p9 S; Y' ?8 O3 k( S! T
DPTR
3 g! p4 L; G' \& W
数据指针加1
; ^6 D2 [+ |. F/ b$ [! O- u
1* f$ k8 W6 C2 \) W) C9 `
2
, K9 E$ c- {& @
DEC
% T7 V/ w4 J9 @& w: ?
A2 W7 v$ F, g& @8 t( }# L( |
累加器减19 r2 u9 m2 ]& Q; q% R- `
1
4 _6 r; U4 X0 v- k( k) [9 r% y
1) X/ I9 R# d& A" t! }
DEC
  Y+ `  g2 }" t$ T% U
Rn  G8 r6 j* R/ E) l; P; w+ B
寄存器减1* J+ C( e2 H, q! c* |
1
1 j9 R/ R4 Y6 \2 D" I7 u
1. A- H: O2 E7 _8 |
DEC
, v" S& d' u6 d. v0 D) X, b
direct
- d" y4 G, c+ \. E( J+ b% h0 y
直接地址减1
7 e1 v' E- j6 f& w, s( ?
2. d; R/ B, D, ]( s( u
23 e8 k6 ~: R' E6 M( W
DEC6 c) y8 P% s7 R, ~$ Q! ^1 V# Q7 A
@Ri# }: Z  w9 i2 w9 f/ f* Y. k/ l
间接RAM 减1
0 P6 l$ V7 d% j% X" y' C
1  ^5 |/ v% U! ^; Q
1
1 g( R! `% l  w( \; h1 A
MUL
1 N. k4 C% l( t" g/ d( J
AB8 q9 S2 Y) i2 S( Y- W- s
累加器和B 寄存器相乘5 q4 f5 r2 y: N, r" J$ P
19 w4 [$ {, v5 \5 q$ \" o+ R$ _
4
8 d) {& a( N7 k  K% L" H3 m  M: ]: |
DIV
' K) k/ Y0 P8 p: g" X4 P- K  _
AB+ Y: ^$ e8 z3 b2 v7 f
累加器除以B 寄存器
6 R) Y- N# c* o% S- r
1' J6 t) U- c/ ~. v! K2 _
4
" k. j3 Z$ a2 z2 {: m2 u6 i6 Q+ _
DA
# P( x4 T/ i+ B( `
A2 A0 T$ _- @/ g
累加器十进制调整8 h# {* |$ h' A1 n3 B! n/ o
1
" X. A& @+ d4 Y; I, O7 q- s
1
$ l- T: ]. z1 a# ]4 ^; g9 A
ADD. ]2 [5 }/ t+ q: M
A,Rn# O% d7 \+ G1 \1 \6 d8 d! K" F
寄存器与累加器求和
$ Y  m5 V9 x' b' r% j7 k, O
1! j1 Y9 s! `' A4 J& w! z; P/ w6 S
1
- L5 _0 G4 B! U% W" G7 s) f
ADD
; L; Q0 D: b& M9 ^. @
A,direct
7 n! V3 M1 J# j1 n
直接地址与累加器求和
& e7 C4 `( O+ B' b9 M9 ^! a1 q3 G. T* J+ H
2( }6 C/ Y8 B1 N
1; N/ Q5 B: L9 k5 x) b+ E7 r
ADD
( \* h  p% @& K0 `" _
A,@Ri. p' O6 U& [0 x! \
间接RAM 与累加器求和
  h1 j. u( e0 k( L
1
1 ~( S1 h( j9 z: ?6 c
1
% z# h7 e7 j7 a0 [
ADD- Y0 U; s/ H, A: O' R
A,#data9 q: S+ ~5 Z! U% n3 h+ g7 d, G! n
立即数与累加器求和6 o1 ^; P. D7 F# Y- E( B
2( u7 q( K  ~: p/ G/ d" r; q( L. z
1
/ N/ B6 T# v2 i" f% O& M; r
ADDC
* f6 U; r' P, W9 p. r% S, v
A,Rn6 @* ]& d1 \! E# D+ k4 Q# }) Z0 {
寄存器与累加器求和(带进位)% x) ^* v5 F% ^' l
1+ |. t3 B; E% R  R; b
1
3 q( F: T9 w9 I) G0 F8 X  f
ADDC& g0 k6 R! t% c" j' ]
A,direct
1 Z9 a  l# q' }+ w1 Z$ C' A
直接地址与累加器求和(带进位)8 h9 P3 |3 d" K3 m
2, y4 q$ w6 K/ _: m  |  T
19 y/ \0 [; U5 l5 g
ADDC
% J9 ~4 T. `: L/ x/ `% {0 Q9 B
A,@Ri
7 \9 }% [' M8 u+ O) I" Q
间接RAM 与累加器求和(带进位)  ?; M1 |) d' g
1* c! e1 y/ ?* J9 \) x) H' R
1
$ W7 Y4 }. w$ E: e* R* @8 n
ADDC
: M/ a* r& {8 G7 M0 |
A,#data# G6 }  h; a/ z4 C2 l: K
立即数与累加器求和(带进位)8 E, l7 N# E  N7 x, v. ~
21 d* ~0 [3 T# z/ N
1; Y- l) {! D, a5 ^2 B
SUBB
& v2 A1 T* V! H! e
A,Rn! v6 O0 c* o4 ~9 t
累加器减去寄存器(带借位)# V& h# k$ ^. d; u0 w5 t
1
- K/ A, k; Q* E: s6 \: i1 Y! T+ E- y
1
8 w2 }0 w$ v1 l. q& _0 Y
SUBB+ D4 ^% f, Q; q" O5 u# B
A,direct
6 x0 o) V) s+ O" A
累加器减去直接地址(带借位)* n. P; [; u6 O- b5 b- L" w
2
1 p5 ~5 g/ R, N5 L1 e) h% |- i
1( J6 d2 j  F1 v4 V, _$ j& h9 V
SUBB
9 E2 o' a5 [0 T' G
A,@Ri9 A, U; n! ]& @9 a% b. j
累加器减去间接RAM(带借位)
, h$ j7 r* l; h) W3 v; l
1
' l: b& z8 M* H' t& F# q+ |
1* U# c7 h6 W9 {0 w' L  u3 [
SUBB* A1 {+ q9 o7 T# s
A,#data
0 @; B+ X; d* r3 X
累加器减去立即数(带借位)
0 Y8 J1 H( S' s0 q) `5 W( W, ?$ w
2
* m: F( f- `( ^1 m7 J8 [5 ]
1
$ w) q3 t' g; R' W: t. i
(逻辑运算类指令)
ANL
7 B! i9 z+ D- u1 d1 a0 x# l! |
A,Rn
& ~- P, ^* X% K# @& O1 b: G7 q2 X# ]
寄存器“与”到累加器
1 l& w% N( ]2 _( n) T
1
) O3 }% {& y$ B
1
4 {% G9 y) V6 z
ANL7 j6 i" N& c, y; g. j* U
A,direct$ T" s8 o: X2 l. \
直接地址“与”到累加器' j1 ^( i  {; ^0 B0 c# w
2( ?9 N7 J: a7 _6 }8 f' \6 J
1
, F; J) z" }6 _/ r
ANL0 d; @+ p1 J: ]3 R. L4 n" D3 a9 Z
A,@Ri
1 L3 v4 C3 {$ V% \0 c
间接RAM“与”到累加器
- Z" H7 s  P% T" ?
13 M+ W. c: ?" p/ c0 @
1# [7 ^. R- N9 N4 O: F' O% e
ANL
$ A" d; S* J# a
A,#data
1 M, j, I' a8 c
立即数“与”到累加器, p  o5 d2 P3 l0 g" \  _/ k+ U
2
% t' ]1 T% w2 Q  g
1
" `0 {" J6 @4 c- G; V0 f
ANL( F; l& G4 V2 P+ B
direct,A, M7 Z- b/ [' r! @8 l
累加器“与”到直接地址
- C0 D( I, s3 \
2
6 v. o6 S% b( f% l
1
- S1 n1 M' i, t5 z9 \
ANL5 y+ `0 H& T  j7 P
direct, #data* ?, t( ?4 V, _8 d8 H+ B
立即数“与”到直接地址
4 P0 {  {2 S* ]7 g% D1 k
3( h7 P+ n  z' r/ ~3 z0 e: p
22 s4 U/ M/ W  K7 Y3 k+ X: C$ l
ORL7 R9 C/ v9 K3 n! F, {3 l3 ^7 {- J
A,Rn
2 c$ X+ R# q& B3 K3 ~) s  y
寄存器“或”到累加器7 U- d6 H/ x1 L3 \8 o
1
3 H4 H# c) }4 ^9 d7 T2 P" L
2* {) b% b3 s0 j0 i: o
ORL
0 e  c* z0 Z# H! o- U
A,direct3 R* h* M9 X5 g2 g6 X5 V. k: {, m
直接地址“或”到累加器
5 [+ L- `! J$ N. K" X; ?+ c2 p0 c$ {3 M
2
8 e+ g1 g0 w% d2 d$ Q; t3 [  N# R
1
/ t! Y8 t. ?; z
ORL
6 _4 q8 t! y: h0 t- Y
A,@Ri9 m6 }) o: W1 O7 e' \$ C$ Z
间接RAM“或”到累加器3 G$ O" F: T8 J. V2 |
1: M6 Y; s! u" e' B: P
1$ c1 H6 ^6 Z, O9 @- `- @5 O
ORL0 k/ q# j' _* X& O. r; Q) Z5 D
A,#data6 e$ V9 t* W  r8 `9 E) I. s
立即数“或”到累加器! s$ K( s+ B8 H# [, I7 b: t
2
1 R6 Q' L8 a& u1 t
1/ ~) `! @8 e$ N
ORL1 A6 _4 u5 V1 q" P( ~/ K$ P! g
direct,A
$ N' F0 {: G- T4 h, \1 z
累加器“或”到直接地址
  L+ @4 X& P5 x/ _/ i3 G5 @
2* L5 t) E% I2 Q+ H  U$ b. @
1, f7 }2 c" Q' g' n
ORL: R8 M  i* o$ ~- u) g
direct, #data  c: h3 Q# i6 s/ `# S0 o
立即数“或”到直接地址6 N5 J( ]# U$ x- p, p$ g
3
# \  J7 t3 E. e. W/ }/ C
1
: R5 L8 S7 t5 U- O( _- I
XRL
+ x! x- n/ E4 t; t" g: T
A,Rn8 `; u% w# `* T; Z- z0 M8 g: z. q
寄存器“异或”到累加器
4 R5 p  r: O8 f3 E
1
; D1 j2 G& A& z
27 y5 [; ^, i! E7 h% O! U
XRL0 h9 B+ q& f2 A! v3 P/ B
A,direct3 r6 w  V3 v. [" y0 D7 I2 e) ~
直接地址“异或”到累加器% ?8 H. W& Q! G7 `$ H" K
26 P: N3 @: N( v2 b8 [9 a3 H
1
, n  a) v7 O3 T& ~* q! ?
XRL
6 d9 V2 ~8 j* p- K, I( l( ?; i6 F
A,@Ri" p% u7 l# B/ A( _! R6 R( s
间接RAM“异或”到累加器- o* ^/ d" y: _/ O, N3 D. [
1& }* h8 f- ^! h6 y
1
" P% P* q$ g5 @' e8 V+ [
XRL4 l/ [2 i: |7 ~6 `5 F8 P
A,#data7 V; Z" C$ x/ S  S; A8 L
立即数“异或”到累加器
( Z. ^( [& }7 m0 X: @. X% J
2, Q; @% U8 ]0 ?
16 n' N: ^$ D! W: U$ e. m7 l3 Z
XRL
* d0 o8 o, Y7 R6 V( j
direct,A" }- J7 M* B" E) \$ L
累加器“异或”到直接地址, b9 V* U7 A4 e+ M! P3 T$ Z, l
24 t: r5 X, f* d
1$ E& E6 |  A- p- E& i! F& t& ?
XRL
  k9 d* _7 i* b) G3 ~6 _+ Y. ?
direct, #data% E- {5 U, ^, S4 R
立即数“异或”到直接地址
# k( t; _1 x9 z$ v; o- o
3
( j! k) S0 L2 i+ i0 [6 ~* j
1
1 @7 N# f6 l1 f  `
CLR8 h- g0 Z8 e: B
A; L. {: H/ l1 f6 n8 G0 i+ y
累加器清零( |: A' f5 S0 i" v! G+ j7 F' R. C: p" ?
1
- V- S& N; j; D* x# J+ H. n  e8 f
2& R0 `- C* Z  k6 h+ p7 W6 f
CPL
1 F0 j9 ]9 {. W$ f# f, [
A  j) q. L, J/ a* [! B
累加器求反; V$ V' j+ m1 u2 a$ ~
1
7 f& {9 q* v  ?& D! E+ @
1) L$ W* a' D, G! T5 J( B: }
RL& \8 {$ x- t# q7 W" v
A
+ S" G5 t- J3 J& J; ]) v7 `
累加器循环左移5 U- G& p2 V( X5 K  u$ _; T2 o
1
9 Z/ ?& ?4 `3 I) u1 W6 G
17 p$ H2 p8 p( {( v
RLC
. f8 j) G' s; m7 h5 L2 [# m8 q
A
+ q/ R. h! a* g
带进位累加器循环左移
+ j! ?" v3 x5 S$ d7 _
15 M$ B( Y6 C* M3 v6 s& m
10 \8 n! ~+ @4 Y& p: I' D+ X
RR& O) ~, C5 _, z3 u# e2 g
A* A0 E$ V. T, A: R. ]2 r
累加器循环右移( A- J6 J! K! ~/ f
16 \' d. ^! R+ Z  c, a) Q
1
' f* g5 n" g/ e& x  w' U$ V, x, R
RRC6 T: l, h0 i, s& L" I
A) {& H& j! y/ }. ?- F6 R8 o
带进位累加器循环右移
) Q+ j0 c4 r$ s6 L- [% k8 g
1
6 t( A- }$ ?- V% ]5 X4 h0 U8 O" x
1; I9 _' |$ X, N/ O! }
SWAP4 t5 g* ~9 h' y/ H* t2 o. h
A
5 O# D% l9 O/ S2 M. Y: B4 S
累加器高、低4 位交换0 ?! M' H' m4 Q1 W4 U6 |6 N
1
  J- ~$ M! n2 _5 l3 W+ |' m
1
/ Q% k: e1 g( r
(控制转移类指令)

' r. R8 ~. H& r+ y+ _) n5 m+ L4 w
JMP9 g+ G: `0 W" t" L
@A+DPTR( c0 S- i2 M) b6 R/ g( A
相对DPTR 的无条件间接转移
, x* y) V5 q/ }( s+ W3 t
1
) h5 ?; _/ U5 S& n2 f6 X9 G6 w: d
20 a( O, W- U2 j% R+ b- ]$ w2 D' v
JZ
+ g) X2 e- f+ G+ A8 u+ ^3 H
rel) f- R0 H& G" R
累加器为0 则转移
0 p& {# C: q( S! @: V
2
8 ]% j2 ^0 F' C  Q" `$ v6 P4 q% C
2& Y3 V! X2 p9 L" t* P
JNZ) h: {: [7 Z; x4 p3 v, ]8 H
rel
( u) T. X* W" W- a3 M
累加器为1 则转移
6 q* I; K; t( w! S
20 v1 T# U1 a3 I. W3 R' n7 d
2% z; W* X; \3 z7 j
CJNE
1 b2 }7 h5 |2 ^* v5 x* V
A,direct,rel
: p- ?( _2 C; z+ D
比较直接地址和累加器,不相等转移
, b& l2 V# B* ^; Z* \# s
3* z+ U) \8 `  R8 m
2
& P4 ^$ z+ X# U( B6 {3 n
CJNE9 t8 ?6 F- D3 V
A,#data,rel
# ]4 E- B9 O/ K) r. C; G
比较立即数和累加器,不相等转移2 m. z- `! y; B/ `% \3 _; y3 P% Q
3
9 v/ v  q2 F+ u# b# [+ p8 X
2) T' a1 m. j; o7 Q, W5 j
CJNE8 f7 b$ F5 }* }. r1 ^/ r1 o% ?  s
Rn,#data,rel  r" w  _( z9 f$ D8 d
比较寄存器和立即数,不相等转移5 B+ ^# s  g) {; _
2* s7 [/ J3 ^  [% C2 m1 _5 _6 m
2
+ g3 B/ f  H2 [0 @6 X7 j
CJNE) Q& r' @* Q# R( A, k
@Ri,#data,rel1 }1 H$ e/ q' W# _' t" p
比较立即数和间接RAM,不相等转移* L3 Y% P) I; i1 M+ X: Z* W
3
. f! x; H% n* N0 c1 G; O2 A2 ^
26 {4 ^( z* |0 L" ^+ m% o
DJNZ7 q- f4 N- ^1 p, i, J0 i
Rn,rel3 a6 n* W* x7 x0 m- d5 F- `
寄存器减1,不为0 则转移
( `* T& i' I) A+ n( b3 X
3
  K/ q6 ^6 J+ {" u8 J( r
29 j7 u/ {) f8 U. X- m4 T# r
DJNZ
! h; v3 r# f3 U$ p2 n) T4 w" Y1 e
direct,rel( E7 V5 s6 e/ [3 ~
直接地址减1,不为0 则转移& X" w/ z5 u1 V/ S
35 r+ J+ O4 t+ V: I) @
2
" \2 j7 D5 ]% j* ?3 v2 ~* Y
NOP5 f) K, B8 D. W% }1 P5 s# I; e

8 o' Q3 }! d1 I* J8 w* c: ?5 Y) [
空操作,用于短暂延时
: w7 J& k6 V! o9 d7 p/ z
11 F- ?+ ^, g/ t4 [/ J* f
1
  z* y' ?/ n! v
ACALL
* Z8 h8 V; B* Y* G& I' X
add118 N8 a1 B, Q7 W7 a
绝对调用子程序7 f' I$ U7 [: ]
2+ j1 ~! \% a7 K
2% S2 H$ F8 u. L) R
LCALL) Z) F; H) O8 J1 k
add16) J- z1 X, s% u3 F( A3 r0 t) s
长调用子程序" i& h2 M9 A/ U+ q2 D
3. O1 O7 L; v6 R* B/ H" X
2) Q9 Y; y7 b% g9 z! G5 r7 j4 e3 p" ]
RET
0 x& F3 ]4 q# a3 c2 l

5 b  {/ M* y3 t% @$ ~* d5 ^
从子程序返回
# {  K! W3 D' c9 C
1
! x+ K+ c* w# V3 x
2
2 E5 L8 u( W: ?
RETI2 r+ a! }4 q1 g9 F$ e4 \, b4 L

, y- s1 }. m' c8 Z( e
从中断服务子程序返回# M/ `2 T# t1 b) |6 G! s; W9 P
1, |/ X* h* m1 G7 D2 }
23 S+ I( ~, N/ T( u) j
AJMP, N- Q! D( C' U
add11
# ~2 ]. ^1 d8 u& n
无条件绝对转移
4 I  v, D& ~7 {# }" ^* P8 c
2
' p& {8 R) p3 ^' K( o1 P
2  l. w5 z. S# W# O
LJMP
2 P# o+ {7 C- c- [7 W
add16. X7 ^" A3 a* X1 Z
无条件长转移
7 Y2 E" O  I4 V5 C" Z( o
3
. B9 \2 E3 r. q9 |) R
28 D4 s0 E( I! q) w6 E: h
SJMP9 [# x7 l3 T/ A+ z0 }
rel
2 b+ p& o- o4 `, v& H: j5 Q
无条件相对转移( D# G: X+ r1 Q) q. ~: X0 X7 E
2
! {* A" r6 W; L1 [" r" M! C6 k
2
$ y: D# }: m: s% S8 w1 f1 Q7 X( a
(布尔指令)
0 S2 W# y5 @1 U1 Z- @
CLR; u; `) s. [) z. f' c
C) l" z& v" J& w
清进位位) o$ c6 G; @  U6 w. h" v
1" p! x  F. B& K, b" I: t
1
! L! o- x( j/ p
CLR9 ?. p2 H8 z, s6 U; W
bit
9 H$ T+ Y& X, C6 B& I) r: ]
清直接寻址位* z3 z! e3 v" R4 @$ X. J- p; V
2
6 L. A! ~/ n+ C# D! U
1; ~3 D) R% q: |3 s
SETB
8 ^* H& f, ?* u* ~+ |
C
5 Y! L: D: A; m% t, J6 _
置位进位位: w: g7 F" p+ k
1
: g7 H# M3 d7 |8 }3 F' j5 ^  v
1
1 e3 d6 T  Y2 d. B" R
SETB
. O6 D4 |# }4 J# O, u# g* l& T
bit1 `& D) l5 H! S
置位直接寻址位
# h7 }, }: A7 |' W
2) f# ^; e. ]3 I: b
1
+ f  b: T) ^0 n, G! i
CPL3 n0 ?3 o/ R6 t+ L1 b4 B
C5 x1 j1 I/ V( U* V' L9 I5 B
取反进位位
$ p# W, `. [% v, @/ O" ~: n
1: t% i; M" q; }, X
16 p1 u* N3 \% V0 U8 e7 G: R
CPL
0 C0 k9 |6 ?3 \4 Q$ D
bit
4 ?& Y, y7 x" |2 ?
取反直接寻址位+ j$ x( g: L3 a5 j$ }- H' O
27 s' e: T/ }* x8 E7 b
1. R; k* R) W+ s6 F
ANL9 X/ o' j; V2 p) @
C,bit7 x" ?1 U8 T  |3 D0 p# R7 p+ _
直接寻址位“与”到进位位
% l1 V( J9 e2 a
2; j2 {9 G& H! u: }6 f
2
) `1 ]; S: x: T' o7 C
ANL$ B. Y3 p- U! S/ M8 j$ G9 k
C,/bit
9 W4 K/ ~& D6 W" N8 H% Y1 N7 ]( [  [+ f
直接寻址位的反码“与”到进位位* w, E7 W- G1 V" Q. `2 U
2( {; Y7 m" s6 W% C* B9 g1 B
23 S9 Q$ T) a2 Q
ORL' t. E6 z; B* x6 H
C,bit% w7 f3 o0 I! q# |# g8 v& S
直接寻址位“或”到进位位- I8 t" \9 Y5 k% K
2
" I1 w# s8 t- I/ R6 B) U# q( u" [
2& ?/ n3 P' m/ V. }0 ^9 p2 {; i
ORL( z  B5 f' x; ^9 M
C,/bit
  R$ W, N0 K& d9 X+ L; y
直接寻址位的反码“或”到进位位
6 q5 V. F8 ^# ^
2
' s- |& A* k6 ]( n
2
" n3 I# |( k6 x  |
MOV: T- Z5 \; e* h4 ?5 y, l% Z& o
C,bit
; v8 R1 p( P" {  C  A
直接寻址位传送到进位位: @. X2 ?  B6 v) ?2 t/ x" G
2
- A' Y1 T* l# g2 t" _" P
1
9 w/ n8 N9 j. w3 P- t4 Y2 ]7 T6 _$ ^
MOV
" \) h" H# W. i& \/ e: J4 U
bit, C
# T/ @7 L1 H/ C0 Y& L
进位位位传送到直接寻址* U) S+ g0 @$ J9 {% W6 Q
2
* b  z  T% V6 a4 L. |
2) D& @7 W3 L- s0 t, g! O4 C. r& E; q# h+ L
JC
  l" q0 G' q0 F
rel0 n3 ^& n% U" v5 u6 i  A
如果进位位为1 则转移
5 w  J3 o  x6 Z0 {0 X3 n1 J2 H2 f5 Y
2* M8 s2 `% M' K5 j
20 ]; y. n; O, k. D" f2 s8 Z: O
JNC
" {5 |9 D- Q/ P1 u
rel2 L. @. v" e9 Z1 _0 k% q8 z* ?
如果进位位为0 则转移
4 h7 v0 y8 {$ o+ b; b/ h1 q
20 u) D9 L) E5 S+ j3 |# f
25 D7 z- H9 k& A7 f9 h
JB$ m. f$ p* o& t( G
bit,rel
$ V/ @8 Q- V$ J
如果直接寻址位为1 则转移  ?. q7 ~+ D* W) g' f* N
3' L1 R/ ?5 o: b8 i' _
2; {4 l$ o. s- }( A; R
JNB3 i7 y4 _1 q! @4 |) _
bit,rel" W1 O5 V$ ~3 i- K- y
如果直接寻址位为0 则转移/ d. n0 o* i' q; b
3, ^; |; i7 X/ w. O* b+ s9 Y! f
2
# W0 v) ~% }; p( e& g
JBC  s" @' l2 I' K, f5 I
bit,rel* k5 d2 l6 G: x$ n9 U
直接寻址位为1 则转移并清除该位
. h0 I3 A2 e$ `9 \: x4 R
2
  V( H+ X$ o& }8 z! W% t0 Y
2% P" w; [! E' D$ ?3 V/ v/ X
 
5 @9 q5 a' x7 w1 j, T. H4 J9 g+ F' [: M5 g
 
8 \' w) e3 m& J) \
(伪指令)
ORG
+ |+ M# T$ [$ j& \: c' ~
指明程序的开始位置
/ r: ]8 f& H: f: j
3 |: W" v" k0 m4 r
DB8 F5 D5 Y! y$ y! V* m7 Z
定义数据表
, n  |* M6 Y7 O) r% `" r0 B

$ ]6 v: A0 d! Q
DW4 {$ B8 d) W, `+ k4 _/ P$ s6 W
定义16 位的地址表
/ b' [4 @$ O5 v/ |

+ |, N" D; a: ?2 w8 ]% x$ z
EQU- K5 f; [% c) C. y3 k
给一个表达式或一个字符串起名" `7 d: q/ l$ M. }0 V4 o
, b& c( e* U1 F; i/ o* o- s3 p
DATA
' q1 |1 z" d! Q3 m! O+ h
给一个8 位的内部RAM 起名( e4 r% K- j% I
# `9 {" d# B1 H: `2 Q
XDATA
, y/ E8 o- @# _+ x, _( R5 S* b+ `
给一个8 位的外部RAM 起名
5 b6 z9 z8 l9 E- E. O

+ x" Y! s9 F9 b0 \- ]- v1 j
BIT  i! {5 U1 o* ]  _' G; p. K' m
给一个可位寻址的位单元起名2 ?/ N, s; l# S+ k

  @6 B, b, V8 w0 B! s# J! y
END6 C/ }; [+ ]. j
指出源程序到此为止" p' q' ]7 X% Y. f8 T
  [) {3 H5 ]) ~7 k3 x' O
 7 o3 f( P& g1 V; G
(指令中的符号标识)
Rn9 w! S6 z4 q/ I
工作寄存器R0-R7
" q8 \' m# A) y7 ]1 p+ h
Ri9 n( \; j4 f0 U! @
工作寄存器R0 和R1
. ^2 w# E; h6 ^8 H8 q
@Ri  F; E/ s2 }! @& S( X
间接寻址的8 位RAM 单元地址(00H-FFH)
4 f, N3 O% O; g7 R1 V
#data8: G2 n1 M) \% y
8 位常数
# ?& p" [0 x$ V/ q, \4 ?5 G1 U
#data167 C" l2 G1 Z1 K0 @! x9 z, e
16 位常数/ J& E1 ~% N. e: u/ Y$ ~$ g- e% n
addr16
" J" \  w& `. i8 v( ~# m, A
16 位目标地址,能转移或调用到64KROM 的任何地方- L  U" a; _+ O' C
addr116 Y4 p* K1 u. o; \4 h* K0 e
11 位目标地址,在下条指令的2K 范围内转移或调用" |: T* X. v* }) K3 |: g! P$ U
Rel8 n3 w- w( [7 E- s  p
8 位偏移量,用于SJMP 和所有条件转移指令,范围-128~+127/ s/ t* ^) [+ m8 T3 B/ L. T% P' A
Bit
$ j- j4 q) T' O0 s9 P; w! m5 q
片内RAM 中的可寻址位和SFR 的可寻址位
. q6 {1 h* d" ]' @* r) d% B& S
Direct5 F  S. \1 _7 R' }: I  E2 {9 N
直接地址,范围片内RAM 单元(00H-7FH)和80H-FFH' k) w" f  F+ \3 {8 p1 l/ e
$
! Q8 N; w% F) u9 D+ e
指本条指令的起始位置: V% |4 o* _( F
. y! t  t8 Y# d- K

该用户从未签到

2#
发表于 2022-8-17 10:57 | 只看该作者
很好的东西,学习学习,谢谢

该用户从未签到

3#
发表于 2022-8-17 11:44 | 只看该作者
谢谢楼主,实在是好东西啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-24 20:59 , Processed in 0.140625 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表