architecture - 32位 float 可以表示多少个数字

标签 architecture floating-point floating-accuracy

使用 IEEE float 标准,32 位 float 可以表示多少个不同的数字?

最佳答案

IEEE-754 二进制 32 格式中的每个位模式都代表一个不同的数字,除了:

  • 零被表示两次,即+0和-0。因此,一个是重复的。
  • 8 位指数字段中全为 1 且 23 位主要有效数字字段中包含非零值的模式表示非数字 (NaN)。这些的数量是2·(223−1)。 (初始因子 2 用于符号位。)

有 232 位模式。减去重复项和 NaN 得到 232 − 1 − 2•(223−1) = 4,278,190,081。

注意,上面包括+∞和-∞。要将其限制为有限数,请减去 2。

关于architecture - 32位 float 可以表示多少个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64198546/

相关文章:

c++ - 准确提取 float 的小数部分

asp.net - 一个现代的n层asp.net Web应用程序示例?

java - 非循环依赖原则 - 组件依赖循环如何成为 "morning-after syndrome"的原因?

architecture - 分布式修订控制系统的分散行为如何工作?

c# - 这是占一定小数位数的有效 float 比较吗?

c - float 不相等,尽管相同?

javascript - 是否可以返回 0 的小数点后两位的浮点值?

angular - 双向组合选择器而无需循环依赖

c++ - 使用 ostream 统一输出带符号的 0.0

math - float 学坏了吗?