|
关于逻辑、移位这几个指令
1 Y* R9 E/ G* P' h
. h* f: z* C R% i9 O; \比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A7 s, `: h1 I' d' X. K0 ^4 {( j
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?
5 `3 k( p7 F3 P3 o所以请教高手指点。- f4 f7 g1 G5 J% H' x5 V7 S! d) N
还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?0 F- G3 Q8 m; W# b. Z& K$ F
8 g8 F, W5 q b! H( b( ]找个带逻辑的断点如超级魂斗罗:
3 c; J) s+ L! b* e- G% @+ ]以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00- s- W/ j2 B. ?; o, g
上一句是 1D 66 05 ORA $0566,X @$0566=$009 n+ w' x. a) A/ _5 i3 k
寄存器 A、X = 00,Y = 08! Q: T. x7 B p. F/ |
这里的ORA是怎么运算的?) t' K/ I! S( X, c, R
( p- [# z, x( T9 l/ r u5 D" `
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
+ |! n3 Z7 `4 l$ V+ F
1 ]6 I& `( O1 \3 M最后感谢各位大侠帮忙,呵呵。 |
|