在IEEE 754中减去不同的数字总是非零吗?

时间:2018-10-20 18:24:26

标签: floating-point ieee-754

假设ab是两个相同类型的IEEE-754有限FP编号,并且a != b是正确的,是否总是保持a-b != 0?换句话说,a-b==0是否代表有限的ab意味着a == b

2 个答案:

答案 0 :(得分:2)

在IEEE-754算术中,对于有限ab,当且仅当a == b时,a-b == 0。这就是为什么在IEEE-754编号系统中包含次正规编号的原因。

并非所有语言或语言实现都符合IEEE-754。即使它们使用IEEE-754格式,也可能不会严格使用IEEE-754操作。

答案 1 :(得分:0)

a-b==0对于有限的ab意味着a == b可以从IEEE-754标准的算术规则中推导出来。

由于许多语言的实际实现可能会以某种方式偏离IEEE-754算法,因此在编程中说出您的意思是最安全的。如果您关心两个变量之间的差异,请询问a-b。如果您关心它们是否相等,请询问a==b