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

所属分类: 软件编程 / C 语言 阅读数: 45
收藏 0 赞 0 分享

3.定点数的加减乘除运算

简单的说,各种运算的原则就是先把待运算的数据放大一定的倍数,在运算的过程中使用的放大的数据,在最终需要输出结果的时候再调整回去。

举个例来说,有如下运算:

复制代码 代码如下:

// coefs1 = 0.023423; coefs2=0.2131

float coefs1,coefs2;

int result;

result = 34* coefs1+72* coefs2;

代码的意思是,该模块需要输出一个整型的结果,但计算的过程中有浮点的运算。如果在定点的DSP中,这段代码是无法运行的。

为了解决这个问题,我们可以这样处理:首先,把coefs1,coefs2等类似的浮点数据扩大一定的倍数(具体扩大多少倍,依据精度要求不同),我们暂且把小数点向右移动4位,也就是扩大的倍数为:*10000,在最终的输出的时候在缩小相同的倍数。修改后的代码大致如下:

复制代码 代码如下:
// coefs1 = 234; coefs2= 2131

int coefs1,coefs2;

int result;

result = 34* coefs1+72* coefs2;

result /= 10000;

当然,上面的例子为了大家好理解,写的可能不是太正确,不过基本的精髓应该是这些了。具体的处理过程,大家可以在网上搜索“第3章  DSP芯片的定点运算.doc”这篇文章,写的很具体,这里不再罗嗦了。

以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

C++学生信息管理系统

这篇文章主要为大家想详细介绍了C++学生信息管理系统的实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

C++俄罗斯方块游戏 无需图形库的俄罗斯方块

这篇文章主要为大家详细介绍了无需图形库的C++俄罗斯方块游戏,重温经典游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

浮点数在计算机中存储方式是怎样的

这篇文章介绍了浮点数在计算机中是如何存储的,讲解的比较详细,有需要的朋友可以参考一下。
收藏 0 赞 0 分享

DSP中浮点转定点运算--浮点与定点概述

本文主要介绍DSP中浮点与定点概述,很值得学习一下,需要的朋友可以参考一下。
收藏 0 赞 0 分享

DSP中浮点转定点运算--浮点数的存储格式

本文主要介绍DSP中浮点数的存储格式,很值得学习一下,需要的朋友可以参考一下。
收藏 0 赞 0 分享

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

本文主要介绍DSP中定点数的加减乘除运算,很值得学习一下,需要的朋友可以参考一下。
收藏 0 赞 0 分享

解决了个困扰了2天的问题,定点运算问题

本文主要讲解定点运算问题,需要的朋友可以参考一下。
收藏 0 赞 0 分享

DSP中浮点转定点运算--定点数模拟浮点数运算及常见的策略

本文主要讲解DSP中定点数模拟浮点数运算及常见的策略,具有参考价值,需要的朋友可以参考一下。
收藏 0 赞 0 分享

DSP中浮点转定点运算--举例及编程中的心得

本文主要讲解DSP浮点转定点运算举例及编程中的心得 ,具有参考价值,需要的朋友可以参考一下。
收藏 0 赞 0 分享

从汇编看c++中的多态详解

下面小编就为大家带来一篇从汇编看c++中的多态详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多