|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA9 d/ ]4 N2 f+ m i5 D" G* W
& h5 ?1 ^: S! b0 b
PHA是隐含寻址方式的单字节指令,操作码是 488 {1 C: \4 w) j" b! k% A0 R
/ I+ p' c1 J" z 功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减17 U; D" u4 X6 @( Q; p
) i2 G% H6 ~) X% v. s, o1 a4 T% a
累加器出栈指令 PLA
9 j2 E. J' ~$ _' p$ q2 M ]1 M
9 H1 ~. G; G/ Z+ J& u8 h& q1 f PLA是隐含寻址方式的单字节指令,操作码是 687 C. U( O/ _, N( x
( l" S! p8 c' Y* f
功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A0 }+ J k- b- p( T4 r4 i1 X7 l
3 h$ o/ Z7 T% n9 t- r
比较指令
- R% k; ~( ? [: C) ~6 O2 D% f: s* ~1 t' X3 A# w8 _8 @
CMP--累加器和存储器比较
% _7 o/ L( H8 Y) D! B, Z8 o, B5 `: x
CMP #$data C9 立即寻址
) W9 ?7 }" @ o& Z" x' b E# \& O+ ~. r
JMP--无条件转移指令5 }$ G9 J# l: @% W1 k6 Z4 k8 v
* v' _. e- y7 d, w2 p5 j. I
符号码格式 指令操作码 寻址方式
- W! Z+ x3 D( X# JJMP $data16 4C 绝对寻址 6 |) B, w% S. W0 n
, p: I# C$ R. ], n/ r) x2. 条件转移指令
5 F+ ^# p2 w7 R* w) S7 f
# m C, P/ X" B( p/ H( {. f& TBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
) a+ | N1 |! o/ E0 s% bBNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 8 ]+ v+ s, {0 A% \% p9 d1 I8 @. O
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 * o: D) K# q8 i6 ^/ o
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
/ H: g+ C8 I! lBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 # N4 a- H* y8 t5 d
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
+ O$ L* X" d: d! n- ]2 n, T& }* hBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续 ; B6 h( a8 J3 `! J1 j6 d
BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
4 A! R' M% s: x. r. m+ ~' C" O
* v4 T! ]# V, r5 r+ X, |1 JSTA--将累加器的内容送入存储器 A--M
4 R$ J( `0 K) |' X) }STA $addr16 8D 绝对寻址 |
|