IEEE-754 Floating Point Explorer illustration

IEEE-754 Floating Point Explorer

Dissects any number into its IEEE-754 binary representation — float64 and float32 side by side — with every bit as a clickable box: flip one and watch both precisions update. Enter a decimal or hex bit pattern either way. Each panel shows classification (normal, subnormal, zero, infinity, NaN), the exact stored decimal computed with big-integer arithmetic, ULP gap, and adjacent representable neighbors on a number line. Presets walk through 0.1+0.2, 2⁵³, MAX_SAFE_INTEGER, machine epsilon, subnormals, ±0, ±Infinity and NaN payloads. An optional FP16 / bfloat16 row shows how ML formats truncate the same value.

Runs 100% in your browser — nothing you paste leaves your device.

Notes

  • 0.1 + 0.2 ≠ 0.3 because none of the three numbers is representable in binary: the two rounding errors in the operands do not cancel the rounding of 0.3.
  • Above 2⁵³ a float64 cannot represent every integer: 2⁵³ + 1 rounds back to 2⁵³ — the reason JavaScript has Number.MAX_SAFE_INTEGER and BigInt.
  • Subnormal numbers fill the gap between zero and the smallest normal float by sacrificing precision — and are often 10-100× slower in hardware.
  • The gap between adjacent floats (1 ULP) grows with magnitude: near 1 it is 2.2×10⁻¹⁶, near 2⁵³ it is exactly 1.0.
  • Runs 100% in your browser — nothing you paste leaves your device.