我有一个程序,我处理很多非常小的数字(接近双重限制的低端)。
在我的应用程序执行期间,这些数字中的一些逐渐变小,这意味着它们的“估计”不太准确。
我目前的解决方案是在我做任何计算之前先放大它们,然后再缩小它们?
...but这让我思考,通过这样做,我是否真的获得了更多的“准确性”?
有什么想法?
发布于 2011-01-26 06:23:18
你的数字真的在10^-308 (最小的归一化双精度)到10^-324 (最小的可表示双精度,非正规化,即失去精度)之间吗?如果是这样,那么通过放大它们,您确实可以通过绕过double类型的指数范围的限制来获得精度。
不过,我想知道:什么样的应用程序可以处理如此小的数字?据我所知,没有任何一门体育学科需要这样的东西。
发布于 2012-09-06 20:20:21
double的有效位数是固定的,表示“幂”-part的字节数也是固定的。
因此,实际上您可能会遇到两个问题:
https://stackoverflow.com/questions/4799439
复制相似问题