Dear Wiki user, You have subscribed to a wiki page or wiki category on "Stdcxx Wiki" for change notification.
The following page has been changed by MartinSebor: http://wiki.apache.org/stdcxx/FloatingPoint The comment on the change is: Formatted bit patterns in a table. ------------------------------------------------------------------------------ ||<(>`signaling_NaN()`|| `-INF` || `nan` || `nan0xxx` || `nan` || `NaN` || 0 || `1.#QNAN` || `1.#SNAN` || + == Bit Patterns == - AIX/Power: - INF: INF: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0 - QNAN: NaNQ: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x80000 - SNAN: NaNS: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x5555555500055555 + The table below shows the bit patterns for Infinity, Quiet NaN, and Signaling NaN on each platform. - HP-UX/IPF: - INF: inf: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0 - QNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x40000 - SNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x80000 - HP-UX/PA - INF: inf: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0 - QNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x40000 - SNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x80000 + ||||||||||||||||<tablestyle="background-color:cornsilk">'''IEEE 754 double precision bit patterns'''|| + ||<rowstyle="background-color:lightgray;text-align:center">|| Number || Sign || Exponent || Fraction || + ||<rowspan="3"> AIX/Power || Infinity || `0` || `0x7ff` || `0` || + || Quiet NaN || `0` || `0x7ff` || `0x80000` || + || Signaling NaN || `0` || `0x7ff` || `0x5555555500055555` || + ||<rowspan="3"> HP-UX || Infinity || `0` || `0x7ff` || `0` || + || Quiet NaN || `0` || `0x7ff` || `0x40000` || + || Signaling NaN || `0` || `0x7ff` || `0x80000` || + ||<rowspan="3"> IRIX/MIPS || Infinity || || || || + || Quiet NaN || || || || + || Signaling NaN || || || || + ||<rowspan="3"> Linux/x86 || Infinity || `0` || `0x7ff` || `0` || + || Quiet NaN || `0` || `0x7ff` || `0x80000` || + || Signaling NaN || `0` || `0x7ff` || `0x40000` || + ||<rowspan="3"> Tru64 UNIX/Alpha || Infinity || `0` || `0` || `0x7ff0000000000000` || + || Quiet NaN || `0` || `0` || `0xfff8000000000000` || + || Signaling NaN || `1` || `0x2aa` || `0x7ff5555500055555` || + ||<rowspan="3"> Windows/x86 || Infinity || || || || + || Quiet NaN || || || || + || Signaling NaN || || || || - Linux/x86_64 - INF: inf: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0 - QNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x80000 - SNAN: nan: signbit = 0 - sign = 0, exponent = 0x7ff, fraction = 0x40000 - - Tru64 UNIX - INF: INF: signbit = 0 - sign = 0, exponent = 0, fraction = 0x7ff0000000000000 - QNAN: NaNQ: signbit = 0x1 - sign = 0, exponent = 0, fraction = 0xfff8000000000000 - SNAN: NaNS: signbit = 0 - sign = 0x1, exponent = 0x2aa, fraction = 0x7ff5555500055555 -