浮点数表示及运算.ppt

上传人:b****2 文档编号:2120092 上传时间:2022-10-27 格式:PPT 页数:54 大小:973KB
下载 相关 举报
浮点数表示及运算.ppt_第1页
第1页 / 共54页
浮点数表示及运算.ppt_第2页
第2页 / 共54页
浮点数表示及运算.ppt_第3页
第3页 / 共54页
浮点数表示及运算.ppt_第4页
第4页 / 共54页
浮点数表示及运算.ppt_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

浮点数表示及运算.ppt

《浮点数表示及运算.ppt》由会员分享,可在线阅读,更多相关《浮点数表示及运算.ppt(54页珍藏版)》请在冰豆网上搜索。

浮点数表示及运算.ppt

计算机组成原理计算机组成原理1计计算算机机组组成成原原理理Thursday,October27,2022浮点数表示及运算浮点数表示及运算计算机组成原理计算机组成原理2一、浮点数的表示一、浮点数的表示N=Rem=2EM=2e(m)EE00EE11EE22EEmmMM00M1M2Mn尾数值阶值阶符尾符91028=0.910-2721033=0.21034任意一个十进制数任意一个十进制数可以写成可以写成=10E(十进制表示)计算机中一个任意进制数计算机中一个任意进制数可以写成可以写成mm:

尾数尾数,是一个纯小数。

,是一个纯小数。

ee:

浮点的:

浮点的指数指数,是一个整数。

是一个整数。

RR:

基数基数,对于二进计数值的机器是一个常数,一般规定,对于二进计数值的机器是一个常数,一般规定为为22,88或或1616计算机组成原理计算机组成原理3浮点数的表示范围浮点数的表示范围负上溢-+负数正数0正上溢负下溢正下溢nN=2EMn|N|产生正上溢或者负上溢产生正上溢或者负上溢n|N|0产生正下溢或者负下溢产生正下溢或者负下溢尾数尾数:

用:

用定点小数定点小数表示,给出有效数字的位数,决定了浮点数的表示,给出有效数字的位数,决定了浮点数的表示精度表示精度阶码阶码:

用:

用定点整数定点整数形式表示,指明小数点在数据中的位置,决定了浮点数形式表示,指明小数点在数据中的位置,决定了浮点数的的表示范围表示范围。

一个机器浮点数由一个机器浮点数由阶码阶码和和尾数尾数及其及其符号符号位组成:

位组成:

最最大大正正数数最最小小正正数数最最小小负负数数最最大大负负数数计算机组成原理计算机组成原理4n8位定点小数可表示的范围n0.0000001-0.1111111n1/128-127/128n设阶码2位,尾数4位n可表示2-11*0.0001-211*0.1111n0.0000001-111.1n设阶码3位,尾数3位n可表示2-111*0.001-2111*0.111n0.0000000001-1110000n机器字长一定时,阶码越长,表示范围越大,精度越低n浮点数表示范围比定点数大,精度高计算机组成原理计算机组成原理5一个浮点数有不同的表示:

一个浮点数有不同的表示:

0.50.5;0.050.05101011;0.0050.005101022;50501010-2-2为提高数据的表示精度,需做规格化处理。

为提高数据的表示精度,需做规格化处理。

浮点数是数学中实数的子集合,由一个纯小数乘上一个指数浮点数是数学中实数的子集合,由一个纯小数乘上一个指数值来组成。

值来组成。

二、浮点数二、浮点数规格化规格化把不满足这一表示要求的尾数,变成满足这一要求的尾数把不满足这一表示要求的尾数,变成满足这一要求的尾数的操作过程,叫作浮点数的的操作过程,叫作浮点数的规格化处理规格化处理,通过,通过尾数移位和修改尾数移位和修改阶码实现阶码实现。

在计算机内,其纯小数部分被称为浮点数的尾数,对非在计算机内,其纯小数部分被称为浮点数的尾数,对非00值的浮点数,要求尾数的绝对值值的浮点数,要求尾数的绝对值必须必须=1/2=1/2,即尾数域的最高,即尾数域的最高有效位应为有效位应为1,1,称满足这种表示要求的浮点数为称满足这种表示要求的浮点数为规格化表示规格化表示:

0.10001010100.1000101010计算机组成原理计算机组成原理6规格化目的:

为了提高数据的表示精度为了数据表示的唯一性尾数为R进制的规格化:

绝对值大于或等于1/R二进制原码的规格化数的表现形式:

正数正数0.1xxxxxx负数负数1.0xxxxxx正数正数0.1xxxxxx负数负数1.1xxxxxx补码补码尾数的规格化的尾数的规格化的表现形式表现形式:

尾数的最高位与符号位相反。

尾数的最高位与符号位相反。

计算机组成原理计算机组成原理7解解:

12310=11110112=0.11110110002277移=10000+00111=101110.1111011000补=0.1111011000123浮=10111001111011000=BBD8H例例:

对数据对数据1231231010作规格化浮点数的编码,假定作规格化浮点数的编码,假定11位符号位,基位符号位,基数为数为22,阶码,阶码55位,采用移码,尾数位,采用移码,尾数1010位,采用补码。

位,采用补码。

计算机组成原理计算机组成原理8S尾数符号,0正1负;M尾数,纯小数表示,小数点放在尾数域的最前面。

采用原码表示。

E阶码,采用“移码”表示(移码可表示阶符);阶符采用隐含方式,即采用移码方法来表示正负指数。

SEM31302322032位位SEM63625251064位位为便于软件移植,使用IEEE(电气和电子工程师协会)标准IEEE754标准:

尾数用原码;阶码用“移码”;基为2。

三三、浮点数的标准格式、浮点数的标准格式IEEE754计算机组成原理计算机组成原理9规格化浮点数的真值规格化浮点数的真值x=(-1-1)s(1.)2127e=127一个规格化的一个规格化的32位浮点数位浮点数的真值为:

的真值为:

SEM3130232203232位浮点数格式:

位浮点数格式:

x=

(1)s(1.)21023一个规格化的一个规格化的64位浮点数位浮点数的真值为:

的真值为:

这里这里e是真值是真值,是是机器数机器数1.隐藏位技术隐藏位技术2.阶码用阶码用“移码移码”偏移值偏移值127而不是而不是128Emin=1,Emax=254/2046原码非0值浮点数的尾数数值最高位必定为1,则在保存浮点数到内存前,通过尾数左移,强行把该位去掉,用同样多的位数能多存一位二进制数,有利于提高数据表示精度,称这种处理方案使用了隐藏位技术。

当然,在取回这样的浮点数到运算器执行运算时,必须先恢复该隐藏位。

计算机组成原理计算机组成原理10例:

例:

若浮点数x的二进制存储格式为(41360000)16,求其32位浮点数的十进制值。

解解:

0100,0001,0011,0110,0000,0000,0000,0000数符:

0阶码:

1000,0010尾数:

011,0110,0000,0000,0000,0000指数e阶码127100000100111111100000011=(3)10包括隐藏位1的尾数:

1.M1.011011000000000000000001.011011于是有于是有x

(1)s1.M2e(1.011011011011)231011.011(11.375)10计算机组成原理计算机组成原理11例例:

将十进制数20.59375转换成32位浮点数的二进制格式来存储。

解解:

首先分别将整数和分数部分转换成二进制数:

20.5937510100.10011然后移动小数点,使其在第1,2位之间10100.100111.01001001124e4于是得到:

e=127S0,E4127131=1000,0011,M010010011最后得到32位浮点数的二进制存储格式为01000001101001001100000000000000(41A4C000)16计算机组成原理计算机组成原理12解解:

-0.75=-3/4=-0.1122=-1.12=-1.12-1-1=(-1)=(-1)11(1+0.10000000000000000000000)2(1+0.10000000000000000000000)2-1-1=(-1)=(-1)11(1+(1+0.10000000000000000000000000000000000000)2126-127126-127ss=11,E=126E=1261010=01111110=0111111022,F=F=10000001000000。

11011,1111,0011,1111,0100,0000,0000,0000,0000,0000100,0000,0000,0000,0000,0000BF400000HBF400000H例例:

将十进制数:

将十进制数-0.75-0.75表示成单精度的表示成单精度的IEEE754IEEE754标准代码。

标准代码。

计算机组成原理计算机组成原理13单精度浮点数编码格式单精度浮点数编码格式+0/-0000/1(-1)S(0.f)2(-126)f(非零)00/1(-1)S(1.f)2(e-127)f12540/1-02551+02550sNaNSignalingNaN非零0xxxx2550/1NaNNotaNumber非零1xxxx2550/1表示尾数阶码符号位计算机组成原理计算机组成原理14IEEE754IEEE754IEEE754IEEE754规格化规格化规格化规格化浮点数表示范围浮点数表示范围浮点数表示范围浮点数表示范围Emax=2046,f=1.1111,1.111122046-1023=21023(2-2-52)Emin=1,M=0,1.021-1023=2-1022双精度双精度Emax=254,f=1.1111,1.11112254-127=2127(2-2-23)Emin=1,M=0,1.021-127=2-126单精度单精度最大值最小值格式计算机组成原理计算机组成原理15设有两个浮点数设有两个浮点数和和,它们分别为它们分别为:

浮点加减法运算浮点加减法运算其中其中Ex和和Ey分别为数和的阶码,分别为数和的阶码,Mx和和My为数和的尾数。

为数和的尾数。

两浮点数进行加法和减法的运算规则是两浮点数进行加法和减法的运算规则是:

(Mx2ExEyMy)2EyEx0,ExEy若E0,ExEy通过尾数的移动来改变Ex或Ey,使其相等。

对阶原则阶码小的数向阶码大的数对齐;对阶过程小阶的尾数右移,每右移一位,其阶码加1(右规)。

(2)对阶对阶

(1)0操作数检查操作数检查210*(0.11000)+28*(0.00110)大阶对小阶大阶对小阶210*(0.11000)-28*(11.000)11.000+0.00110?

小阶对大阶小阶对大阶28*(0.00110)-210*(0.00001)0.00001+0.11000=0.11001计算机组成原理计算机组成原理18例例:

x=2010.1101,y=211(-0.1010),求x+y=?

解解:

为便于直观了解,两数均以补码表示,阶码、尾数均采用双符号位。

x补=0001,00.1101y补=0011,11.0110E补=Ex补Ey补=0001+1101=1110E=-2,表示Ex比Ey小2,因此将x的尾数右移两位.右移一位,得x补=0010,00.0110再右移一位,得x补=0011,00.0011至此,E=0,对阶完毕.计算机组成原理计算机组成原理19尾数求和方法与定点加减法运算完全一样。

对阶完毕可得:

x补=0011,00.0011y补=0011,11.0110对尾数求和:

00.0011+11.011011.1001即得:

x+y补=0011,11.1001(3)尾数求和运算尾数求和运算计算机组成原理计算机组成原理20(4)结果规格化结果规格化求和之后得到的数可能不是规格化了的数,为了增加有效数字的位数,提高运算精度,必须将求和的结果规格化。

规格化的定义:

(二进制二进制)对正数:

S=00.1对负数:

S=11.0采用双符号位的补码:

采用原码:

正数:

S=0.1负数:

S=1.1计算机组成原理计算机组成原理21规格化规则规格化规则n运算结果产生溢出时,必须进行运算结果产生溢出时,必须进行右归右归n如变形补码结果出现如变形补码结果出现10.XX或者或者01.XXXn如运算结果出现如运算结果出现0.0XXX或或1.1XX必须必

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

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1