Convert the Number 0.871 2 to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard, From a Base 10 Decimal System Number. Detailed Explanations

Number 0.871 2(10) converted and written in 32 bit single precision IEEE 754 binary floating point representation (1 bit for sign, 8 bits for exponent, 23 bits for mantissa)

The first steps we'll go through to make the conversion:

Convert to binary (to base 2) the integer part of the number.

Convert to binary the fractional part of the number.


1. First, convert to binary (in base 2) the integer part: 0.
Divide the number repeatedly by 2.

Keep track of each remainder.

We stop when we get a quotient that is equal to zero.


  • division = quotient + remainder;
  • 0 ÷ 2 = 0 + 0;

2. Construct the base 2 representation of the integer part of the number.

Take all the remainders starting from the bottom of the list constructed above.


0(10) =


0(2)


3. Convert to binary (base 2) the fractional part: 0.871 2.

Multiply it repeatedly by 2.


Keep track of each integer part of the results.


Stop when we get a fractional part that is equal to zero.


  • #) multiplying = integer + fractional part;
  • 1) 0.871 2 × 2 = 1 + 0.742 4;
  • 2) 0.742 4 × 2 = 1 + 0.484 8;
  • 3) 0.484 8 × 2 = 0 + 0.969 6;
  • 4) 0.969 6 × 2 = 1 + 0.939 2;
  • 5) 0.939 2 × 2 = 1 + 0.878 4;
  • 6) 0.878 4 × 2 = 1 + 0.756 8;
  • 7) 0.756 8 × 2 = 1 + 0.513 6;
  • 8) 0.513 6 × 2 = 1 + 0.027 2;
  • 9) 0.027 2 × 2 = 0 + 0.054 4;
  • 10) 0.054 4 × 2 = 0 + 0.108 8;
  • 11) 0.108 8 × 2 = 0 + 0.217 6;
  • 12) 0.217 6 × 2 = 0 + 0.435 2;
  • 13) 0.435 2 × 2 = 0 + 0.870 4;
  • 14) 0.870 4 × 2 = 1 + 0.740 8;
  • 15) 0.740 8 × 2 = 1 + 0.481 6;
  • 16) 0.481 6 × 2 = 0 + 0.963 2;
  • 17) 0.963 2 × 2 = 1 + 0.926 4;
  • 18) 0.926 4 × 2 = 1 + 0.852 8;
  • 19) 0.852 8 × 2 = 1 + 0.705 6;
  • 20) 0.705 6 × 2 = 1 + 0.411 2;
  • 21) 0.411 2 × 2 = 0 + 0.822 4;
  • 22) 0.822 4 × 2 = 1 + 0.644 8;
  • 23) 0.644 8 × 2 = 1 + 0.289 6;
  • 24) 0.289 6 × 2 = 0 + 0.579 2;

We didn't get any fractional part that was equal to zero. But we had enough iterations (over Mantissa limit) and at least one integer that was different from zero => FULL STOP (losing precision...)


4. Construct the base 2 representation of the fractional part of the number.

Take all the integer parts of the multiplying operations, starting from the top of the constructed list above:


0.871 2(10) =


0.1101 1111 0000 0110 1111 0110(2)


5. Positive number before normalization:

0.871 2(10) =


0.1101 1111 0000 0110 1111 0110(2)


The last steps we'll go through to make the conversion:

Normalize the binary representation of the number.

Adjust the exponent.

Convert the adjusted exponent from the decimal (base 10) to 8 bit binary.

Normalize the mantissa.


6. Normalize the binary representation of the number.

Shift the decimal mark 1 positions to the right, so that only one non zero digit remains to the left of it:


0.871 2(10) =


0.1101 1111 0000 0110 1111 0110(2) =


0.1101 1111 0000 0110 1111 0110(2) × 20 =


1.1011 1110 0000 1101 1110 110(2) × 2-1


7. Up to this moment, there are the following elements that would feed into the 32 bit single precision IEEE 754 binary floating point representation:

Sign 0 (a positive number)


Exponent (unadjusted): -1


Mantissa (not normalized):
1.1011 1110 0000 1101 1110 110


8. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


Exponent (unadjusted) + 2(8-1) - 1 =


-1 + 2(8-1) - 1 =


(-1 + 127)(10) =


126(10)


9. Convert the adjusted exponent from the decimal (base 10) to 8 bit binary.

Use the same technique of repeatedly dividing by 2:


  • division = quotient + remainder;
  • 126 ÷ 2 = 63 + 0;
  • 63 ÷ 2 = 31 + 1;
  • 31 ÷ 2 = 15 + 1;
  • 15 ÷ 2 = 7 + 1;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

10. Construct the base 2 representation of the adjusted exponent.

Take all the remainders starting from the bottom of the list constructed above.


Exponent (adjusted) =


126(10) =


0111 1110(2)


11. Normalize the mantissa.

a) Remove the leading (the leftmost) bit, since it's allways 1, and the decimal point, if the case.


b) Adjust its length to 23 bits, only if necessary (not the case here).


Mantissa (normalized) =


1. 101 1111 0000 0110 1111 0110 =


101 1111 0000 0110 1111 0110


12. The three elements that make up the number's 32 bit single precision IEEE 754 binary floating point representation:

Sign (1 bit) =
0 (a positive number)


Exponent (8 bits) =
0111 1110


Mantissa (23 bits) =
101 1111 0000 0110 1111 0110


The base ten decimal number 0.871 2 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
0 - 0111 1110 - 101 1111 0000 0110 1111 0110

(32 bits IEEE 754)

Number 0.871 1 converted from decimal system (base 10) to 32 bit single precision IEEE 754 binary floating point representation = ?

Number 0.871 3 converted from decimal system (base 10) to 32 bit single precision IEEE 754 binary floating point representation = ?

Convert to 32 bit single precision IEEE 754 binary floating point representation standard

A number in 64 bit double precision IEEE 754 binary floating point standard representation requires three building elements: sign (it takes 1 bit and it's either 0 for positive or 1 for negative numbers), exponent (11 bits), mantissa (52 bits)

The latest decimal numbers converted from base ten to 32 bit single precision IEEE 754 floating point binary standard representation

Number 0.871 2 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 2.104 166 666 666 65 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 4 519 999 986 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 62 600 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 37.019 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 111 011 099 997 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 2.020 605 904 817 75 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 20 050 735 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number -16 557 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
Number 101 110 110 101 010 960 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard Oct 03 14:29 UTC (GMT)
All base ten decimal numbers converted to 32 bit single precision IEEE 754 binary floating point

How to convert decimal numbers from base ten to 32 bit single precision IEEE 754 binary floating point standard

Follow the steps below to convert a base 10 decimal number to 32 bit single precision IEEE 754 binary floating point:

Example: convert the negative number -25.347 from decimal system (base ten) to 32 bit single precision IEEE 754 binary floating point:

Available Base Conversions Between Decimal and Binary Systems

Conversions Between Decimal System Numbers (Written in Base Ten) and Binary System Numbers (Base Two and Computer Representation):


1. Integer -> Binary

2. Decimal -> Binary

3. Binary -> Integer

4. Binary -> Decimal