欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    浮点数和浮点运算器检错、纠错码.ppt

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

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

    浮点数和浮点运算器检错、纠错码.ppt

    1,第一单元 第六讲,浮点数和浮点运算器检错、纠错码,2,内容提要,浮点数科学表示法十进制科学表示法二进制科学表示法IEEE 754 浮点数标准计算机内的浮点数表示表示范围 vs.表示精度数制转换数据类型,3,计算机内的数据,计算机的功能:处理数据n 位能表示哪些数据?无符号整数:0 to 2n-1有符号整数:-2(n-1)to 2(n-1)-1其它数据呢?大整数?(如:一个世纪的秒数)3,155,760,00010(3.1557610 x 109)非常小的数?(如:原子的直径)0.0000000110(1.010 x 10-8)有理数(如:循环小数)2/3(0.666666666.)无理数21/2无限不循环小数:e(2.718.),(3.141.),4,科学计数法,6.02 x 1023,规格化形式:no leadings 0s(小数点前仅有1位非0数字)1/1,000,000,000的不同表示形式:规格化:1.0 x 10-9非规格化:0.1 x 10-8,10.0 x 10-10,5,二进制的科学计数法,1.02 x 2-1,尾数,浮点数的算术运算二进制小数点不是固定在某位上C语言中的 float型数据,6,浮点数的计算机内部表示,规格化形式:+1.xxxxxxxxxx2*2yyyy2字长的整数倍(32 bits),S 表示 符号位Exponent 表示 y,即阶Significand 表示 x,即尾数的后部分十进制表示范围:2.0 x 10-38 至 2.0 x 1038,7,上溢和下溢,上溢数值太大(2.0 x1038)阶的值超出8位能表示的范围下溢数值太小 0,2.0 x10-38阶码超出了8位二进制位能表示的范围如何减少上溢和下溢?,8,双精度浮点数,使用双字(64 位),C 语言中的 double 类型十进制的范围扩展到2.0 x 10-308 至 2.0 x 10308 最主要的好处是精度得到了扩展(52 位),0,31,S,Exponent,30,20,19,Significand,1 bit,11 bits,20 bits,Significand(contd),32 bits,9,浮点数表示,规格化科学计数法:+1.xxxx2*2yyyy2,阶:移码表示有效数:符号 尾数表示,10,IEEE 754 浮点数标准,被几乎所有计算机采纳(自1980年起)符号位:有效位:使用原码表示规格化小数中,隐含最高位1单精度为:1+23 位,双精度为 1+52 位0 有效数 10 不可能出现为1的位在阶码中保留0给数0,1 表示负数0 表示正数,(-1)S*(1+Significand)*2Exp,11,阶的移码表示,在IEEE 754中,浮点数的阶不用补码表示,采用移码表示最小的阶:000000012最大的阶:111111102移码:在真正的阶上加一个规定的值对单精度浮点数:+127对双精度浮点数:+10231.0*2-1,(-1)S*(1+Significand)*2(Exponent-Bias),0 0111 1110 0000 0000 0000 0000 0000 000,12,IEEE 754 的阶,可以在没有浮点运算器的情况下使用浮点数直接使用整数比较将浮点数分解成三个部分:符号位,阶和有效数可进行快速比较直接作为两个定点小数比较,13,尾数,尾数用原码表示最高位为1含义:十进制:1.6732=(1x100)+(6x10-1)+(7x10-2)+(3x10-3)+(2x10-4)二进制:1.1001=(1x20)+(1x2-1)+(0 x2-2)+(0 x2-3)+(1x2-4),(-1)S*(1+Significand)*2(Exponent-Bias),14,浮点数的二十进制转换,符号位:0=正数阶:0110 10002=10410移码校正:104-127=-23有效数:1+1x2-1+0 x2-2+1x2-3+0 x2-4+1x2-5+.=1+2-1+2-3+2-5+2-7+2-9+2-14+2-15+2-17+2-22=1.0+0.666115,十进制值:1.666115*2-23 1.986*10-7,15,浮点数十二进制转换(1/2),简单情况:如果除数是2的整数倍,则比较简单如:-0.75的二进制-0.75=-3/4-112/1002=-0.112规格化为:-1.12 x 2-1(-1)S x(1+Significand)x 2(Exponent-127)(-1)1 x(1+.100 0000.0000)x 2(126-127),16,浮点数十二进制转换(2/2),除数不是2的整数倍该数无法精确表示可能需要多位有效位来保证精度难点:如何得到有效位?循环小数有一个循环体转换求出足够多的有效位.根据精度要求(单、双)截断多余的位。按标准要求给出符号位、阶和有效位。,17,转换举例,有效位:101 0101 0101 0101 0101 0101 符号位:负=1阶:1+127=12810=1000 00002,-3.3 3 3 3 3 3,=-1.1010101.x 21,18,特殊的浮点数值,-(1-2-24)*2128,(1-2-24)*2128,-.5*2-127,.5*2-127,正溢出,负溢出,可表示的正数,可表示的负数,正下溢,负下溢,0,19,Not a Number,下列结果是什么:sqrt(-4.0)or 0/0?如果无穷大不是错误的话,那以上也不算称其为 Not a Number(NaN)阶=255,有效位非0应用NaNs 可帮助排错自包含:op(NaN,X)=NaN千万不要用它请教数学家,20,非规格化数,问题:在0周围还有一些空隙没有用来表示浮点数最小的正数:a=1.0 2*2-126=2-126次小的正数:b=1.0 01 2*2-126=2-126+2-150a-0=2-126b-a=2-150解决办法:使用非规格化数:没有隐含的前导1最小的正数:a=2-150 次小的正数:b=2-149,21,舍入,浮点数的算术运算=舍入类型转换时也需要舍入Double single precision integer向上舍入2.001=3;-2.001=-2向下舍入1.999=1;-1.999=-2截断丢弃最后的位(向0舍入),22,浮点运算的特点,浮点加、减法不满足结合律!x=1.5 x 1038,y=1.5 x 1038,and z=1.0 x+(y+z)=1.5x1038+(1.5x1038+1.0)=1.5x1038+(1.5x1038)=0.0(x+y)+z=(1.5x1038+1.5x1038)+1.0=(0.0)+1.0=1.0浮点数加法、减法不可结合!浮点数也不能进行相等比较!为什么?浮点数算术运算的结果是近似值。,23,浮点数加、减法,不能只对尾数进行运算算法对阶,求阶差:E=EX-EY,使阶码小的数的尾数右移E位,其阶码取大的阶码值;对尾数进行加、减法,求得结果保持阶的值规格化舍入,可能再次规格化进行溢出检查(阶码),24,加、减运算举例,例1:1.011023+1.1000 22对阶:1.011023+0.1100 23 加法:10.001023规格化:1.000124,例2:1.000123-1.1110 21对阶:1.000123-0.01111 23 减法:0.1001123规格化:1.0011221.001022,25,浮点数乘、除法,算法阶码加、减:乘:EX+EY,除:EX-EY对尾数进行乘、除法,求得结果规格化舍入,可能再次规格化进行溢出检查(阶码),26,27,浮点运算部件,28,数据及数据类型,1.986*10-7878,003,010“4UCB”ADD R0,R1计算机中的数据可以表示任何事情:指令、操作数等,由上层次的抽象计算机来判断。对存储内容的错误理解:将ASCII码当作浮点数,指令作为数据,整数可能成为指令,.程序中的安全漏洞,29,小结,计算机中的浮点数是我们实际使用的数的近似值IEEE 754 浮点数标准是浮点数运算中广为接受的标准浮点数运算一般由专门的浮点运算器完成阶码运算尾数运算计算机中的二进制位只有在上下文才有意义,单独的一个字不代表任何含义。,30,检错纠错码,为了提高计算机的可靠性,除了采取选用更高可靠性的器件,更好的生产工艺等措施之外,还可以从数据编码上想一些办法,即采用一点冗余的线路,在原有数据位之外再增加一到几位校验位,使新得到的码字带上某种特性,之后则通过检查该码字是否仍保持有这一特性,来发现是否出现了错误,甚至于定位错误后,自动改正这一错误,这就是我们这里说的检错纠错编码技术。,31,几种常用的检错纠错码,我们只介绍两种常用的检错纠错码:奇偶检错码,用于并行数据传送中海明检错与纠错码,用于并行数据传送中循环冗余码,用于串行数据传送中,编码过程,译码过程,传送,原始数据,码 字,结果数据,形成校验位的值,加进特征,检查接送的码字,发现/改正错误,32,奇偶校验码,用于并行码检错原理:在 k 位数据码之外增加 1 位校验位,使 K+1 位码字中取值为 1 的位数总保持为 偶数(偶校验)或 奇数(奇校验)。例如:0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 0 1 原有数字位 两个新的码字,偶校验,奇校验,校验位,33,奇偶校验码的实现电路,+,奇校验 偶校验 出错指示,+,+,+,+,+,+,+,同左侧电路,编码电路,译码电路,P(校验位),八位数据位,D7 D6 D5 D4 D3 D2 D1 D0,p,34,海明校验码,用于多位并行数据检错纠错处理实现:为 k 个数据位设立 r 个校验位,使 k+r 位的码字同时具有这样两个特性:1.能发现并改正 k+r 位中任何一位出错,2.能 发 现 k+r 位中任何二位同时出错,但已无法改正。,35,海明码的编码方法,合理地用 k 位数据位形成 r 个校验位的值,即保证用 k 个数据位中不同的数据位组合来形成每个校验位的值,使任何一个数据位出错时,将影响 r 个校验位中不同的校验位组合起变化。换言之,通过检查是哪种校验位组合起了变化,就能确定是哪个数据位错,对该位求反则实现纠错。有时两位错与某种情况的一位错对校验位组合的影响相同,必须加以区分与解决。,36,海明编码数据位与校验位关系,1.数据位有k位,校验位有r位,如要求可发现并改正一位错,则:2r个不同的编码中,至少 有1个编码来表示没有错误;有k+r个编码来表示其中哪一为出错。即:2r k+r+12.如果还需要发现两位错,则 2r-1 k+r,37,P1=D2+D1P2=D3+D1P3=D3+D2,海明码的实现方案 例如:k=3,r=4,D3 D2 D1 P4 P3 P2 P1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1,P4=P3+P2+P1+D3+D2+D1,S1=P1+D2+D1S2=P2+D3+D1S3=P3+D3+D2S4=P4+P3+P2+P1+D3+D2+D1,+:异或,编码方案,译码方案,38,P1=D2+D1P2=D3+D1P3=D3+D2,海明码的实现原理 例如:k=3,r=4,D3 D2 D1 P4 P3 P2 P1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1,P4=P3+P2+P1+D3+D2+D1,S1=P1+D2+D1S2=P2+D3+D1S3=P3+D3+D2S4=P4+P3+P2+P1+D3+D2+D1,39,检错纠错码小结,1.K位码有2K 个编码状态,全用于表示合法码,则任何一位出错,均会变成另一个合法码,不具有检错能力2.从一个合法码变成另一个合法码,只少要改变几位码的值,称为最小码距(码距)3.K+1 位码,只用其 2K 个状态,可使码距 为 2,如果一个合法码中的一位错了,就成为非法码,通过检查码字的合法性,就得到检错能力,这就是奇偶校验码。,40,检错纠错能力,4.对 k 位数据位,当给出 r 位校验位时,要发现并改正一位错,须 满 足 如 下 关 系:2r=k+r+1,要发现并改正一位错,也能发现两位错,则应:2r-1=k+r,此时码距为 4。5.若最小码距为 d(d=2),能发现 d-1 位错,或 改正(d-2)/2(取整)位错,要发现 l 位错,并改正 t 位错,应满足如下条件:d=l+t+1(l=t),41,作业,阅读:结构化计算机组成附录B实验:1.完成教材中表2.24和表2.25。(P114)2.在TEC-2000上用汇编语言实现1+2+3+103.用机器语言实现上述任务。书面作业:教材 P131 2.19 2.26所有书面作业请于10月8日交到9区407,42,节日快乐!,

    注意事项

    本文(浮点数和浮点运算器检错、纠错码.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开