【发布时间】:2019-11-02 13:22:43
【问题描述】:
32 位标准:
1 位表示数字的正/负值。指数为 8 位,尾数为 24 位。
8 位的指数,即 1 * 2^7 + 1 * 2^6 + ... = 255 当最大 Exponent 为 127 时,最小 Exponent 应为 -128,因此 126 + 128 = 255。
但是为什么 Java 说最小指数是 -126? 255 - (127+126)= 2,所以我们没有使用两个数字。
【问题讨论】:
-
Java
float只是标准的 IEEE 754 单精度浮点数。这个wiki page 详细说明了格式规范。我没有时间摘录相关部分来撰写答案,因此您可能需要自己去找。 -
@Optimal “为什么 Java 说最小指数是 -126?” 请提供记录到该页面的链接。
标签: java floating-point ieee-754 single-precision