|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA
+ { L6 b1 U L+ o9 J1 ]4 q0 [
% Z8 H% u/ v3 P2 h PHA是隐含寻址方式的单字节指令,操作码是 48+ O9 C# N0 d* E, e6 l& l
. R$ V) o/ M$ H8 k6 K4 ~1 z 功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
# {- C2 E2 }$ v) \- c) @
0 X2 O, O7 a2 C8 j7 ~: s1 j6 J累加器出栈指令 PLA+ H. E7 a6 G U7 s/ m; v E9 w
5 i4 m; I: N b. }% `4 y PLA是隐含寻址方式的单字节指令,操作码是 68, K, f1 B9 u* f7 _# H
. ]. k! Z, H- T$ H$ e; L( ?( z! r) k 功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
# m, T+ E- r o' Q& ~" s
# m$ S: k7 a( j比较指令
: b. J/ K( T3 a4 n* [5 I* S& r3 u% `3 C0 y! D% U8 e M$ a/ v
CMP--累加器和存储器比较
# ^% l& V& z. T# Z; P0 v3 }+ a
, v( ^5 s2 y+ U( B# Y3 P3 ?+ L3 MCMP #$data C9 立即寻址
. O% O7 b( p3 a' C& W4 I* }5 q1 H6 Z) h1 a; f8 P% E
JMP--无条件转移指令
3 z& @+ H5 @1 j$ ^; D/ r/ {+ u, N% v
4 C: N2 e/ m! V, @8 t9 P' N符号码格式 指令操作码 寻址方式
8 z) Y$ i' X' U+ F3 HJMP $data16 4C 绝对寻址 3 T% b# D6 z: z e
+ C4 s8 y( q# c2 a- e) w2. 条件转移指令: {% c9 I2 h* N# s
( F3 [8 I5 x/ j
BEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
0 L; x: a4 Z; eBNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
$ G# W! E' @% d$ @" s. L3 WBCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
. e2 ~! d+ ^( \4 ] BBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 ( a/ I/ k* c& c$ f: @
BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续
8 f# k/ w$ ?: Z' D E! b- T. D% mBPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 ) x9 z( X" h% k" \5 A- Q0 h
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续 " s6 } t: T! S6 U, F
BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续 ; L5 Q0 ?9 }! A3 D: V8 }
+ w# T+ N& j. `0 d! ]# M d6 e
STA--将累加器的内容送入存储器 A--M
: }9 @6 r, x e% G1 ISTA $addr16 8D 绝对寻址 |
|