gpt4 book ai didi

java - 浮点运算 = 从 Dec 到 Binary 的最差精度/差异是多少?

转载 作者:搜寻专家 更新时间:2023-10-31 19:35:07 24 4
gpt4 key购买 nike

众所周知,小数(如 0.1),当存储为 float (如 double 或 float)时,将在内部以“二进制格式”表示(IEEE 754 ).还有一些小数不能直接用二进制表示。

我不明白的是这种“转换”的精度:

1.) float 本身可以有精度(即“重要”)?

2.) 但是从小数到二进制小数的转换也有精度损失?

问题:

从小数转换为 float 时,最坏情况下的精度损失(对于“所有”可能的小数)是多少?

(我想知道这一点的原因是,在将小数部分与二进制/浮点分数进行比较时,我需要考虑精度......以确定两个数字是否相同。我希望这个精度与尽可能紧凑/精确 (十进制小数 == 二进制小数 +/- 精度)

示例(仅假设)

0,1 dec => 0,10000001212121212121212 (binary fraction double) => precision loss 0,00000001212121212121212
0,3 dec => 0,300000282828282 (binary fraction double) => precision loss 0,000000282828282

最佳答案

我不完全清楚你在追求什么,但你可能对以下论文感兴趣,该论文讨论了二进制/十进制转换中涉及的许多准确性问题,包括疑难案例列表。

弗恩·帕克森和威廉·卡汉。用于测试 IEEE 十进制-二进制转换的程序。1991 年 5 月 22 日 http://www.icir.org/vern/papers/testbase-report.pdf

关于java - 浮点运算 = 从 Dec 到 Binary 的最差精度/差异是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7169700/

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