源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

DSP中浮点转定点运算--定点数的加减乘除运算

  • 时间:2020-02-27 00:39 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:DSP中浮点转定点运算--定点数的加减乘除运算
[b]3.定点数的加减乘除运算[/b] 简单的说,各种运算的原则就是先把待运算的数据放大一定的倍数,在运算的过程中使用的放大的数据,在最终需要输出结果的时候再调整回去。 [b]举个例来说,有如下运算:[/b]
[u]复制代码[/u] 代码如下:
… // coefs1 = 0.023423; coefs2=0.2131 float coefs1,coefs2; int result; … result = 34* coefs1+72* coefs2; …
代码的意思是,该模块需要输出一个整型的结果,但计算的过程中有浮点的运算。如果在定点的DSP中,这段代码是无法运行的。 为了解决这个问题,我们可以这样处理:首先,把coefs1,coefs2等类似的浮点数据扩大一定的倍数(具体扩大多少倍,依据精度要求不同),我们暂且把小数点向右移动4位,也就是扩大的倍数为:*10000,在最终的输出的时候在缩小相同的倍数。修改后的代码大致如下:
[u]复制代码[/u] 代码如下:
// coefs1 = 234; coefs2= 2131 int coefs1,coefs2; int result; … result = 34* coefs1+72* coefs2; result /= 10000; …
当然,上面的例子为了大家好理解,写的可能不是太正确,不过基本的精髓应该是这些了。具体的处理过程,大家可以在网上搜索“第3章  DSP芯片的定点运算.doc”这篇文章,写的很具体,这里不再罗嗦了。 以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部