TA的每日心情  | 开心 2022-1-21 15:22 | 
|---|
 
  签到天数: 1 天 [LV.1]初来乍到  
 | 
	
    
 
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册  
 
x
 
常用单片机汇编指令:/ \  u. j8 Q% g8 { 
1 .MOV A,Rn 寄存器内容送入累加器 
. r5 g' B. t8 A. [0 E2 .MOV A,direct 直接地址单元中的数据送入累加器 
' w' y2 s" h5 @9 m! w3 .MOV A,@Ri (i=0,1)间接RAM 中的数据送入累加器 
% q0 U0 `3 b+ ~& {5 I2 q& v- W4 .MOV A,#data 立即数送入累加器5 a# r, \+ {% \$ N 
5 .MOV Rn,A 累加器内容送入寄存器   ; d) r3 D5 H8 H2 F0 o0 U) b( `: v8 q 
6 .MOV Rn,direct 直接地址单元中的数据送入寄存器 
* z: Y8 l( k, l) X7 .MOV Rn,#data 立即数送入寄存器    
4 l& p! j/ E5 I% s  z* Z  ^5 Y8 .MOV direct,A 累加器内容送入直接地址单元  " e; o2 n: J% l; ? 
9 .MOV direct,Rn 寄存器内容送入直接地址单元 
$ s$ i7 i( V$ }3 x6 q9 z7 v10. MOV direct,direct 直接地址单元中的数据送入另一个直接地址单元   / i7 q! |+ y; Z# r! t0 Q6 f3 i 
11 .MOV direct,@Ri (i=0,1)间接RAM 中的数据送入直接地址单元   * V' s( K2 R0 s( k# P- l6 p0 j 
12 MOV direct,#data 立即数送入直接地址单元   
# N, P+ H1 q8 K: o& [4 v13 .MOV @Ri,A (i=0,1)累加器内容送间接RAM 单元  " a$ J8 L4 {1 _/ s# S: n. R. {& G) g 
14 .MOV @Ri,direct (i=0,1)直接地址单元数据送入间接RAM 单元  % O+ X+ d* V) v3 b# c) X; K 
15 .MOV @Ri,#data (i=0,1)立即数送入间接RAM 单元    
4 Z' ^' T$ P" @1 C; H4 U8 A16 .MOV DPTR,#data16 16 位立即数送入地址寄存器    
  E  F* A( z: O* a, T17 .MOVC A,@A+DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器  4 ?- G1 S) Z6 A8 r1 H4 `; f% S: D 
18 .MOVC A,@A+PC 以PC 为基地址变址寻址单元中的数据送入累加器    
0 b+ E! @2 A1 o! A6 k19 .MOVX A,@Ri (i=0,1)外部RAM(8 位地址)送入累加器   + x: V( b" w! d. q% K# \! V# O 
20 .MOVX A,@DPTR 外部RAM(16 位地址)送入累加器    
+ F! ^/ ~9 j- k' m. r21 .MOVX @Ri,A (i=0,1)累计器送外部RAM(8 位地址)    
3 |: Z' H  S2 P6 ^( i1 ?; r22 .MOVX @DPTR,A 累计器送外部RAM(16 位地址)    
3 b( Y9 w9 A, c2 y* x9 Q: v' M! R23 .PUSH direct 直接地址单元中的数据压入堆栈   
4 W* G5 E5 X' H  g/ u24 .POP direct 弹栈送直接地址单元   
' J  U  Z. t- Y3 C25 .XCH A,Rn 寄存器与累加器交换   / c* @) d: i1 g7 |; b+ e 
26 .XCH A,direct 直接地址单元与累加器交换   
4 k; F/ n" o4 z27 .XCH A,@Ri (i=0,1)间接RAM 与累加器交换   
9 l7 _$ ]% a0 y; w! n+ ?6 i28 .XCHD A,@Ri (i=0,1)间接RAM 的低半字节与累加器交换+ [$ W7 N2 }4 i; s 
 
! k/ P& q; T% p: ?算术操作类指令:9 s0 g, G2 A$ N, r1 @) H 
; X' e4 R$ Z% U/ K& U5 R 
1. ADD A,Rn 寄存器内容加到累加器   
6 w6 K4 K1 i3 K! y. H9 P: t7 |- {5 W2 .ADD A,direct 直接地址单元的内容加到累加器   
4 h8 X- t5 H( Q( y* T$ e6 H7 F3 ~8 a3 A.DD A,@Ri (i=0,1)间接ROM 的内容加到累加器  - {0 k8 X1 s) ], F' q; n, w 
4 .ADD A,#data 立即数加到累加器     j8 K  f7 t) k( ^+ F& v2 M 
5 .ADDC A,Rn 寄存器内容带进位加到累加器  , c/ [2 l- v4 O% k 
6 .ADDC A,direct 直接地址单元的内容带进位加到累加器   
. K$ ^) g- h$ y6 Y2 e7 D2 q7 .ADDC A,@Ri(i=0,1) 间接ROM 的内容带进位加到累加器* G4 C( u  x' R) M$ Y) Y; z 
8 .ADDC A,#data 立即数带进位加到累加器  + h8 {, C" _* x% ~- P# M 
9 .SUBB A,Rn 累加器带借位减寄存器内容    
" Y7 K, k8 m8 i, W9 B10. SUBB A,direct 累加器带借位减直接地址单元的内容   
2 w4 U: `7 ]$ |11 .SUBB A,@Ri (i=0,1)累加器带借位减间接RAM 中的内容4 T- O2 r/ B, ~& O0 o9 {1 f$ r 
12 .SUBB A,#data 累加器带借位减立即数   0 O. Q# z( j# o" l) u: C 
13 .INC A 累加器加1  ) l  v+ T% a5 A$ } 
14 .INC Rn 寄存器加1   6 W, x, V7 q( s$ ^' w! t 
15 .INC direct 直接地址单元加1 
: G( S! W: N2 f5 ]/ F16 .INC @Ri (i=0,1)间接RAM 单元加1& ^$ C: }5 M& n 
17 .DEC A 累加器减1   
6 O5 `8 B2 x# o3 r3 h18 .DEC Rn 寄存器减1   
+ j; r  H! ~8 s+ E$ }$ E! t" s1 O" e19 .DEC direct 直接地址单元减1  0 d- Z. d- p0 @6 w* }- ^ 
20 .DEC @RJ 间接RAM 单元减 1   ) I/ Z" x3 O, h, D. \ 
21 .INC DPTR 地址寄存器DPTR 加 1   
7 g- `0 U& m6 Q# W0 W22 .MUL AB A 乘以B,结果放在A   
7 g3 \8 M9 }% M23 .DIV AB A 除以B,结果放在A  + G8 l6 [0 L3 Y, T+ f# l+ J. @ 
24. DA A 累加器十进制调整 
& H5 w" ?2 Q- O1 V3 _* e& t1 ~9 ^/ S4 L 
布尔变量操作类指令:! Y, W4 N6 U$ q8 M 
  ~% a" Q  [, ^: q8 r" {* H8 S3 k 
1 .CLR C 清进位位    
! g! F( D6 f4 h& M9 ~: [' Y+ k$ C2 .CLR bit 清直接地址位  6 U  \" ?( y/ l" l" F% N 
3 .SETB C 置进位位    
3 |* I/ H2 ^* d3 Q0 h( K4 .SETB bit 置直接地址位' q/ [! h5 X' n# k- h; u& q- ]& q 
5 .CPL C 进位位求反   
7 l* \. v2 j& F6 z# N6 .CPL bit 置直接地址位求反  ; |3 R' Q1 A3 z$ P+ J 
7 .ANL C,bit 进位位和直接地址位相“与”0 N- I4 O4 O# B2 ]! P" s% F- a2 m7 H 
8 .ANL C,/bit 进位位和直接地址位的反码相“与”   ( b6 Z! V% |1 v& V: z. Z 
9 .ORL C,bit 进位位和直接地址位相“或”   
7 C+ j% j0 j/ Q. e5 J10. ORL C,/bit 进位位和直接地址位的反码相“或”   
! \5 z) r6 k) ?& F; ~, {" O11 .MOV C,bit 直接地址位送入进位位  : |  d$ a( v3 J% Y8 ?6 l 
12 .MOV bit,C 进位位送入直接地址位    
* l9 ~$ Z& H  |1 C13 .JC rel 进位位为1 则转移   7 S$ ?& i! Q1 t 
14 .JNC rel 进位位为0 则转移   3 ^& h" X$ u3 R1 V1 z$ U 
15 .JB bit,rel 直接地址位为1 则转移  ' S  b' |0 E9 H6 C3 W$ _  q 
16 .JNB bit,rel 直接地址位为0 则转移# m- A4 K6 ?5 E. T4 P3 o" Y8 D 
17 .JBC bit,rel 直接地址位为1 则转移,该位清零 
* ]) K2 a; f0 `& S4 T+ O. W: ~; B7 S6 N+ c# ?: U7 ~1 F 
逻辑操作数指令:2 l! O  I: A9 a0 s" d 
. ?5 x! d$ z. t( X 
1. ANL A,Rn 累加器与寄存器相“与”  6 q) {% ~' H( _7 M: t, q 
2 .ANL A,direct 累加器与直接地址单元相“与”   
; v; N/ @8 o* }% x6 O* N; n  \( Q9 @3 .ANL A,@Ri 累加器与间接RAM 单元相“与”   ; \& C0 j4 w, p. q+ A+ \& v 
4 .ANL A,#data 累加器与立即数相“与”    
$ }3 ]4 J& G# T2 Q& C% x% g5 .ANL direct,A 直接地址单元与累加器相“与”   
+ X( a/ G1 ]4 Q$ d) @1 p* e5 |$ }6 .ANL direct,#data 直接地址单元与立即数相“与” 
0 D; H7 G+ y4 n5 h6 h7 .ORL A,Rn 累加器与寄存器相“或”   
4 h; g) b$ k& F$ f8 .ORL A,direct 累加器与直接地址单元相“或”  $ K  ~  B' j  S- W 
9 .ORL A,@Ri 累加器与间接RAM 单元单元相“或” 
% r$ w) a4 |3 m) |- X) ~* g7 D1 I10. ORL A,#data 累加器与立即数相“或”  4 I" `9 p0 \) n  m: K 
11. ORL direct,A 直接地址单元与累加器相“或”  . L, J, L* M6 a3 y& E 
12 .ORL direct,#data 直接地址单元与立即数相“或” 
9 l: V2 B* ]5 e( B13 .XRL A,Rn 累加器与寄存器相“异或”   " G8 F$ b! ]5 h 
14 .XRL A,direct 累加器与直接地址单元相“异或”   
- L$ S2 u  c4 |3 Y. \9 I9 O15 .XRL A,@Ri 累加器与间接RAM 单元单元相“异或”  & V! I; X: @' k( ~# e 
16 .XRL A,#data 累加器与立即数相“异或”! [' |. R8 I* {  o3 c 
17 .XRL direct,A 直接地址单元与累加器相“异或”  # r( B- `6 _# }8 p. z% y 
18 .XRL direct,#data 直接地址单元与立即数相“异或” 
* s- z0 B8 o3 F$ M$ j- P1 |19 .CLR A 累加器清“0”  ! C- o- \/ s  D 
20 .CPL A 累加器求反   2 R% i. m% |5 k; [ 
21 .RL A 累加器循环左移   
) a' t4 b; d* O0 h8 B6 d22 .RLC A 累加器带进位位循环左移    
; h' f+ }. F: J: d6 G23 .RR A 累加器循环右移    
# k* ^% q' g6 d$ m1 {24 .RRC A 累加器带进位位循环右移   ; c& [+ C2 h1 u, c: M1 V 
25 .SWAP A 累加器半字节交换 
; I3 D0 T" c9 ]; S7 x; `2 k: o' r' r+ q2 Z% U4 x9 d) g 
控制转移类指令2 `7 `1 T! W# W! O 
9 M# @. m# Y5 ~# L% G 
1. ACALL addr11 绝对(短)调用子程序    
: f2 @) b4 z' U& R$ J% K0 N# h) r/ B2 .LCALL addr16 长调用子程序  0 B4 {! F8 s  m4 g# G$ m 
3 .RET 子程序返回  3 x, r0 X9 ?1 Y! a 
4 .RETI 中断返回   . G; Q$ i" Z, ]/ T% [) G 
5 .AJMP addr11 绝对(短)转移  , @, f" X2 G, ^! k- H 
6 .LJMP addr16 长转移   
4 P3 w) `) Z- t9 @# `9 X9 [7 .SJMP rel 相对转移   
6 U& [3 |1 X' q& E2 I+ A8 .JMP @A+DPTR 相对于DPTR 的间接转移* W4 e5 W  l+ k+ J* o3 B6 e/ @# s 
9. JZ rel 累加器为零转移    
+ Z8 x& H  [2 S, E2 V10. JNZ rel 累加器非零转移  / [; |, q% F6 d3 ?8 x+ u8 B- ]( v 
11. CJNE A,direct,rel 累加器与直接地址单元比较,不相等则转移   
# Q, h4 Z/ ]  p1 s, {8 V12 .CJNE A,#data,rel 累加器与立即数比较,不相等则转移  1 f8 a0 d; d. Z 
13 .CJNE Rn,#data,rel 寄存器与立即数比较,不相等则转移   
, l. G/ a6 T! U. G( f* V14 .CJNE @Ri,#data,rel 间接RAM 单元与立即数比较,不相等则转移  6 Y% @4 `6 B/ u) g% g8 g2 c! A 
15 .DJNZ Rn,rel 寄存器减1,非零转移   5 p5 h( S( B9 M2 t1 X( a 
16 .DJNZ direct,erl 直接地址单元减1,非零转移   
6 f. f8 V% ~: q17 .NOP 空操作 |   
 
 
 
 |