|
关于逻辑、移位这几个指令* j4 M" F; d; D! `
( _1 {, m. E% N: k比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A7 m5 W1 ]- u# q0 ?2 X& A9 e! c7 G2 ~! @
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?
3 g: c/ y8 N% P所以请教高手指点。
# m! I5 Y+ V+ G/ d% B) I$ G还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?# A* T% K: ^/ B+ \, U) p3 G
+ b( j( j% c( q2 }/ H
找个带逻辑的断点如超级魂斗罗:
& a1 p, j& {, J. i3 X8 |以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00* F& U+ j/ D Z" Q( O; K
上一句是 1D 66 05 ORA $0566,X @$0566=$00+ j7 x) s# J2 E0 @
寄存器 A、X = 00,Y = 08' [7 o; L& C% d" Y' C
这里的ORA是怎么运算的?+ j) D; r5 q a& i$ j7 C
! \$ t2 e0 a$ v) j; U9 t还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
2 J- g' J" f6 ^, r' [4 _) a3 V* U6 c1 x7 ~( T* ^+ P5 \
最后感谢各位大侠帮忙,呵呵。 |
|