|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA" O4 u* u# u2 g$ [
+ T/ [6 S8 _+ b* f# Y* W J# k5 _ PHA是隐含寻址方式的单字节指令,操作码是 484 x, M/ N+ X) S
" V/ Z3 c0 v" t# N) T9 o! B m) ^
功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1! E9 o5 G7 ]9 b
6 q6 A0 q8 x/ o( J累加器出栈指令 PLA- I7 m0 J- G2 c: M6 v) i
% y; S/ U- d0 W+ t+ ~, D$ h L PLA是隐含寻址方式的单字节指令,操作码是 68
8 X& s- r0 k5 M5 `) }
( t1 {* I! ~3 ?9 y) P0 d, P0 a" i 功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
; W1 y/ V B) Q# z
$ d9 s& x( o" P3 x& z比较指令
' K' {" ]) c- \. K2 o
" S$ ?! }! W4 ]8 `( p$ b( \* ^# MCMP--累加器和存储器比较* _% r9 P* C: l5 t
, J) w5 Q" D2 ]$ }1 }5 q- S5 l
CMP #$data C9 立即寻址
1 B1 w, d1 F' v* e8 {' T0 r3 k( E! X3 y, i% v
JMP--无条件转移指令; x2 u4 B2 c+ ?2 H9 x
+ C' y0 G9 e0 ?, B7 F. v9 v- }. G符号码格式 指令操作码 寻址方式
) ^$ Q( x# m. k/ N7 I6 g% KJMP $data16 4C 绝对寻址 _; \# z. V% E/ T d
$ |% [3 L' j* ^8 l2. 条件转移指令
+ t. d6 r+ m$ t7 `
' z1 }+ P4 P' s$ u, D, GBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 : Z- Q; h: w) \: ^! n+ Y5 T
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 5 Q; V$ [/ T2 I
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
" H% @7 |( R5 h) h: cBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续 $ e0 f+ V$ d; u' X" ~# I
BMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 6 R4 \9 u/ U) ^* l! E- b g; D( y; G
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续 5 A# O! s' h; c# `( v
BVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
1 H7 f5 g) g. K$ j$ wBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续
- y2 Y9 V( p8 I. A% Q% A6 p
7 @$ [ q$ t) _3 w+ S+ L: gSTA--将累加器的内容送入存储器 A--M! I5 z; x; c- g% y( E2 C Y+ _/ b
STA $addr16 8D 绝对寻址 |
|