浮点数的运算方法.ppt

上传人:牧羊曲112 文档编号:6476861 上传时间:2023-11-03 格式:PPT 页数:16 大小:255.32KB
返回 下载 相关 举报
浮点数的运算方法.ppt_第1页
第1页 / 共16页
浮点数的运算方法.ppt_第2页
第2页 / 共16页
浮点数的运算方法.ppt_第3页
第3页 / 共16页
浮点数的运算方法.ppt_第4页
第4页 / 共16页
浮点数的运算方法.ppt_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《浮点数的运算方法.ppt》由会员分享,可在线阅读,更多相关《浮点数的运算方法.ppt(16页珍藏版)》请在三一办公上搜索。

1、四.浮点运算器与浮点数运算,浮点运算器通常由 处理阶码的 和 处理尾数的 两个定点运算器组成 在早期的小或微型机中,浮点运算器通常以 任选件方式提供给用户,主要用于计算浮点数浮点数加减运算 对阶 执行加减 规格化 舍入(右归)判溢出浮点数乘除运算阶码加减 尾数乘除 舍入与规格化处理 判溢出,浮点数在计算机内的格式,浮点数:X=MS ES Em-1.E2 E1 M-1M-2.M-n,符号位 阶码位 尾数数码位 总位数,短浮点数:1 8 23 32,长浮点数:1 11 52 64,临时浮点数:1 15 64 80,IEEE 标准:阶码用移码,基为2;尾数用原码,浮点数的阶码的位数决定数的表示范围,

2、尾数的位数决定数的有效精度。,浮点数在计算机内的格式,IEEE 标准:尾数用原码,浮点数是数学中实数的子集合,由一个纯小数乘上一个指数值来组成。在计算机内,其纯小数部分被称为浮点数的尾数,对非 0 值的浮点数,要求尾数的绝对值必须=1/2,称满足这种表示要求的浮点数为规格化表示;把不满足这一表示要求的尾数,变成满足这一要求的尾数的操作过程,叫作浮点数的规格化处理,通过尾数移位和修改阶码实现。,浮点数在计算机内的格式,IEEE 标准:尾数用原码,按国际电子电气工程师协会规定的标准,浮点数的尾数要用原码表示,即符号位 Ms:0 表示正,1 表示负,且非 0 值尾数数值的最高位 M-1 必为 1,才

3、能满足浮点数规格化表示的要求;既然非 0 值浮点数的尾数数值最高位必定为 1,则在保存浮点数到内存前,通过尾数右移,强行把该位去掉,用同样多的尾数位就能多存一位二进制数,有利于提高数据表示精度,称这种处理方案使用了隐藏位技术。当然,在取回这样的浮点数到运算器执行运算时,必须先恢复该隐藏位。,浮点数在计算机内的格式,X=Ms Es Em-1.E1 E0 M-1 M-2.M-n,IEEE 标准:阶码用移码,基为2,按国际电子电气工程师协会规定的国际通用标准,浮点数的阶码用整数给出,并且要用移码表示,用作为以 2为底的指数的幂。既然该指数的底一定为 2,可以不必在浮点数的格式中明确表示出来,只需给出

4、阶码的幂值即可。移码表示只用于表示整数,只用在浮点数的阶码部分,其定义类似于整数的补码定义,差别在符号位。移码的符号位是 0 表示负,1 表示正,与补码的符号位正好相反,移码是指机器数在数轴上有个移位关系;移码的数值位则与补码的数值位完全相同。,浮点数格式:关于移码的知识,移码表示只用于表示整数,只用在浮点数的阶码部分。一位符号位和 n 位数值位组成的移码,其定义为;E移=2n+E-2n=E2n 表示范围:00000000 11111111,浮点数格式:关于移码的知识,一位符号位和 n 位数值位组成的移码,其定义为;E移=2n+E-2n=E2n 表示范围:00000000 11111111 负

5、数 正数 机器数,0,移码只执行二数的加减运算与增 1、减 1 操作。加减运算时,符号位计算结果求反后,才是加减运算的正确符号位的值。注意:当用双符号位时,00代表负,01代表正,而不是11代表正,8 位的阶码能表示-128+127,当阶码为-128时,其补码表示为 00000000,该浮点数的绝对值2-128,人们规定此浮点数的值为零,若尾数不为 0 就清其为 0,并特称此值为机器零。,8 位移码表示的机器数为数的真值在数轴上向右平移了 128 个位置,-128,+127,浮点数在计算机内的格式,EX,阶码用移码,尾数用原码表示浮点数的好处:(1)机器零为浮点数的所有各位均为零;(2)二浮点

6、数比大小时,可不必区分阶码位 和数据位,可视同比二定点小数一样对待,浮点数算术运算,(1)对阶操作,求阶差:E=EX-EY,使阶码小的数的尾数右移E位,其阶码取大的阶码值;(2)尾数加减;(3)规格化处理;(4)舍入操作,可能带来又一次规格化;(5)判结果的正确性,即检查阶码上下溢出,浮点数加减运算,浮点数加运算举例,X=2010*0.11011011,Y=2100*(-0.10101100)写出X、Y的正确的浮点数表示:阶码用 4 位移码 尾数用 9 位原码(含符号位)(含符号位)X浮=0 1010 11011011 Y浮=1 1100 10101100为运算方便,尾数写成模 4 补码形式:

7、MX补=00 11011011 MY补=11 01010100,浮点数加运算举例,X=2010*0.11011011,Y=2100*(-0.10101100)(1)计算阶差:E=EX-EY=EX+(-EY)=1 010+0 100=0 110 注意:阶码计算结果的符号位在此变了一次反,结果为-2 的 移码,是X的阶码值小,使其取 Y 的阶码值1100(即+4);因此,修改 MX补=00 0011011011(即右移 2 位)(2)尾数求和:00 0011011011+11 01010100 11 1000101011,浮点数加运算举例,X=2010*0.11011011,Y=2100*(-0.

8、10101100)(3)规格化处理:相加结果的符号位与数值的最高位同值,应执行一次左规操作,故得 MX补=1 000101011,EX移=1 011(4)舍入处理:采用 0 舍 1 入方案,要入,在最低位加 1 11 00010101+00 00000001 11 00010110(其原码表示为 1 11101010)(5)检查溢出否:和的阶码为 1011,不溢出计算后的 X移=1 1011 11101010,即 23*(-0.11101010),浮点数算术运算,(1)阶码加、减:乘:EX+EY,除:EX-EY(2)尾数乘、除:乘:EX*EY,除:EX/EY(3)规格化处理;(4)舍入操作,可

9、能带来又一次规格化;(5)判结果的正确性,即检查阶码上下溢出,浮点数乘除运算,浮点数乘法运算举例,X=2010*0.1011,Y=2100*(-0.1101)写出X、Y的正确的浮点数表示:阶码用 4 位移码 尾数用 9 位原码(含符号位)(含符号位)X浮=0 1010 1011 Y浮=1 1100 1101,浮点数乘运算举例,X=2010*0.1011,Y=2100*(-0.1101)(1)阶码相加:积的阶码=EX+EY=1 010+1 100=1 110 注意:计算结果的阶码符号位在此变了一次反,结果为+6 的 移码(2)尾数相乘:MX*MY=0.1011*(-0.1101)=-0.10001111(3)(4)(5)已是规格化数,不必舍入,也不溢出 最众乘积 MX移=1 1110 10001111,即 26*(-0.10001111),浮点数除运算举例,X=2010*0.1011,Y=2100*(-0.1101)(1)阶码相减:积的阶码=EX-EY=EX+(-EY)=1 010+0 100=0 110 注意:计算结果的阶码符号位在此变了一次反,为移码-2(2)尾数相除:MX/MY=0.1011/(-0.1101)=-0.1101(3)(4)(5)已是规格化数,不必舍入,也不溢出 最众的商 MX移=1 0110 1101,即 2-2*(-0.1101),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号