• 2.4 浮点数


    2.4 浮点数

    2.4.1 二进制小数

    类似形如(b_mb_{m-1}cdots{}b_1b_0.b_{-1}b_{-2}cdots{}b_{-n-1}b_{-n})的表示法,其中(b_i)的取值范围为0或1,该表示法所表示的数定义如下:

    [egin{equation} b=sum_{i=-n}^{m}2^{i} imes b_{i} end{equation} ]

    符号(“.”)为二进制小数点,点左边的位的权是2的正幂,点右边的位的权是2的负幂。

    2.4.2 IEEE浮点数表示

    IEEE浮点数标准用(V=(-1)^s imes M imes 2^E)的形式来表示一个数:

    • 符号:s决定这个数是负数(s=1)还是正数(s=0),对于数值0的符号位解释作为特殊情况处理。

    • 尾数:M是一个二进制小数,它的范围是(1 hicksim 2-varepsilon)(规格化的),(0 hicksim 1-varepsilon)(非规格化的)。

    • 阶码:E的作用是对浮点数加权,这个权重是2的(E)次幂(可能为负)。

    • 阶码字段:exp;小数字段:frac。

    • 根据阶码字段exp的值,被编码的值可以分为四种不同的情况:

      • 规格化的:exp不全为0同时也不全为1;
      • 非规格化的:exp全为0;
      • 无穷大:exp全为1,且frac全为0;
      • NaN:exp全为1,frac不全为0;
    情况1:规格化的浮点数计算方法

    阶码字段exp:

    [E=e-Bias,quad e是无符号数,其位表示为e_{k-1}cdots e_2e_1 \ Bias=2^{k-1}-1 ]

    注意此时e不能全为0也不能全为1,对于单精度E的取值范围为:(-126 hicksim +127),而双精度是(-1022 hicksim +1023)

    小数字段frac:

    [M=1+f \ f=0.f_{n-1}cdots f_2f_1 \ 可以看出二进制小数点在frac字段最高有效位左边 ]

    情况2:非规格化的浮点数计算方法

    阶码字段exp:

    [E=1-Bias ]

    小数字段frac:

    [M=f=0.f_{n-1}cdots f_2f_1 ]

    情况3:特殊值

    当阶码exp全为1,小数域全为0时,若(s=0)时是(+infty),若(s=1)时是(-infty)

    当阶码exp全为1,小数域不全为0时,结果值为(NaN),即“Not a Number”。

    2.4.3 数字示例

    浮点数能够使用整数排序函数来排序,将浮点数位模式解释为无符号数时,大小顺序不变。

    2.4.4 舍入

    由于浮点运算只能近似地表示实数运算,所以在很多情况下需要进行舍入

    • 向偶数舍入:也称为最接近值舍入,eg: 1.4舍入为1,1.6舍入为2,1.5舍入为2。
    • 向0舍入
    • 向下舍入
    • 向上舍入
    2.4.5 浮点运算

    把浮点值(x)(y)看成实数,而某个运算(igodot)定义在实数上,则浮点运算为:

    [Round(xodot y) ]

    这是对实际运算的精确结果进行舍入后的结果

    浮点加法
    • (x+^{f}y)定义为(Round(x+y)),对于所有x和y的值,加法运算是可交换的,但不可结合。
    • 浮点加法满足单调属性:若(ageq b),对于任何(x),都有(x + a geq x + b),无符号加法或补码加法不具有这个属性。
    浮点乘法
    • (x*^fy)定义为(Round(x imes y)),可交换不可结合,不可分配。
    • 满足单调性
  • 相关阅读:
    多语言网站(如何实现网站的多语言版本?)
    宝塔linux面板.txt
    什么是海外镜像点?
    一步一步CCNA之三:路由器全局配置模式
    Kmeans算法 与 KNN算法
    新浪公开课
    shanghaiR
    Announcing Couch Crawler, a CouchDB search engine/crawler
    字符串相似度算法(编辑距离算法 Levenshtein Distance)
    R与SAS、SPSS的比较
  • 原文地址:https://www.cnblogs.com/BigMario/p/14464510.html
Copyright © 2020-2023  润新知