|
关于逻辑、移位这几个指令
/ ^' [! G( K u3 u2 x9 |; v0 o! g$ F; t9 u: a
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A
4 d+ T( p1 { B L# G; v我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?
2 z! L8 v: r) q& d' _# s所以请教高手指点。
) F8 J: h. }8 l# O还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?" n: k3 m" n. V8 L
# e1 S& Q4 X' p9 j! n6 ?找个带逻辑的断点如超级魂斗罗:7 Z2 z! g }- H' Q
以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$000 \& ]: v8 r. O8 q/ K( A0 j
上一句是 1D 66 05 ORA $0566,X @$0566=$005 ^; o/ D. e8 m! ~
寄存器 A、X = 00,Y = 08
: R7 N- d$ V4 \6 f# E* w2 f这里的ORA是怎么运算的? E1 k; n7 f( ~& Y
& ]! }+ B. j8 Y4 D; T
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
, @, w3 V% L5 o; I/ {/ W: `
; z* W. O9 I, @3 C+ m最后感谢各位大侠帮忙,呵呵。 |
|