引用
引用樓主xtl123925于2009-05-04 21:48發表的 算術運算 :
請問這幾行程序如何做
DIV K800 K3 D110
DMUL K60000 D110 D120
為何出現負數把K800換成K900就可以搞不懂哪位大俠能指點一下?
1,DIV K800 K3 D110的運算結果是:D110存放商(266),D111存放余數(2)
2,在32位運算 DMUL K60000 D110 D120指令中 軟元件被征用的范圍是:D110 和D111
結果存放于D120,D121,D122,D123
你自己算吧,D110和D111本來一個是商一個是余數,但是混合成一個32位數據后是個什么數?
再和60000乘一下,是不是得到一個怪胎!
3,你不要直接拿D110來作運算,過渡一下。比如將D110(MOV)給D115或其他寄存器,注意要跟結果寄存器保留最小的征用距離。
再試試看。