|
关于逻辑、移位这几个指令
. x# M0 z( F/ c( F3 ]4 I1 f5 ]" G8 V4 ~' F5 ?6 }0 o
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A* Q1 k, v7 d7 n
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?/ A+ H5 L8 z! r
所以请教高手指点。$ g0 L3 H, p' [; v( h+ p7 P. H( H
还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?: r3 I, O. X+ A2 Y3 i
5 W' w2 B- ?' l+ y" P- J
找个带逻辑的断点如超级魂斗罗:
+ _& e9 i% `" q1 d0 P1 @( S5 S以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00* g5 a4 i: \' z M4 p2 p2 m p
上一句是 1D 66 05 ORA $0566,X @$0566=$00) H" W) ?7 L2 C: Q
寄存器 A、X = 00,Y = 08
3 o/ k0 \9 j* }' y% O9 r这里的ORA是怎么运算的?) V% X/ Q, M3 h) k9 y
$ g6 h( s# n8 @
还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
9 O7 G: k9 R# d! L/ o/ j0 R
7 x# |( ?5 X9 O最后感谢各位大侠帮忙,呵呵。 |
|