欢迎来到天天文库
浏览记录
ID:52047101
大小:1.06 MB
页数:38页
时间:2020-03-31
《组成原理第3章-2.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三章信息编码与数据表示四、浮点机器数表示方法1、浮点数的格式浮点数的典型格式N=M*RE阶符,数符。阶码一般采用移码和补码表示。尾数一般采用原码和补码表示。E:定点整数。E决定了浮点数N的绝对值;ES不是N的符号M:定点小数。MS决定了浮点数N的符号;MS=0,则N为正数,MS=1,则N为负数2、规格化定义:采用规格化形式表示浮点数可以提高精度。规格化的根本要求是:0.5≤
2、M
3、<1规格化的尾数表现形式为:规格化原码表示的M是:0.1**或1.1**的形式规格化补码表示的M是:0.1**或1.0**的形式浮点数的表示范围通常:最小(负)数、最大负数、最小正数、最大
4、(正)数。位于最大负数和最小正数之间的数据(除0外),机器无法表示,称为下溢。对于下溢的处理,计算机直接将其视为机器零。当一个数据大于最大(正)数,或者小于最小(负)数时,机器也无法表示,称为上溢,上溢又称溢出。下图表明了浮点数在数轴上的表示范围。机器零:两层含义若浮点数的尾数为零,无论阶码为何值当阶码的值遇到比它能表示的最小值还要小时(阶码负溢出),无论其尾数为何值。机器零对于非规格化浮点数,可以通过修改阶码和左右移尾数的方法来使其变为规格化浮点数,这个过程叫做规格化;小数点不动,尾数右移1位,阶码加1的规格化,则称为右规小数点不动,尾数左移1位,阶码减1的规格化
5、,则称为左规例3.9:一浮点数表示格式为:16位浮点数,阶码6位,包含1位阶符,用移码表示,尾数10位,包含1位数符,用补码表示,阶码在前,尾数(包括数符)在后,请写出下列X和Y的规格化浮点数形式。X=+55.75Y=-27/128解:(1)X=(+110111.11)2,将X写成科学标识型:X=+0.11011111×2110,然后根据浮点数格式要求分别写出其阶码和尾数的机器数。注意,位数不足的,定点小数在后面补“0”,定点整数在前面补“0”。求得:`[X]浮=1,001100.110111110B=99BEH(2)同理,Y=(-0.0011011)2Y=-0.1
6、1011×2-10则:[Y]浮=0,111101.001010000B=7A50H例3.11:写出例3.9中的浮点数格式的规格化和非规格化表示范围。浮点数表示格式为:16位浮点数,阶码6位,包含1位阶符,用移码表示,尾数10位,包含1位数符,用补码表示,阶码在前,尾数(包括数符)在后。解:(1)规格化表示范围:真值浮点数表示最小数-1×231=-2311,111111.000000000最大负数-(2-1+2-9)×2-320,000001.011111111最小正数2-1×2-32=2-330,000000.100000000最大数(1-2-9)×2311,111
7、110.111111111(2)非规格化表示范围:真值浮点数表示最小数-1×231=-2311,111111.000000000最大负数-2-9×2-32=-2-410,000001.111111111最小正数2-9×2-32=2-410,000000.000000001最大数(1-2-9)×2311,111110.111111111N=M*REIEEE754国际标准常用的浮点数格式有3种,阶码的底隐含为2短实数又称为单精度浮点数,长实数又称为双精度浮点数,临时实数主要用于进行浮点数运算,保存临时的计算结果。单精度浮点数和双精度浮点数的阶码采用移码,但不同的是:它的
8、偏移量不是27和210,而是27-1=127和210-1=1023;尾数使用原码表示,且采用隐藏位,也就是将规格化浮点数尾数的最高位的“1”省略,不予保存,认为它隐藏在尾数小数点的左边。由此,推导出它们的真值计算公式如上表,其中E为阶码ESE1……Em的加权求和的值。阶码用移码表示(单精度):25500+127-128无符号数移码……MsEsE1…E7M1M2…M23MsEsE1…E10M1M2…M52IEEE754单精度格式IEEE754双精度格式例3.10:若X和Y均是IEEE754标准的单精度浮点数,若X浮点数的存储形式为41360000H,求X的真值。若Y=
9、-135.625,求Y的浮点数表示。解:(1)[X]浮=01000001001101100000000000000000B按照表3-3中的真值计算公式及IEEE754标准的单精度浮点数格式,可以知道:MS=0,E=ESE1……Em=10000010B=130D,1.M1M2……Mn=1.01101100000000000000000,所以,X=(-1)MS×(1.M1M2……Mn)×2E-127=(-1)0×(1.011011)×2130-127;X=(+1011.011)2=(+11.375)10(2)Y=(-10000111.101)2;Y=-1.00001
此文档下载收益归作者所有