首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算机如何根据IEEE 754浮点表示存储0.000000f?

计算机如何根据IEEE 754浮点表示存储0.000000f?
EN

Stack Overflow用户
提问于 2020-09-25 08:17:35
回答 3查看 108关注 0票数 1

我们知道,在IEEE754浮点representation.But中,我们可以表示任何浮点数,在所有浮点数中,我们都得到了类似1的值。(某些尾数)*2^(某些指数),其中1总是在第一个位置固定的,因此我们假设,当将IEEE754浮点数转换回十进制number.But时,在0.0000f的情况下,我们不能表示1中的数字。(某些尾数)*2^(某些指数),因为除了0以外,它在开始尾数时永远不会有1。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-09-25 08:39:43

所有0的模式都保留给0:

代码语言:javascript
复制
              3  2          1         0
              1 09876543 21098765432109876543210
              S ---E8--- ----------F23----------
      Binary: 0 00000000 00000000000000000000000
         Hex: 0000 0000
   Precision: SP
        Sign: Positive
    Exponent: -127 (Stored: 0, Bias: 127)
   Hex-float: 0x0p+0
       Value: +0.0

请注意,IEEE表示中有两个0:+0和-0;可以区分。0x80000000模式用于后者:

代码语言:javascript
复制
              3  2          1         0
              1 09876543 21098765432109876543210
              S ---E8--- ----------F23----------
      Binary: 1 00000000 00000000000000000000000
         Hex: 8000 0000
   Precision: SP
        Sign: Negative
    Exponent: -127 (Stored: 0, Bias: 127)
   Hex-float: -0x0p+0
       Value: -0.0
票数 3
EN

Stack Overflow用户

发布于 2020-09-25 13:57:19

计算机如何根据IEEE 754浮点表示存储0.000000f?

float小于最小的正常非零FLT_MIN (0 00000001 00000000000000000000000)时,它的编码有偏指数为0 (s 00000000 xxxxxxxxxxxxxxxxxxxxxxx)。隐含位不再是1,而是0,有效有偏指数为1。

xxxxxxxxxxxxxxxxxxxxxxx全部为零时,该值为+0.0f或-0.0f。

编码有偏指数为0且float不为零的xxxxxxxxxxxxxxxxxxxxxxx是次正规的.

FLT_TRUE_MIN0 00000000 00000000000000000000001,最小的正非零值.

票数 4
EN

Stack Overflow用户

发布于 2020-09-25 08:45:16

正如Alias回答的那样,“所有指数和意义以及设置为零的位”被定义为零。也可以将零看作是非正态数的特例。当所有指数位都设置为零(最小可能的指数)时,尾数不设前导1,因此如果有意义也为零,则结果值(解释为正态数)为零。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64060403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档