|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA
2 q3 I& y* K- }4 o1 ]4 G, |4 F; [# T
# N+ e2 X1 b9 ]' i z0 ^ PHA是隐含寻址方式的单字节指令,操作码是 48
. \) A8 j4 B8 N& u8 P9 Y7 n# `9 w# C% F5 b- O) m: ` a
功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
. b8 v5 z8 H7 F* ]9 [" a2 ^1 m- F: G5 R, w, e: X3 r/ l
累加器出栈指令 PLA
% Q3 p8 A; s8 s1 _, x' d0 g" E5 |) d5 U: F1 R; S
PLA是隐含寻址方式的单字节指令,操作码是 68 g1 H# @9 z+ f
/ k; d" `3 \8 w8 B! D- K l) `
功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
% |- E+ g7 E! A- ?' U# W7 p& ~7 \' ]1 t) E5 N, g
比较指令
; j. l1 k6 _' L# R3 E) @9 T
; |$ x, S8 R2 P8 SCMP--累加器和存储器比较
+ { j. R) g* `( e) T, T7 V, j& ^2 h' s) \
CMP #$data C9 立即寻址 ! b8 K% b; f4 ^; q
3 d) y" |- W; o1 O3 n7 ]# K! {
JMP--无条件转移指令
! K2 x. v" v1 G# c& K# S# G/ [ z0 I% }( J' K; i
符号码格式 指令操作码 寻址方式 * V5 I, p. z3 ~
JMP $data16 4C 绝对寻址 ' E- s( g7 `( y- {; d V
8 o! _) l5 \4 S2 n. ~0 e1 ?
2. 条件转移指令' I. }# r+ f) S& v5 ]1 x: Y; C
+ k# D L2 ]* a: q- d. dBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续
% @+ n2 Y- U9 s. k6 s5 [4 vBNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续
, ]$ j) ^ L6 `BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续 1 C1 x& F5 e! W( R! e# Y# |% j
BCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
7 @: j5 C) w/ D! _BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 7 }& I7 x, Y9 x9 d# w7 R7 G2 S4 I
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 - P9 W# V9 U% j3 X
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
z2 V# }" f$ {$ R* L( ^BVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
# A* R7 ]9 R! T' O2 C7 k
8 M/ P3 W; Q# c1 [5 N' tSTA--将累加器的内容送入存储器 A--M. i' S; A3 R$ c) G# q7 [ S
STA $addr16 8D 绝对寻址 |
|