|
关于逻辑、移位这几个指令% I1 G6 v6 Y& O; }, T
+ I4 ^! }; \4 U9 U; V* c) [
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A1 F9 G2 I4 T! o/ W7 }7 B1 R4 x' J
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?% _# T) n, s# q3 {( }
所以请教高手指点。
- Q" F$ O( ^* ^还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?" N: e: A: U8 o2 ~# @
) y D$ B# K9 y+ K& _+ H( L
找个带逻辑的断点如超级魂斗罗:+ x* k: |: v: t2 Q; | C, v0 A
以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00
7 g9 _+ ?' X: j! S上一句是 1D 66 05 ORA $0566,X @$0566=$00
8 c! B* \/ e" d: @) f* t/ g寄存器 A、X = 00,Y = 084 A7 n! J( n# h
这里的ORA是怎么运算的?5 R, n4 K# v/ z) n& @/ H; P/ K
7 V4 F3 W2 ^3 S# o9 [
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
8 ?. z- F& O. b
# w( b5 h" h- _3 w/ X) b最后感谢各位大侠帮忙,呵呵。 |
|