除法的运算
时间:10-02
整理:3721RD
点击:
在汇编中没有直接进行除法的指令,如何有效快速的进行除法运算,请各位老师、高手指教,小弟不胜感激!!
C64x系列的一块芯片,它自己支持的汇编程序中没有除法,要通过60-120个周期用移位和减法才能实现除法,有什么快速的办法没有,这种除法在图像处理中不可行,数据量太大了,比如前后两帧图像的对应象素点a1和a2,作如下处理(a1×49+a2)/50
尽量避免除法,你给的例子可以用*0.02代替。
如果除数就相同,就先计算出其倒数,其后全部用乘法。
我是个新手,倒数的求法也不知道,请大家教教我
C64x对浮点的运算快吗??
C64不直接支持浮点运算吧。
你需要做何种除法运算?如果是除50这样的常数,那么就自己转换为*0.02。
如果除数是变量,那么只有除了。但是若在某个循环中除数不变,则可先求其倒数,然后做乘法。倒数的求法就用1/x即可。这样只用做一次除法。
另外由于C64不支持浮点,所以应该用定点小数来做计算。
谢谢各位!
对于C64系列,定点小数的乘法会比除法快了,是不是?
另外,如何用汇编实现除法?