【转帖注明出处:blog.csdn.net/lanmanck】
网上搜了一下没发现很合适的,特写出来与大家分享。
大家都知道嵌入式系统里带浮点运算指令的CPU都比较少,TI的DSP也是定点的便宜。那么我们运算时想把浮点数速度提高怎么办?有人就想到了,把浮点转成定点就可以了。好了IQmath就是干这个事的。
举个例子,有个数为0.2,直接用C语言也可以做,那么IQMath怎么用?
例如我们调用一个IQ16(0.2),它的意思是,返回一个32bit的数,这个数=IQ16(0.2)=2^16 * 0.2 = 65536 * 0.2 = 13107。也就是说IQ16是2的16次幂,然后乘于浮点数,把小数点扔掉,13107就是IQ运算的数。其他浮点数也用IQ16包起来,大家都用这个IQ数进行运算,速度提高了!
不妥之处请指出啊~~~
时间: 2024-11-13 08:24:31