浮点型运算当然不如定点快,但是它精度高啊。
“I” =>integer(整数)"Q"=>quotient(商;系数)--小数
"I3Q5"=>三位整数,5位小数。
在IQmath库的数据类型表里面,可以清晰的看出来。
IQmath 库是一系列高优化和高精度的数学函数集合,移植浮点运算到定点代码中。在应用之前必须要设置好相应的变量的分辨率,否则会出现溢出的情况发生,相比于用标准ANSI C 编写的数学运算代码,采用IQmath 库的应用程序能得到较理想的运算速度,而且提升不少。
只需要在程序中添加#include "IQmath/IQmathLib.h",便可以调用Iqmath 库函数了,以下是IQmath 的一个例子。
/////////////////////////////////////////////////////////////////////////////////////////////////////////
#include "IQmath/IQmathLib.h"
int main(void)
{
_iq24 X, Y, Z
X = _IQ24(1.0)
Y = _IQ24(7.0)
Z = _IQ24div(X, Y)
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////
IQmath 库中包含了5 组函数集:
1、 格式转换函数;
2、 算术函数;
3、 三角函数;
4、 常用的数学运算函数;
5、 其他。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)