水之境界 发表于 2012-7-2 13:31:12

汇编计算三次方的问题

本帖最后由 水之境界 于 2012-7-2 13:33 编辑

学习《零基础学习汇编》在学到10.10节,P200时遇到的,计算N的三次方(N*N*N)办法
cube:      mov ax, bx
               mul bx
               mul bx
               ret
如果N*N超过16位,怎么办,再次计算时dx的高位就被舍弃了,结果不对啊。
怎么解决,请高手指教

無邪 发表于 2012-7-6 03:04:07

计算的结果放在DX:AX中 可存放32位数据 DX放高16的 AX放低16的

水之境界 发表于 2012-7-7 21:50:34

無邪 发表于 2012-7-6 03:04 static/image/common/back.gif
计算的结果放在DX:AX中 可存放32位数据 DX放高16的 AX放低16的

这我知道。可是这个计算三次方的算法的确有问题,除非N^2在16位以内。否则必出错
页: [1]
查看完整版本: 汇编计算三次方的问题