您的位置:首页 > 其它

与afreez一起学习DSP中浮点转定点运算--浮点与定点概述

2006-12-10 00:00 288 查看

一:浮点与定点概述

--------------------------------------------------------
声明:
此文为原创,欢迎转载,转载请保留如下信息
作者:afreez 北京-中关村
联系方式:afreez.gan@gmail.com (欢迎与作者交流)
初次发布时间:2006-12-09
初次发布在: http://blog.csdn.net/ganxingming/
不经本人同意,不得用语商业或赢利性质目的,否则,作者有权追究相关责任!
---------------------------------------------------------

1.1相关定义说明

定点数:通俗的说,小数点固定的数。以人民币为例,我们日常经常说到的如123.45¥,789.34¥等等,默认的情况下,小数点后面有两位小数,即角,分。如果小数点在最高有效位的前面,则这样的数称为纯小数的定点数,如0.12345,0.78934等。如果小数点在最低有效位的后面,则这样的数称为纯整数的定点数,如12345,78934等。
浮点数:一般说来,小数点不固定的数。比较容易的理解方式是,考虑以下我们日常见到的科学记数法,拿我们上面的数字举例,如123.45,可以写成以下几种形式:
12.345x101
1.2345 x102
0.12345 x103
……
为了表示一个数,小数点的位置可以变化,即小数点不固定。

1.2定点数与浮点数的对比

为了简单的把问题描述清楚,这里都是十进制数字举例,详细的分析,大家可以在后面的文章中看到。
(1) 表示的精度与范围不同
例如,我们用4个十进制数来表达一个数字。对于定点数(这里以定点整数为例),我们表示区间[0000,9999]中的任何一个数字,但是如果我们要想表示类似1234.3的数值就无能为力了,因为此时的表示精度为1/100=1;如果采用浮点数来表示(以归整的科学记数法,即小数点前有一位有效位,为例),则可以表示[0.000,9.999]之间的任何一个数字,表示的精度为1/103=0.001,精度比上一种方式提高了很多,但是表示的范围却小了很多。
也就是说,一般的,定点数表示的精度较低,但表示的数值范围较大;而浮点数恰恰相反。
(2) 计算机中运算的效率不同
一般说来,定点数的运算在计算机中实现起来比较简单,效率较高;而浮点数的运算在计算机中实现起来比较复杂,效率相对较低。
(3) 硬件依赖性
一般说来,只要有硬件提供运算部件,就会提供定点数运算的支持(不知道说的确切否,没有听说过不支持定点数运算的硬件),但不一定支持浮点数运算,如有的很多嵌入式开发板就不提供浮点运算的支持。

1.3与DSP的关系

一般说来,DSP处理器可以分为两大类:定点与浮点。两者相比较而言,定点DSP处理器速度快,功耗低,价格也便宜;而浮点DSP则计算精度高,动态范围大。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: