Clear Filters
Clear Filters

Compatibility of Matlab with IEEE-754 1985 or 2008

3 views (last 30 days)
Hi,
Is MATLAB compatible with IEEE-754 1985 or 2008 ?
-0 = +0 ? or -0 < +0
Best regards
C. VALPARD

Accepted Answer

Steven Lord
Steven Lord on 18 Mar 2021
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.
There are a handful of functions that have a similar section in their documentation.
As for your specific questions related to plus and minus zero:
format hex
x = -0
x =
8000000000000000
y = 0
y =
0000000000000000
Note the differences in the sign bits.
isLT = x < y
isLT = logical
0
isEQ = x == y
isEQ = logical
1
-0 and +0 are equal.
isPosInfX = (1./x) > 0
isPosInfX = logical
0
isPosInfY = (1./y) > 0
isPosInfY = logical
1
But you can tell the sign bit by computing 1./zero and seeing if you get Inf or -Inf.

More Answers (0)

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!