gpt4 book ai didi

floating-point - 有效数字与 float 精度损失之间的关系是什么?

转载 作者:行者123 更新时间:2023-12-04 04:29:17 25 4
gpt4 key购买 nike

因此,我一直试图绕过浮点数中的有效位数与相对精度损失之间的关系,但是我似乎无法理解这一点。我之前读过一篇文章,说要执行以下操作:

  • 将浮点数设置为2147483647。您将看到它的值实际上是2147483648
  • 从浮点数减去64,您将看到该操作是正确的
  • 从浮点数减去65,您将看到实际上现在有2147483520,这意味着它实际上减去了128。

  • 那么,为什么有10位有效数字的情况下却是128位呢?我了解浮点数的存储方式(1位为符号,8位为指数,尾数为23位),并且如果您假设所有整数都将自动在float数据结构中找到精确的原点,那么您将失去精度。不了解128的来源。我的直觉告诉我,我处在正确的轨道上,但我希望有人能够为我解决这个问题。

    最初,我认为可能的浮点数之间的距离为2 ^(n-1),其中n是有效数字的数量,但这并不成立。

    谢谢!

    最佳答案

    两个相邻浮点数之间的“距离”为2 ^(1-n + e),其中e为真指数,n为尾数位数(AKA有效数字)。存储的指数不是真实的指数,它具有偏差。对于IEEE-754浮点数,该值为127(对于归一化的数字)。因此,正如彼得·奥(Peter O)所说,距离取决于指数。

    关于floating-point - 有效数字与 float 精度损失之间的关系是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7005850/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com