|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA
& \9 N2 `, ?( S
- h: e6 I+ b8 A) K9 U8 n& \3 r PHA是隐含寻址方式的单字节指令,操作码是 48
* A7 e$ Y8 E* V' _" ` l8 b! d8 E' e. L7 c9 j* M' p
功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1. F# A, S& p8 b1 p! L
7 m4 {4 w7 c) e累加器出栈指令 PLA: P% G9 u! a, p2 G; R6 ~
; l% S% i( p7 Q4 D
PLA是隐含寻址方式的单字节指令,操作码是 68% k& U! ?9 x% b# O* |$ x
4 \/ G- s- X) Z+ r' t) I
功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A& \( R$ q" K4 ~* m1 Y$ k- h
; J: B1 a' G$ t$ h
比较指令# e# }8 a `' b' b; N
% c. E! T0 R1 o# H& T) aCMP--累加器和存储器比较
/ J! l3 m+ S; {# }: ]
$ i" D# e0 a7 ^1 I4 q1 }, B7 U9 GCMP #$data C9 立即寻址 7 S( r. [. V% F# D
/ H" L/ F" g: b, P
JMP--无条件转移指令
' \2 W, n0 L* n$ l x; d0 m+ M5 E3 G1 E7 s( }
符号码格式 指令操作码 寻址方式 8 s% D* n1 R6 N& c
JMP $data16 4C 绝对寻址 1 ] o: Q1 [1 S0 L4 H
' b) z* a- u3 X8 @- Z& } D5 w2. 条件转移指令8 T, e: Y' Y; t
. z6 z- v( n! k* k1 b+ ZBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 + s2 I7 n; W# y- o; f0 y
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
3 t0 r: K5 w& k6 t! y8 \BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
d q" [$ g( ?( cBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
6 n; z- }8 P: V) g& O BBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续
/ m2 Y2 @5 Z4 F4 HBPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
! s5 A4 r' }4 WBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
q3 o$ E/ _ Y$ GBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
. v; p8 P6 o6 J- d7 G
- p7 b s- W% K$ j# I+ G VSTA--将累加器的内容送入存储器 A--M9 ^( x0 y; f2 h' F
STA $addr16 8D 绝对寻址 |
|