浮点数编码介绍
来源:百度知道 编辑:UC知道 时间:2024/06/08 08:33:28
很感谢这位朋友的回答 但是你能百度到得我一样能百度到 这个我知道 请朋友们给一点其他的资料
(1)浮点数:
小数点位置可移动的数据称为浮点数,可用下式表示:N=M*RE
其中,M—尾数,
R—阶的基数(也就是指数部分的底)。R 一般取2、8或16,为约定的常数,大多数机器 R 取定为2。
E—阶的阶码。
当基数约定后,对浮点数的编码就只需对尾数和阶码部分进行编码。浮点数在机器中的形式如下:
尾数M用定点小数表示,阶码E是整数。 M乘以RE后小数点的位置改变,改变指数部分RE的值,小数点的位置随之变动,故称上述表示法表示的数据为浮点数。
(2)浮点数的编码
阶码E一般用移码或补码表示,尾数用原码或补码表示。
机器零 当浮点数的尾数部分M=0时,不论阶码为何值,都看作是零值,称为机器零。
上溢 浮点数的绝对值太大而机器不能表示的情况,此时浮点数的阶码大于机器所能表示的最大阶码。
下溢 浮点数的绝对值太小(阶码小于机器所能表示的最小阶码)的情况称为下溢。当浮点数下溢时,通常将尾数各位强置为零 ,按机器零处理。
(3)规格化浮点数
为了便于浮点数之间的运算与比较,也为了提高浮点数的精度,规定计算机中的浮点数尾数部分必须满足1/R≤|M|<1,也即,小数点后的第一位必须是有效数字。当尾数用补码表示,且R=2时,其规格化形式一般为:
上式表明,当尾数的最高数值位与符号位相反时,即为规格化形式。但对于M<0 有两种特殊情况需考虑。
*M=-1/2,按规定是规格化数,但[-0.5]补=1.10…0,与一般情况相悖,为便于硬件判断,特规定-0.5不 是规格化的数(对补码而言)。
*M=-1,因小数补码允许表示-1,且[-1]补=1.00…0.故将-1作为规格化数(对补码而言 )
(4)IEE754标准
现代计算机中,浮点数一般采用