Compatibility of Matlab with IEEE-754 1985 or 2008
2 次查看(过去 30 天)
显示 更早的评论
Hi,
Is MATLAB compatible with IEEE-754 1985 or 2008 ?
-0 = +0 ? or -0 < +0
Best regards
C. VALPARD
0 个评论
采纳的回答
Steven Lord
2021-3-18
Is MATLAB compatible with IEEE-754 1985 or 2008 ?
There are a few operations for which the IEEE specs state what the answer should be but MATLAB returns something different. The most obvious example is the sqrt function. As stated in the IEEE Compliance section on its documentation page the IEEE spec says sqrt(aNegativeNumber) should return NaN. But since MATLAB has the capability to work with complex numbers, we return a complex answer.
As for your specific questions related to plus and minus zero:
format hex
x = -0
y = 0
Note the differences in the sign bits.
isLT = x < y
isEQ = x == y
-0 and +0 are equal.
isPosInfX = (1./x) > 0
isPosInfY = (1./y) > 0
But you can tell the sign bit by computing 1./zero and seeing if you get Inf or -Inf.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!