欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年定点与浮点运算的比较 .pdf

    • 资源ID:34263723       资源大小:359.27KB        全文页数:6页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年定点与浮点运算的比较 .pdf

    定点与浮点运算DSP 的比较定点运算 DSP在应用中已取得了极大的成功, 而且仍然是 DSP应用的主体。然而,随着对 DSP 处理速度与精度、存储器容量、编程的灵活性和方便性要求的不断提高、自 80 年代中后期以来,各DSP生产厂家陆续推出了各自的32bit浮点运算 DSP。和定点运算 DSP 相比,浮点运算 DSP 具有许多优越性:浮点运算 DSP 比定点运算 DSP 的动态范围要大很多。 定点 DSP的字长每增加 1bit,动态范围扩大 6dB。16bit 字长的动态范围为96dB。程序员必须时刻关注溢出的发生。 例如,在作图像处理时, 图像作旋转、 移动等,就很容易产生溢出。这时,要么不断地移位定标, 要么作截尾。 前者要耗费大量的程序空间和执行时间,后者则很快带来图像质量的劣化。总之,是使整个系统的性能下降。在处理低信噪比信号的场合, 例如进行语音识别、 雷达和声纳信号处理时, 也会发生类似的问题。而 32bit 浮点运算 DSP 的动态范围可以作到1536dB,这不仅大大扩大了动态范围, 提高了运算精度, 还大大节省了运算时间和存储空间,因为大大减少了定标,移位和溢出检查。由于浮点 DSP 的浮点运算用硬件来实现,可以在单周期内完成,因而其处理速度大大高于定点DSP。这一优点在实现高精度复杂算法时尤为突出,为复杂算法的实时处理提供了保证。 32bit 浮点 DSP 的总线宽度较定点DSP宽得多,因而寻址空间也要大得多。这一方面为大型复杂算法提供了可能、因为省的DSP 目标子程序已使用到几十MB 存储器或更多; 另一方面也为高级语言编译器、DSP操作系统等高级工具软件的应用提供了条件。 DSP 的进一步发展,必然是多处理器的应用。新型的浮点DSP 已开始在通信口的设置和强化、资源共享等方面有所响应。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 一:浮点与定点概述-声明:此文为原创,欢迎转载,转载请保留如下信息作者: afreez 北京 -中关村联系方式: (欢迎与作者交流)初次发布时间: 2006-12-09初次发布在 : http:/ 相关定义说明定点数:通俗的说,小数点固定的数。以人民币为例,我们日常经常说到的如123.45¥, 789.34¥等等,默认的情况下,小数点后面有两位小数,即角,分。如果小数点在最高有效位的前面,则这样的数称为纯小数的定点数,如0.12345,0.78934 等。如果小数点在最低有效位的后面,则这样的数称为纯整数的定点数,如12345,78934 等。 浮点数:一般说来,小数点不固定的数。比较容易的理解方式是,考虑以下我们日常见到的科学记数法,拿我们上面的数字举例,如123.45,可以写成以下几种形式:12.345x1011.2345 x1020.12345 x103为了表示一个数,小数点的位置可以变化,即小数点不固定。1.2 定点数与浮点数的对比为了简单的把问题描述清楚,这里都是十进制数字举例,详细的分析,大家可以在后面的文章中看到。 (1)表示的精度与范围不同例如,我们用4 个十进制数来表达一个数字。对于定点数(这里以定点整数为例),我们表示区间 0000,9999中的任何一个数字,但是如果我们要想表示类似1234.3 的数值就无能为力了, 因为此时的表示精度为1/100=1;如果采用浮点数来表示(以归整的科学记数法,即小数点前有一位有效位,为例),则可以表示 0.000,9.999之间的任何一个数字,表示的精度为 1/103=0.001,精度比上一种方式提高了很多,但是表示的范围却小了很多。也就是说,一般的,定点数表示的精度较低,但表示的数值范围较大;而浮点数恰恰相反。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - (2)计算机中运算的效率不同一般说来,定点数的运算在计算机中实现起来比较简单,效率较高;而浮点数的运算在计算机中实现起来比较复杂,效率相对较低。(3)硬件依赖性一般说来, 只要有硬件提供运算部件,就会提供定点数运算的支持(不知道说的确切否,没有听说过不支持定点数运算的硬件),但不一定支持浮点数运算,如有的很多嵌入式开发板就不提供浮点运算的支持。1.3 与 DSP的关系一般说来, DSP 处理器可以分为两大类:定点与浮点。两者相比较而言,定点DSP 处理器速度快,功耗低,价格也便宜;而浮点DSP 则计算精度高,动态范围大。 二:浮点数的存储格式2.1 IEEE floating point standard上面我们说了, 浮点数的小数点是不固定的,如果每个人都按照自己的爱好存储在电脑里, 那不就乱套了吗?那么怎么在计算机中存储这种类型的数字呢?象这类古老的问题前人早都为我们做好了相应的规范,无规矩不成方圆吗。我们平时所说的浮点数的存储规范,就是由 IEEE 指定的,具体的规范文件是:IEEE Standard 754 for Binary Floating-Point Arithmetic 。大家可以很容易的从网络上下载到这篇文档。 下面,偶就大致的描述一下,感兴趣的“同志”们可以阅读原文。在 c 语言中,单精度(float)数据类型为32bits,具体的如下图所示:整个 32bits 分三部分,即 Sign:符号位, 1 bit ,0 为正, 1 为负; Exponent(bias):指数部分,8 bits ,存储格式为移码存储(后面还会说明),偏移量为 127; Mantissa(fraction):尾数部分。对应的双精度(double)类型的格式为:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 同样, 64 位也被分为了三部分,对照单精度,不用我说就可以理解各个部分的含义了吧? 是不是有点迷糊了,不要怕,理论这个东西最能忽悠人了,看起来很高深,其实也就是个屁大的事,举个例子就很容易明白了。举例说明,如3.24x103,则对应的部分为,Sign为 0,3 为指数部分(注意计算机里面存储的不是3,这里仅仅为了说明) ,3.24 为尾数。我们知道,计算机“笨”的要死,只认识 0 和 1,那么到底一个浮点数值在计算机存储介质中是如何存储的呢?例如,我们要想偷窥浮点类型的值4.25 在计算机硬盘中存储的庐山真面目,请跟我来:首先把 4.25 转换成二进制的表达方式,即100.01,在详细点,变成1.0001x22,好了,对号入座把。Sign=0; Exponent(bias)=2+127=129 (偏移量为127,就是直接加上个127 了) ;Mantissa=1.0001-1.0=0001 (规格化后,小数点前总是整数1,全世界人都知道前面是1不是 0,所以省略不写了,即尾数部分不包括整数部分;当别人问你,为什么23 bit 的尾数部分可以表示24 位的精度,知道怎么回答了吧。靠,什么,没有看懂,再仔细读两便就知道了)。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - 对照上面的图示,相信你已经看明白了吧?相信你的智商。为了加深认识,再来一个。如果给定你一个二进制数字串,01000000100010000000000000000000 ,并告诉你这是一个float类型的值,让你说出它是老几,知道怎么算了吧?如果不知道,看下面的图,我就不废话解释了。 22深入理解浮点存储格式为了更深入的理解浮点数的格式。我们使用C 语言来做一件事。在C 语言的世界里,强制类型转换,大家应该都很熟悉了。例如: float f=4.6; int i; i = (int)(f+0.5); / i=5 . 下面我们不使用强制类型转化,我们自己来计算f 转换成整形应该等于几?把主要代码帖出来,如下:/取 23+1 位的尾数部分int ival= (*(int *)(&fval) & 0 x07fffff) | 0 x800000; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - / 提取指数部分int exponent = 150 - (*(int *)(&fval) 23) & 0 xff);if (exponent 0)ival = (ival exponent);/ 如果小于 0,则将结果取反if (*(int *)&fval) & 0 x80000000)ival = -ival;好好琢磨琢磨吧, 看明白了, 就说明你基本明白了浮点数的存储格式,如果没有看明白,接着看,知道明白为止。(未完 ,待续 .) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -

    注意事项

    本文(2022年定点与浮点运算的比较 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开