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

是否存在无法在十进制下精确表示的二进制数值?

我们都知道部分十进制数值无法在二进制下获得精确表示。

例如十进制数值0.1。

在IEEE浮点数格式中,根据为浮点数分配的比特位数量不同,它会存在多种表示形式:

单精度(32位)

  • 十六进制:0x3DCCCCCD
  • 二进制:1.10011001100110011001101×10⁻⁴
  • 十进制:0.10000 00014 90116 11938 47656 25

双精度(64位)

  • 十六进制:0x3FB999999999999A
  • 二进制:1.1001100110011001100110011001100110011001100110011010×10⁻⁴
  • 十进制:0.10000 00000 00000 00555 11151 23125 78270 21181 58340 45410 15625

扩展精度(80位)

  • 十六进制:0x3FFBCCCCCCCCCCCCCCCD
  • 二进制:1.100110011001100110011001100110011001100110011001100110011001101×10⁻⁴
  • 十进制:0.10000 00000 00000 00000 13552 52715 60688 05425 09316 00108 74271 39282 22656 25

也就是说,十进制值0.1没有精确的二进制表示,它是无限循环的二进制值:

0.0 0011 0011 0011 0011 0011 0011 0011 0011 ...
0.0 ̅0̅0̅1̅1

同理,1⁄3在十进制下也没有精确表示,*“小数点”*后的数字会无限循环:

0.33333 33333 33333 33333 33333 33333 33333 ...
0.̅3

反过来是否成立?

是否存在无法在十进制下获得精确表示的二进制数值?提出该问题旨在拓展认知边界,丰富相关领域的知识储备。

编辑说明:不清楚为什么有人投票将该问题标记为重复,关联的问题与本问题方向完全相反。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 10:09:00