|
|
关于逻辑、移位这几个指令
; f1 t" ] `* v! B( R% @! u0 E0 K3 }- t0 A. M
比如:AND--寄存器与累加器相与,结果送累加器 A∧M→A ORA--寄存器与累加器相或,结果送累加器 A∨M→A8 v" ^& g9 e& e
我不明白逻辑与和逻辑或是怎么运算的,为什么要用逻辑指令而不是直接给A一个数值?也就是说神马情况下要用逻辑?# W5 Z9 ~9 r6 x2 H
所以请教高手指点。
& k( Y8 G! s8 @6 e1 P( [( H还有移位,算数左移逻辑右移等完全不明白,移位是怎么运算的?
% a$ z7 n5 m5 p7 ?: }( x
# K7 h; u Q* {; ?9 Q& u( F1 {找个带逻辑的断点如超级魂斗罗:% |5 k7 e0 i D6 r% l& I# k. g
以金身地址D4下断,其中一个断点在 B4 D4 LDY $D4,X @$00D4=$00
, v6 k4 ~8 r# p5 ~上一句是 1D 66 05 ORA $0566,X @$0566=$009 x9 K# G' O$ ]- e, n* u
寄存器 A、X = 00,Y = 08
2 f* R, N" k' K. }这里的ORA是怎么运算的?6 _; T b; T1 F& d; A
/ ~# b4 l, {) a( R! X* D% x还有个Z80的指令,inc hl 和 inc (hl)有什么区别?
) [! g* @9 d j3 \" m# E, ]& J/ Q
% t2 H! c2 f7 J+ Y最后感谢各位大侠帮忙,呵呵。 |
|