Binary Floating Point Converter
Understand how computers represent decimal numbers in binary floating point (IEEE 754). Convert between decimal and binary floating point — with sign bit, exponent, and mantissa breakdowns.
What is Binary Floating Point Converter?
The Binary Floating Point Converter is a tool that converts decimal numbers into their IEEE 754 floating-point binary representation and vice versa. It breaks down the binary encoding into its three components — sign bit, exponent, and mantissa (significand) — showing exactly how computers store fractional and very large or very small numbers.
This tool exists because IEEE 754 is the universal standard for floating-point arithmetic in computing, used by every modern CPU, GPU, and programming language. Understanding how decimal numbers like 0.1 or 3.14 are encoded in binary — and why precision loss occurs — is critical for developers working with scientific computing, financial calculations, graphics, and machine learning.
Whether you're debugging why 0.1 + 0.2 ≠ 0.3 in your code, studying computer architecture, or working with low-level data formats, this converter reveals the exact binary representation that the CPU sees.
Binary Floating Point Converter Formula
Enter a decimal number to see how it's decomposed into the three fields of a 32-bit IEEE 754 single-precision float: Sign, Exponent, and Mantissa.
Why 0.1 + 0.2 ≠ 0.3
This is the most famous floating-point "bug" — but it's actually by design. The decimal fraction 0.1 is a repeating fraction in binary: 0.000110011001100… (forever).
Since IEEE 754 has finite bits (23 for the mantissa in single precision), the value gets rounded. When you add two rounded values, the rounding errors accumulate, producing 0.30000000000000004 instead of exactly 0.3.
console.log(0.1 + 0.2) // → 0.30000000000000004 This happens in every language that uses IEEE 754: JavaScript, Python, Java, C++, Rust, Go — all of them.
Special IEEE 754 Values
| Value | Sign | Exponent | Mantissa | Notes |
|---|---|---|---|---|
| +0 | 0 | 00000000 | 000…000 | Positive zero |
| −0 | 1 | 00000000 | 000…000 | Negative zero (equals +0) |
| +∞ | 0 | 11111111 | 000…000 | 1.0 / 0.0 |
| −∞ | 1 | 11111111 | 000…000 | −1.0 / 0.0 |
| NaN | 0/1 | 11111111 | non-zero | 0/0, √(−1) |
| Smallest Normal | 0 | 00000001 | 000…000 | ≈ 1.18 × 10⁻³⁸ |
| Largest Normal | 0 | 11111110 | 111…111 | ≈ 3.40 × 10³⁸ |
| Smallest Subnormal | 0 | 00000000 | 000…001 | ≈ 1.40 × 10⁻⁴⁵ |
Other Number System Conversions
Related numeral systems converters for number conversion between binary, decimal, hexadecimal, octal, and ASCII text.