|
关于逻辑、移位这几个指令
* G" \! {2 H) m9 w
& z- H9 @% E) w2 Z0 P比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A
5 _; _4 s- s: j; R2 M我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?" g: \8 Q$ d2 a: r4 R
所以请教高手指点。* |, ^; T( ?9 H2 T: x* f8 P
还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?7 g8 X2 P1 {0 g5 F4 a1 g) q
2 s! j/ L' D& x" V$ ~5 Z/ ~7 O6 J) ]
找个带逻辑的断点如超级魂斗罗:
$ e; r3 B E* r0 J- [+ A& ?* k以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00% }+ h7 }& o" Q. d
上一句是 1D 66 05 ORA $0566,X @$0566=$00
Z2 _! G7 q8 l" n% M6 R寄存器 A、X = 00,Y = 08
, W6 u2 E, j, b$ H3 V! X" ~2 I& H+ e$ ^这里的ORA是怎么运算的?
- {8 [! {# \" F: R: I4 T8 V- F, G; Y) }4 W3 G6 E
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
( R0 V# }2 s) c! {8 m( S" h- [+ i. N; I3 s! u; V
最后感谢各位大侠帮忙,呵呵。 |
|