|
|
发表于 2010-11-16 23:11:39
|
显示全部楼层
累加器进栈指令 PHA
( M ^" j, j) B9 t1 C0 y7 x9 a7 w R( b3 u. D
PHA是隐含寻址方式的单字节指令,操作码是 48
% U5 Q! M: W. S( `% e9 o2 E S. f" x0 V! y6 @6 z
功能是把累加器A的内容按堆栈指针S所指示的位置送入堆栈,然后堆栈指针减1
; H4 m/ F1 W9 B) r+ Z. r7 X* m1 c& `2 y) a
累加器出栈指令 PLA
& \" j+ T- D; B- Z4 H. a" o4 i% l' X) m6 _5 _5 X% k0 A
PLA是隐含寻址方式的单字节指令,操作码是 68
! K) z, E0 r, u2 X- e* L) \9 ]8 Q
- N' ]& \# n# j% N 功能是先让堆栈指针S+1,然后取加过1的S所指向的单元的内容,把它送累加器A
. ?+ |& u) o1 f. |- l; o5 {
: V4 E' _& B! @比较指令
5 c" \7 p2 p0 p: D! m
8 P' G9 K0 m8 M7 r, `: [0 CCMP--累加器和存储器比较
1 r3 g8 x+ j( R+ U. l3 g# j0 N9 h7 A* p, |5 _$ y
CMP #$data C9 立即寻址
0 X! r8 | ]3 X( x3 I
- ^; b9 b6 m2 K3 S$ WJMP--无条件转移指令: P1 k% J7 w" i# O1 G7 y
$ C# |- {' U( I符号码格式 指令操作码 寻址方式
- O& {; }; J3 LJMP $data16 4C 绝对寻址 ! o; Q! q5 b2 \; I
* h5 E1 t" N0 e5 g- ]
2. 条件转移指令
' |* r0 |+ N& ^4 {
7 Z; p& A) m3 s& b" h, qBEQ $data16 F0 相对寻址 如果标志位Z=1则转移,否则继续 ! r P% w% x g& D% ?, c+ O) |
BNE $data16 D0 相对寻址 如果标志位Z=0则转移,否则继续 6 j5 |, X3 H7 [. ^4 o7 r' G% }
BCS $data16 B0 相对寻址 如果标志位C=1则转移,否则继续
# R, B4 t& \+ @+ S" T9 l7 `9 BBCC $data16 90 相对寻址 如果标志位C=0则转移,否则继续
; Y2 q: P& y [' T0 C7 rBMI $data16 30 相对寻址 如果标志位N=1则转移,否则继续 $ h6 I6 a: q: W9 [- i# g# j2 y- y5 c
BPL $data16 10 相对寻址 如果标志位N=0则转移,否则继续
- H- R! d' k6 {0 X8 }; B kBVS $data16 70 相对寻址 如果标志位V=1则转移,否则继续
' R5 {: p2 Z% E) u; LBVC $data16 50 相对寻址 如果标志位V=0则转移,否则继续 v8 K% h3 U! R5 [
+ B' Q5 ?2 i: Q4 uSTA--将累加器的内容送入存储器 A--M
5 o/ B% ?' `0 G; nSTA $addr16 8D 绝对寻址 |
|