|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA6 o5 L5 K; ^/ J7 a0 |: b
6 q, b+ |4 F0 { PHA是隐含寻址方式的单字节指令,操作码是 48" n- r; E2 W1 t( X. L3 R0 b! |* \
( O5 e( o4 i5 f' M1 |/ t 功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减13 W# F1 o2 Y x
- Y- \- I' `3 U, J, T1 e
累加器出栈指令 PLA y7 O# ?( e" |) d' I6 l, ?$ G5 q5 O# H
9 _8 ?* J; q- }% a. X. k
PLA是隐含寻址方式的单字节指令,操作码是 68
( \- z5 V9 R- K+ {# ~* o+ H
( b! G( L4 B1 p0 z1 e5 S/ G6 ~ 功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
* H7 L3 f `' A- X! d/ I( d0 I9 v: x0 y7 @
比较指令8 n; p6 Z4 q6 _ A6 X, }" ?
$ I3 i' a$ G, }6 `1 jCMP--累加器和存储器比较
( \$ T- I; C3 l5 F% H' i+ S+ s% v, H0 _0 f$ N7 C
CMP #$data C9 立即寻址 0 q9 f6 f3 _& {% Y8 {$ J
0 \2 u0 h0 }1 ]6 h/ Z; `- EJMP--无条件转移指令
% r0 O9 z, ?: t5 M( h: A4 y
' s( c4 L4 R$ K5 ^符号码格式 指令操作码 寻址方式 ) M: B/ y! Y+ T* g! q$ G
JMP $data16 4C 绝对寻址
0 q5 L4 q; G7 ~5 p. @
% T$ k1 c$ y8 z: r& @2. 条件转移指令' C1 C4 h3 l! t5 r, f
/ s! T' ~% O8 O, S
BEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 , `( Q! r2 x' q' y8 T
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 . b* n7 b/ v. i0 u* S$ o" m
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
6 s- ?; u' ^- c+ C& V, j; QBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 , M/ g6 r# @ p% M' R( t4 w+ k
BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 ) z; w$ X, F2 L* \; b0 R
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 ; H! u! a T! `5 Y' F Y) F. d. j
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续 # W2 D; _3 ^6 s- G
BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续 , K1 ~8 {2 d2 \& H* W3 Y$ [/ d
+ n; n3 z3 u9 M0 V9 B p, L
STA--将累加器的内容送入存储器 A--M
& a% j3 b5 u# iSTA $addr16 8D 绝对寻址 |
|