|
关于逻辑、移位这几个指令
# [6 ^# q! D$ H# q8 O5 z; b, l6 p, |, p7 u# l9 O8 x
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A2 I/ [. H6 r' t+ g, m. A, `
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?
$ a3 N6 `2 z. C7 j- [9 [所以请教高手指点。8 y) c; K S- Z/ b
还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?8 }; h+ y7 Y' v! m7 d, S
/ t! |0 L% l: x0 ?
找个带逻辑的断点如超级魂斗罗:# s: I6 n) `# G* R2 B4 U+ i
以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00. s a/ o* l$ K9 y0 V4 r
上一句是 1D 66 05 ORA $0566,X @$0566=$004 D* s6 s0 T1 |+ P+ b& }% u
寄存器 A、X = 00,Y = 08
$ \+ q5 N9 |; Z2 `7 |2 z7 d% O这里的ORA是怎么运算的?, C$ x& b5 r" Y) S. W2 ]1 d; ~
! F) Z% f% t4 Q/ z$ g3 Z) V
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?3 C4 I- N: S8 x0 v5 F
. |$ O" Z! ?6 R最后感谢各位大侠帮忙,呵呵。 |
|