You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

单精度IEEE-754表示2^(-23)出现转换误差的相关疑问

核心误区澄清

你提到的1.1920928955078e-7(即0.00000011920928955078)不是2^-23的精确十进制值,只是你提前截断了小数位的近似值。

精确值推导

2^-23本质是分数1/8388608,直接做十进制除法可得完整精确展开:

1 ÷ 8388608 = 0.00000011920928955078125

你观察到打印结果里多出来的125本来就是精确值的一部分,不是误差。你误以为存在的1.25e-21误差,本质是你自己把精确值截断到小数点后20位、丢弃了最后三位有效数字导致的计算偏差。

关于IEEE-754存储的准确性

你对单精度IEEE-754的位构造规则理解完全正确:符号位0、偏置指数104、尾数全0的位序列,存储的就是精确的2^-23,没有任何存储误差。
你提到的“转换误差”是输入侧的问题:如果你给转换工具传入的是你截断后的近似值1.1920928955078e-7,这个值本身就不是精确的2的幂次,自然会产生转换误差;如果你直接构造正确的位序列、或者传入完整的精确十进制值0.00000011920928955078125,转换过程不会产生任何误差。

内容的提问来源于stack exchange,提问作者bool3max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 04:36:03