浮点数的预习和总结 您所在的位置:网站首页 符号不同的两位数 浮点数的预习和总结

浮点数的预习和总结

2024-06-22 08:59| 来源: 网络整理| 查看: 265

浮点数的表示 为了表示浮点数,数被分为两部分:整数部分和小数部分,在计算机中一个任意二进制数N可以写成: N=2^e.M。 浮点数的表示格式: 浮点数的表示法以适当的形式将比例因子表示在数据中,让小数点的位置根据需要而浮动。这样,在位数有限的情况下,既扩大了数的表示范围,有保持了数的有效精度。

阶码:阶码是整数,阶符和 m 位阶码的数值部分共同反映 浮点数的表示范围及小数点的实际位置 ,常用移码或补码表示。IEEE754标准中采用移码的表示形式。 尾数:数符表示浮点数的符号,尾数的数值部分的位数 n 反映浮点数的 精度 ,常用原码或补码表示。IEEE754标准中采用原码的表示形式。

浮点数的规格化 规格化:规定尾数的最高数位必须是一个有效值。非规格化浮点数要进行规格化操作才能变成规格化浮点数。

左规:当浮点数运算的结果为非规格化时要进行规格化处理,将尾数算术左移一位,阶码减1(基数为2时)。 右规:当浮点数运算的结果尾数出现溢出(双符号位为01或10)时,将尾数算术右移一位,阶码加1(基数为2时)。

浮点数规格化的特点

当浮点数尾数的基数为2时,原码规格化数的尾数最高位一定是1,补码规格化数的尾数最高位一定与尾数符号位相反,基数不同,浮点数的规格化形式也不同。当基数为4时,原码规格化形式的尾数最高两位不全为0,当基数为8时,原码规格化形式的尾数最高3位不全为0。

浮点数的表示范围

1、由于阶码可以用移码或补码表示,尾数可以用原码或补码表示,所以不同形式的浮点数的表示范围是不同的。(但必须遵守规则,原码规格化数的尾数最高位一定是1,补码规格化数的尾数最高位一定与尾数符号位相反)。 2、运算结果大于最大正数时称为正上溢,小于绝对值最大负数称为负上溢。数据一旦发生上溢,计算机必须中断运算操作,进行溢出处理。 3、运算结果在0至最小正数之间时称为正下溢,在0至绝对值最小负数之间时称为负下溢。数据发生下溢时,浮点数值趋于0,计算机仅将其当作机器0处理。

IEEE 754浮点数标准

补充:变形补码 概念:变形补码,又称”模4补码“即用两个二进制位来表示数字的符号位,其余与补码相同。变形补码,用“00”表示正,用“11”表示负,也称为模4的补码。用变形补码进行加减运算时,当运算结果的符号位出现“01”或者“10”时,则表示产生溢出。变形补码的最高位(第一个符号位)总是表示正确的符号,比如"00"、 “01”分别表示正数、正溢出(上溢),"11"、“10”表示负数、负溢出(下溢)。 示例:

1、产生01的情况: 补码: 0 111 + 0 010 ———— 1 001 两个正数相加出现了负数,明显有误,就是说此时产生了上溢出(注:补码运算时符号位也参与运算) 变形补码: 00 111 + 00 010 ———— 01 001 此时读数时,由于左边的符号位是0,所以表示正数,读成+9,而不像模二补码中变成了-7 2、产生10的情况: 补码: 1 001 + 1 010 ———— 10 011 溢出一位后,结果变成了0 011,两个负数相加出现了正数,明显有误,就是说此时产生了下溢出(注:补码运算时符号位也参与运算) 变形补码: 11 001 + 11 010 ———— 110 011 溢出一位后,结果变成了10 011,此时读数时,由于左边的符号位是1,所以表示负数,读成-3,而不像模二补码中变成了+3 (注:产生01和10时,读数时右边那一位符号也要算在数字里面)



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有