What is the IEEE 754 Floating Point Converter?
This tool decodes a 32-bit hexadecimal value into the real number it represents under the IEEE 754 single-precision standard — the format used by the float type in C, Java, and most modern hardware. Enter eight hex digits and the calculator splits them into the three fields that make up a float: 1 sign bit, 8 exponent bits, and 23 mantissa (fraction) bits, then reassembles them into a decimal value.
How to use it
Type the 32-bit value as hexadecimal (for example 40490FDB). The "0x" prefix is optional and any non-hex characters are ignored. Values shorter than 8 digits are zero-padded on the left. The result shows the decimal value plus the decoded sign, stored exponent, unbiased exponent, and mantissa so you can verify the bit layout yourself.
The formula explained
For normal numbers the value is $$\text{Value} = (-1)^{s} \times \left(1 + \frac{m}{2^{23}}\right) \times 2^{(e - 127)}$$ The 127 is the exponent bias for single precision. The "1 +" reflects the implicit leading bit that normalized binary numbers always have. When the stored exponent e is 0, the number is subnormal: the implicit leading 1 disappears and the exponent is pinned at -126. When e is 255 the value is infinity (mantissa 0) or NaN.
Worked example
Take 40490FDB. In binary the sign is 0 (positive), the exponent field is 10000000 = 128, so the unbiased exponent is \(128 - 127 = 1\). The mantissa bits equal 4788187, giving a fraction of \(4788187/8388608 \approx 0.5707964\). The value is $$(1 + 0.5707964) \times 2^{1} \approx 3.14159274$$ — the closest single-precision approximation of π.
FAQ
Why isn't the result exactly the number I expected? Single precision only has about 7 decimal digits of accuracy, so many decimal values round to the nearest representable float.
What about double precision (64-bit)? This tool handles 32-bit single precision. Doubles use 11 exponent bits, a 52-bit mantissa, and a bias of 1023.
What does 7FC00000 give? That is a NaN (exponent all ones, non-zero mantissa), which is not a finite number.