Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:最小的非规范化双错误_Python_Double_Denormalized - Fatal编程技术网

Python:最小的非规范化双错误

Python:最小的非规范化双错误,python,double,denormalized,Python,Double,Denormalized,使用WinPython 3.4.4.2,我得到了以下奇怪的结果: >>> 2**-1075 5e-324 也就是说,与2**-1074相同,而2**-1075在双浮点表示中应为零。使用Python3.5.1作为地址,我得到了预期的0 有谁能帮我了解出了什么问题吗 谢谢大于或小于零的最小可重新表示的非规范化浮点是:5e-324和-5e-324 5e-324是非规范化最小值,可通过将最小浮点数(2.2250738585072014e-308)乘以浮点数ε(2.2204460492

使用WinPython 3.4.4.2,我得到了以下奇怪的结果:

>>> 2**-1075
5e-324
也就是说,与
2**-1074
相同,而
2**-1075
在双浮点表示中应为零。使用Python3.5.1作为地址,我得到了预期的0

有谁能帮我了解出了什么问题吗


谢谢

大于或小于零的最小可重新表示的非规范化浮点是:5e-324-5e-324

5e-324是非规范化最小值,可通过将最小浮点数(2.2250738585072014e-308)乘以浮点数ε(2.220446049250313e-16)来实现

输出:

5e-324

我在shell(Python 3.5.1)中也得到了相同的结果。该地址使用控制台,可以从控制台控制其系统中的此类操作。

2**-1074是最小的低于正常的浮点值。2**-1075应该是0.0,但在Windows上,由于C pow()函数的行为,它不是。有趣的是,2**-1074/2将给出0.0。ldexp(1,-1075)也将给出0.0。

我无法复制您在linux上的Python 3.4.3(默认值,2015年10月14日,20:28:29)[GCC 4.8.4]的结果,有关详细信息,请键入“帮助”、“版权”、“信用”或“许可证”。>>2**-1075 0.0>>>您是否做过任何可能会影响浮点舍入模式的事情?如果您尝试更低的指数,会发生什么?我什么都没做,只是安装了WinPython并立即进行了这样的测试。对于较低的指数,我选择正确的0.0:只有这一个给出了错误的答案!这不能回答我的问题。
5e-324