五种类型的浮点异常 是:无效澳门永利5454网址运算、被零除、上溢、下溢和不精确

当前位置:澳门永利5454a > 澳门永利5454网址 > 五种类型的浮点异常 是:无效澳门永利5454网址运算、被零除、上溢、下溢和不精确
作者: 澳门永利5454a|来源: http://www.aaddhimagan.com|栏目:澳门永利5454网址

文章关键词:澳门永利5454a,浮点标准

  IEEE754标准浮点格式_计算机硬件及网络_IT/计算机_专业资料。IEEE754标准浮点格式资料总结

  IEEE 754标准规定了什么? a) 两种基本浮点格式:单精度和双精度。IEEE单精度格式具有24位有效数字,并总共占用32 位。 IEEE双精度格式具有53位有效数字精度,并总共占用64位。 b) 两种扩展浮点格式:单精度扩展和双精度扩展。此标准并未规定扩展格式的精度和大小,但它指 定了最小精度和大小。例如,IEEE 双精度扩展格式必须至少具有64位有效数字,并总共占用至少79 位。 c) 浮点运算的准确度要求:加、减、乘、除、平方根、余数、将浮点格式的数舍入为整数值、在不 同浮点格式之间转换、在浮点和整数格式之间转换以及比较。求余和比较运算必须精确无误。其他的 每种运算必须向其目标提供精确的结果,除非没有此类结果,或者该结果不满足目标格式。对于后一 种情况,运算必须按照下面介绍的规定舍入模式的规则对精确结果进行最低限度的修改,并将经过此 类修改的结果提供给运算的目标。 d) 在十进制字符串和两种基本浮点格式之一的二进制浮点数之间进行转换的准确度、单一性和一致 性要求。对于在指定范围内的操作数,这些转换必须生成精确的结果(如果可能的话),或者按照规 定舍入模式的规则,对此类精确结果进行最低限度的修改。对于不在指定范围内的操作数,这些转换 生成的结果与精确结果之间的差值不得超过取决于舍入模式的指定误差。 e) 五种类型的IEEE 浮点异常,以及用于向用户指示发生这些类型异常的条件。五种类型的浮点异常 是:无效运算、被零除、上溢、下溢和不精确。 f) 四种舍入方向:向最接近的可表示的值;当有两个最接近的可表示的值时首选“偶数”值;向负无穷 大(向下);向正无穷大(向上)以及向0(截断)。 在计算机中,浮点数一般由三部分组成: 数值的符号位、阶码和尾数。 即:浮点数=符号位.尾数×基数(底)阶码。 该标准规定基数为2(浮点数=符号位.尾数×2阶码。) , 阶码E用移码(非标准移码,标准移码与补码的符 号位相反,而非标准移码要再减一)[1] 表示,尾数 M用原码表示,根据二进制的规格化方法,数值的 最高位总是1,该标准将这个1缺省存储,使得尾数 表示范围比实际存储的多一位。 按IEEE754标准,常用的浮点数的格式如下图所示。 IEEE754标准中有三种形式的浮点数:短浮点数(又称单精度浮 点数)、长浮点数(又称双精度浮点数)、临时浮点数(又称扩 展精度浮点数,这种浮点数没有隐含位),它们的具体格式如下 表: 类型 存储位 数 数符(s) 偏置值 (Bias) 阶码 尾数小数部分 总位数 十六进制 十进制 (exp) (frac) 8位 23位 32位 7FH +127 短浮点数(Single,澳门永利5454网址float) 1位 长浮点数(Double) 1位 11位 15位 52位 64位 64位 80位 3FFH +1023 临时浮点数(扩展精度浮点数) 1位 3FFFH +16383 对于阶码为0或255的情况,IEEE754标准有特 别的规定: 如果 E 是0 并且 M 是0,则这个数的线 (正负号和数符位有关)如果 E = 255 并 且 M 是0,则这个数的真值为±∞(同样和符号 位有关) 如果 E = 255 并且 M 不是0,则这不是 一个数(NaN)。澳门永利5454网址 偏移阶码E 0 1 2 … 127 128 129 … 254 255 实际阶码值 保留做操作数 -126 -125 0 1 2 127 保留做操作数 对上溢和下溢的处理 当运算结果小于规格化浮点数所能表示的最小值 时,以前硬件处理策略,或者结果置 0 或者产生 一个下溢陷阱,这两种方案均不能令人满意。 IEEE754 处理方法是使用非规格化数。这时 阶码为 0(即移码 -127 ),尾数没有隐含位,最 高位是0。 这样的结果是降低精度,扩大表示范围。如原 来规格化单精度最小值是1.0x2-126,而非规格化单 精度最小值是2-23 x2-126=2-149(只有1位有效位) 。 对上溢用无穷大表示,同时 规定: 无穷大+任何数=无穷大 任何有限数÷0=无穷大 任何有限数÷无穷大=0 无穷大÷无穷大=NaN NaN(Not A Number) 几个特殊数据的存储规则: 正0: 所有的数据位都是0; 负0: 最高位为1,其它的数据位是0; 正/负无穷: 符号位为0/1,阶码位全为1,有效数字全为0; NAN: 非法的浮点数,阶码位全为1,有效数字不全为0; 这样IEEE754有5种类型浮点数据,如下表: S(符号位)E(阶码)M(尾数) 意义 0/1 0/1 0/1 0/1 0 0 1~254 255 0 非0 任意 0 ±0 非规格化数 规格化数 ±无穷大 0/1 255 非0 NaN 十进制数转换成浮点数的步骤 1、澳门永利5454网址将十进制数转换成二进制数:整数部分 用2来除,小数部分用2来乘; 2、规格化二进制数:改变阶码,使小数点 前面仅有第一位有效数字; 3、计算阶码: 短型浮点数的阶码加上偏移量7FH 长型浮点数的阶码加上偏移量3FFH 扩展型浮点数的阶码加上偏移量3FFFH 4、以浮点数据格式存储。 把数值的符号位、阶码和尾数合在一起 就得到了该数的浮点存储形式。 浮点数转换成十进制数的步骤 该步骤与前面“十进制数转换成浮点数”的 步骤是互逆的,其具体步骤如下: 1、分割数字的符号、阶码和有效数字; 2、将偏移阶码减去偏移,得到线、把数字写成规格化的二进制数形式; 4、把规格化的二进制数改变成非规格化的 二进制数; 5、把非规格化的二进制数转换成十进制数。

网友评论

我的2016年度评论盘点
还没有评论,快来抢沙发吧!