|
关于逻辑、移位这几个指令5 O% S* I, n0 h9 ?8 Q0 Q- ?! w
3 Q% t+ V, ?" H8 m* l3 T* R% Z
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A4 c% s4 G6 l* L: U% c! d
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?
" S2 i# h, T" S/ |' Y9 C& ^( a所以请教高手指点。/ ^: y1 N1 c5 s" f$ |' \. A! \6 j
还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?
! ~: t2 U& |! X2 m
# g1 G* b* ~4 V" J找个带逻辑的断点如超级魂斗罗:
8 y( F/ B+ w* }% c" J. X以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$001 P* H% p, j$ D: e
上一句是 1D 66 05 ORA $0566,X @$0566=$00, O5 @. }3 T+ D8 K# W$ _+ m% q
寄存器 A、X = 00,Y = 08
; |3 c2 ^8 ]( G" t3 ]这里的ORA是怎么运算的?
) i; ^3 ~+ Q% a C% i
* _! T0 F8 c3 D& H- d还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
# t% }% T; p3 s+ b/ W3 r& D0 Y: G) \4 \, Y4 {( X
最后感谢各位大侠帮忙,呵呵。 |
|