我很好奇,即使是0 === -0
,但1/0
和1/-0
给出不同的结果。 因此,我们可以假设 IEEE 754 中0
和-0
的表示方式不同。 他们是如何表现的?
更新:到目前为止,我可以找到一些关于 https://en.wikipedia.org/wiki/Signed_zero 的信息
似乎有IEEE 754-1985和IEEE 754-2008,一种形式可能是二进制的:
0 00000000 00000000000000000000000 as positive 0
1 00000000 00000000000000000000000 as negative 0
(以上是 32 位,最左边的位是符号位,然后是右边的 8 位作为指数,然后是 23 位作为有效数)。 但我找不到 1985 年和 2008 年版本之间的区别。
请参阅:
维基百科上的IEEE 754-1985
维基百科上的IEEE 754-2008
有关更改,请参阅维基百科上的"IEEE 754修订版"页面。
1985 和 2008 版本都使用有符号零。它们表示为:
符号 = 0 表示正零,1 表示负零。
偏差指数 = 0。
分数 = 0。
(正如您在问题中写的那样)
编辑:在1985年和2008年的版本中,1/0 =无穷大,而1/-0 =负无穷大。