32bit IEEE 754: Decimal ↗ Single Precision Floating Point Binary: 9 000 000 000 000 000 000 000 000 000 001 051 Convert the Number to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard, From a Base 10 Decimal System Number

Number 9 000 000 000 000 000 000 000 000 000 001 051(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)

1. 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;
  • 9 000 000 000 000 000 000 000 000 000 001 051 ÷ 2 = 4 500 000 000 000 000 000 000 000 000 000 525 + 1;
  • 4 500 000 000 000 000 000 000 000 000 000 525 ÷ 2 = 2 250 000 000 000 000 000 000 000 000 000 262 + 1;
  • 2 250 000 000 000 000 000 000 000 000 000 262 ÷ 2 = 1 125 000 000 000 000 000 000 000 000 000 131 + 0;
  • 1 125 000 000 000 000 000 000 000 000 000 131 ÷ 2 = 562 500 000 000 000 000 000 000 000 000 065 + 1;
  • 562 500 000 000 000 000 000 000 000 000 065 ÷ 2 = 281 250 000 000 000 000 000 000 000 000 032 + 1;
  • 281 250 000 000 000 000 000 000 000 000 032 ÷ 2 = 140 625 000 000 000 000 000 000 000 000 016 + 0;
  • 140 625 000 000 000 000 000 000 000 000 016 ÷ 2 = 70 312 500 000 000 000 000 000 000 000 008 + 0;
  • 70 312 500 000 000 000 000 000 000 000 008 ÷ 2 = 35 156 250 000 000 000 000 000 000 000 004 + 0;
  • 35 156 250 000 000 000 000 000 000 000 004 ÷ 2 = 17 578 125 000 000 000 000 000 000 000 002 + 0;
  • 17 578 125 000 000 000 000 000 000 000 002 ÷ 2 = 8 789 062 500 000 000 000 000 000 000 001 + 0;
  • 8 789 062 500 000 000 000 000 000 000 001 ÷ 2 = 4 394 531 250 000 000 000 000 000 000 000 + 1;
  • 4 394 531 250 000 000 000 000 000 000 000 ÷ 2 = 2 197 265 625 000 000 000 000 000 000 000 + 0;
  • 2 197 265 625 000 000 000 000 000 000 000 ÷ 2 = 1 098 632 812 500 000 000 000 000 000 000 + 0;
  • 1 098 632 812 500 000 000 000 000 000 000 ÷ 2 = 549 316 406 250 000 000 000 000 000 000 + 0;
  • 549 316 406 250 000 000 000 000 000 000 ÷ 2 = 274 658 203 125 000 000 000 000 000 000 + 0;
  • 274 658 203 125 000 000 000 000 000 000 ÷ 2 = 137 329 101 562 500 000 000 000 000 000 + 0;
  • 137 329 101 562 500 000 000 000 000 000 ÷ 2 = 68 664 550 781 250 000 000 000 000 000 + 0;
  • 68 664 550 781 250 000 000 000 000 000 ÷ 2 = 34 332 275 390 625 000 000 000 000 000 + 0;
  • 34 332 275 390 625 000 000 000 000 000 ÷ 2 = 17 166 137 695 312 500 000 000 000 000 + 0;
  • 17 166 137 695 312 500 000 000 000 000 ÷ 2 = 8 583 068 847 656 250 000 000 000 000 + 0;
  • 8 583 068 847 656 250 000 000 000 000 ÷ 2 = 4 291 534 423 828 125 000 000 000 000 + 0;
  • 4 291 534 423 828 125 000 000 000 000 ÷ 2 = 2 145 767 211 914 062 500 000 000 000 + 0;
  • 2 145 767 211 914 062 500 000 000 000 ÷ 2 = 1 072 883 605 957 031 250 000 000 000 + 0;
  • 1 072 883 605 957 031 250 000 000 000 ÷ 2 = 536 441 802 978 515 625 000 000 000 + 0;
  • 536 441 802 978 515 625 000 000 000 ÷ 2 = 268 220 901 489 257 812 500 000 000 + 0;
  • 268 220 901 489 257 812 500 000 000 ÷ 2 = 134 110 450 744 628 906 250 000 000 + 0;
  • 134 110 450 744 628 906 250 000 000 ÷ 2 = 67 055 225 372 314 453 125 000 000 + 0;
  • 67 055 225 372 314 453 125 000 000 ÷ 2 = 33 527 612 686 157 226 562 500 000 + 0;
  • 33 527 612 686 157 226 562 500 000 ÷ 2 = 16 763 806 343 078 613 281 250 000 + 0;
  • 16 763 806 343 078 613 281 250 000 ÷ 2 = 8 381 903 171 539 306 640 625 000 + 0;
  • 8 381 903 171 539 306 640 625 000 ÷ 2 = 4 190 951 585 769 653 320 312 500 + 0;
  • 4 190 951 585 769 653 320 312 500 ÷ 2 = 2 095 475 792 884 826 660 156 250 + 0;
  • 2 095 475 792 884 826 660 156 250 ÷ 2 = 1 047 737 896 442 413 330 078 125 + 0;
  • 1 047 737 896 442 413 330 078 125 ÷ 2 = 523 868 948 221 206 665 039 062 + 1;
  • 523 868 948 221 206 665 039 062 ÷ 2 = 261 934 474 110 603 332 519 531 + 0;
  • 261 934 474 110 603 332 519 531 ÷ 2 = 130 967 237 055 301 666 259 765 + 1;
  • 130 967 237 055 301 666 259 765 ÷ 2 = 65 483 618 527 650 833 129 882 + 1;
  • 65 483 618 527 650 833 129 882 ÷ 2 = 32 741 809 263 825 416 564 941 + 0;
  • 32 741 809 263 825 416 564 941 ÷ 2 = 16 370 904 631 912 708 282 470 + 1;
  • 16 370 904 631 912 708 282 470 ÷ 2 = 8 185 452 315 956 354 141 235 + 0;
  • 8 185 452 315 956 354 141 235 ÷ 2 = 4 092 726 157 978 177 070 617 + 1;
  • 4 092 726 157 978 177 070 617 ÷ 2 = 2 046 363 078 989 088 535 308 + 1;
  • 2 046 363 078 989 088 535 308 ÷ 2 = 1 023 181 539 494 544 267 654 + 0;
  • 1 023 181 539 494 544 267 654 ÷ 2 = 511 590 769 747 272 133 827 + 0;
  • 511 590 769 747 272 133 827 ÷ 2 = 255 795 384 873 636 066 913 + 1;
  • 255 795 384 873 636 066 913 ÷ 2 = 127 897 692 436 818 033 456 + 1;
  • 127 897 692 436 818 033 456 ÷ 2 = 63 948 846 218 409 016 728 + 0;
  • 63 948 846 218 409 016 728 ÷ 2 = 31 974 423 109 204 508 364 + 0;
  • 31 974 423 109 204 508 364 ÷ 2 = 15 987 211 554 602 254 182 + 0;
  • 15 987 211 554 602 254 182 ÷ 2 = 7 993 605 777 301 127 091 + 0;
  • 7 993 605 777 301 127 091 ÷ 2 = 3 996 802 888 650 563 545 + 1;
  • 3 996 802 888 650 563 545 ÷ 2 = 1 998 401 444 325 281 772 + 1;
  • 1 998 401 444 325 281 772 ÷ 2 = 999 200 722 162 640 886 + 0;
  • 999 200 722 162 640 886 ÷ 2 = 499 600 361 081 320 443 + 0;
  • 499 600 361 081 320 443 ÷ 2 = 249 800 180 540 660 221 + 1;
  • 249 800 180 540 660 221 ÷ 2 = 124 900 090 270 330 110 + 1;
  • 124 900 090 270 330 110 ÷ 2 = 62 450 045 135 165 055 + 0;
  • 62 450 045 135 165 055 ÷ 2 = 31 225 022 567 582 527 + 1;
  • 31 225 022 567 582 527 ÷ 2 = 15 612 511 283 791 263 + 1;
  • 15 612 511 283 791 263 ÷ 2 = 7 806 255 641 895 631 + 1;
  • 7 806 255 641 895 631 ÷ 2 = 3 903 127 820 947 815 + 1;
  • 3 903 127 820 947 815 ÷ 2 = 1 951 563 910 473 907 + 1;
  • 1 951 563 910 473 907 ÷ 2 = 975 781 955 236 953 + 1;
  • 975 781 955 236 953 ÷ 2 = 487 890 977 618 476 + 1;
  • 487 890 977 618 476 ÷ 2 = 243 945 488 809 238 + 0;
  • 243 945 488 809 238 ÷ 2 = 121 972 744 404 619 + 0;
  • 121 972 744 404 619 ÷ 2 = 60 986 372 202 309 + 1;
  • 60 986 372 202 309 ÷ 2 = 30 493 186 101 154 + 1;
  • 30 493 186 101 154 ÷ 2 = 15 246 593 050 577 + 0;
  • 15 246 593 050 577 ÷ 2 = 7 623 296 525 288 + 1;
  • 7 623 296 525 288 ÷ 2 = 3 811 648 262 644 + 0;
  • 3 811 648 262 644 ÷ 2 = 1 905 824 131 322 + 0;
  • 1 905 824 131 322 ÷ 2 = 952 912 065 661 + 0;
  • 952 912 065 661 ÷ 2 = 476 456 032 830 + 1;
  • 476 456 032 830 ÷ 2 = 238 228 016 415 + 0;
  • 238 228 016 415 ÷ 2 = 119 114 008 207 + 1;
  • 119 114 008 207 ÷ 2 = 59 557 004 103 + 1;
  • 59 557 004 103 ÷ 2 = 29 778 502 051 + 1;
  • 29 778 502 051 ÷ 2 = 14 889 251 025 + 1;
  • 14 889 251 025 ÷ 2 = 7 444 625 512 + 1;
  • 7 444 625 512 ÷ 2 = 3 722 312 756 + 0;
  • 3 722 312 756 ÷ 2 = 1 861 156 378 + 0;
  • 1 861 156 378 ÷ 2 = 930 578 189 + 0;
  • 930 578 189 ÷ 2 = 465 289 094 + 1;
  • 465 289 094 ÷ 2 = 232 644 547 + 0;
  • 232 644 547 ÷ 2 = 116 322 273 + 1;
  • 116 322 273 ÷ 2 = 58 161 136 + 1;
  • 58 161 136 ÷ 2 = 29 080 568 + 0;
  • 29 080 568 ÷ 2 = 14 540 284 + 0;
  • 14 540 284 ÷ 2 = 7 270 142 + 0;
  • 7 270 142 ÷ 2 = 3 635 071 + 0;
  • 3 635 071 ÷ 2 = 1 817 535 + 1;
  • 1 817 535 ÷ 2 = 908 767 + 1;
  • 908 767 ÷ 2 = 454 383 + 1;
  • 454 383 ÷ 2 = 227 191 + 1;
  • 227 191 ÷ 2 = 113 595 + 1;
  • 113 595 ÷ 2 = 56 797 + 1;
  • 56 797 ÷ 2 = 28 398 + 1;
  • 28 398 ÷ 2 = 14 199 + 0;
  • 14 199 ÷ 2 = 7 099 + 1;
  • 7 099 ÷ 2 = 3 549 + 1;
  • 3 549 ÷ 2 = 1 774 + 1;
  • 1 774 ÷ 2 = 887 + 0;
  • 887 ÷ 2 = 443 + 1;
  • 443 ÷ 2 = 221 + 1;
  • 221 ÷ 2 = 110 + 1;
  • 110 ÷ 2 = 55 + 0;
  • 55 ÷ 2 = 27 + 1;
  • 27 ÷ 2 = 13 + 1;
  • 13 ÷ 2 = 6 + 1;
  • 6 ÷ 2 = 3 + 0;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

2. Construct the base 2 representation of the positive number.

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


9 000 000 000 000 000 000 000 000 000 001 051(10) =


1 1011 1011 1011 1011 1111 1000 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011(2)


3. Normalize the binary representation of the number.

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


9 000 000 000 000 000 000 000 000 000 001 051(10) =


1 1011 1011 1011 1011 1111 1000 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011(2) =


1 1011 1011 1011 1011 1111 1000 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011(2) × 20 =


1.1011 1011 1011 1011 1111 1000 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011(2) × 2112


4. 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): 112


Mantissa (not normalized):
1.1011 1011 1011 1011 1111 1000 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011


5. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


112 + 2(8-1) - 1 =


(112 + 127)(10) =


239(10)


6. 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;
  • 239 ÷ 2 = 119 + 1;
  • 119 ÷ 2 = 59 + 1;
  • 59 ÷ 2 = 29 + 1;
  • 29 ÷ 2 = 14 + 1;
  • 14 ÷ 2 = 7 + 0;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

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

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


Exponent (adjusted) =


239(10) =


1110 1111(2)


8. 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, by removing the excess bits, from the right (if any of the excess bits is set on 1, we are losing precision...).


Mantissa (normalized) =


1. 101 1101 1101 1101 1111 1100 0 0110 1000 1111 1010 0010 1100 1111 1110 1100 1100 0011 0011 0101 1010 0000 0000 0000 0000 0000 0100 0001 1011 =


101 1101 1101 1101 1111 1100


9. 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) =
1110 1111


Mantissa (23 bits) =
101 1101 1101 1101 1111 1100


The base ten decimal number 9 000 000 000 000 000 000 000 000 000 001 051 converted and written in 32 bit single precision IEEE 754 binary floating point representation:
0 - 1110 1111 - 101 1101 1101 1101 1111 1100

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

Number 51 003 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number -0.235 3 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 10 101 000 000 000 000 000 093 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 11 000 010 101 011 101 100 000 000 000 047 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 116.723 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 390 556 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 11 000 001 000 000 999 999 999 999 999 974 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 316 579 075 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 1 440 011 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 UTC (GMT)
Number 61 471 converted from decimal system (written in base ten) to 32 bit single precision IEEE 754 binary floating point representation standard May 19 02:07 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:

  • 1. If the number to be converted is negative, start with its the positive version.
  • 2. First convert the integer part. Divide repeatedly by 2 the base ten positive representation of the integer number that is to be converted to binary, until we get a quotient that is equal to zero, keeping track of each remainder.
  • 3. Construct the base 2 representation of the positive integer part of the number, by taking all the remainders of the previous dividing operations, starting from the bottom of the list constructed above. Thus, the last remainder of the divisions becomes the first symbol (the leftmost) of the base two number, while the first remainder becomes the last symbol (the rightmost).
  • 4. Then convert the fractional part. Multiply the number repeatedly by 2, until we get a fractional part that is equal to zero, keeping track of each integer part of the results.
  • 5. Construct the base 2 representation of the fractional part of the number by taking all the integer parts of the previous multiplying operations, starting from the top of the constructed list above (they should appear in the binary representation, from left to right, in the order they have been calculated).
  • 6. Normalize the binary representation of the number, by shifting the decimal point (or if you prefer, the decimal mark) "n" positions either to the left or to the right, so that only one non zero digit remains to the left of the decimal point.
  • 7. Adjust the exponent in 8 bit excess/bias notation and then convert it from decimal (base 10) to 8 bit binary, by using the same technique of repeatedly dividing by 2, as shown above:
    Exponent (adjusted) = Exponent (unadjusted) + 2(8-1) - 1
  • 8. Normalize mantissa, remove the leading (leftmost) bit, since it's allways '1' (and the decimal sign if the case) and adjust its length to 23 bits, either by removing the excess bits from the right (losing precision...) or by adding extra '0' bits to the right.
  • 9. Sign (it takes 1 bit) is either 1 for a negative or 0 for a positive number.

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

  • 1. Start with the positive version of the number:

    |-25.347| = 25.347

  • 2. First convert the integer part, 25. Divide it repeatedly by 2, keeping track of each remainder, until we get a quotient that is equal to zero:
    • division = quotient + remainder;
    • 25 ÷ 2 = 12 + 1;
    • 12 ÷ 2 = 6 + 0;
    • 6 ÷ 2 = 3 + 0;
    • 3 ÷ 2 = 1 + 1;
    • 1 ÷ 2 = 0 + 1;
    • We have encountered a quotient that is ZERO => FULL STOP
  • 3. Construct the base 2 representation of the integer part of the number by taking all the remainders of the previous dividing operations, starting from the bottom of the list constructed above:

    25(10) = 1 1001(2)

  • 4. Then convert the fractional part, 0.347. Multiply repeatedly by 2, keeping track of each integer part of the results, until we get a fractional part that is equal to zero:
    • #) multiplying = integer + fractional part;
    • 1) 0.347 × 2 = 0 + 0.694;
    • 2) 0.694 × 2 = 1 + 0.388;
    • 3) 0.388 × 2 = 0 + 0.776;
    • 4) 0.776 × 2 = 1 + 0.552;
    • 5) 0.552 × 2 = 1 + 0.104;
    • 6) 0.104 × 2 = 0 + 0.208;
    • 7) 0.208 × 2 = 0 + 0.416;
    • 8) 0.416 × 2 = 0 + 0.832;
    • 9) 0.832 × 2 = 1 + 0.664;
    • 10) 0.664 × 2 = 1 + 0.328;
    • 11) 0.328 × 2 = 0 + 0.656;
    • 12) 0.656 × 2 = 1 + 0.312;
    • 13) 0.312 × 2 = 0 + 0.624;
    • 14) 0.624 × 2 = 1 + 0.248;
    • 15) 0.248 × 2 = 0 + 0.496;
    • 16) 0.496 × 2 = 0 + 0.992;
    • 17) 0.992 × 2 = 1 + 0.984;
    • 18) 0.984 × 2 = 1 + 0.968;
    • 19) 0.968 × 2 = 1 + 0.936;
    • 20) 0.936 × 2 = 1 + 0.872;
    • 21) 0.872 × 2 = 1 + 0.744;
    • 22) 0.744 × 2 = 1 + 0.488;
    • 23) 0.488 × 2 = 0 + 0.976;
    • 24) 0.976 × 2 = 1 + 0.952;
    • We didn't get any fractional part that was equal to zero. But we had enough iterations (over Mantissa limit = 23) and at least one integer part that was different from zero => FULL STOP (losing precision...).
  • 5. Construct the base 2 representation of the fractional part of the number, by taking all the integer parts of the previous multiplying operations, starting from the top of the constructed list above:

    0.347(10) = 0.0101 1000 1101 0100 1111 1101(2)

  • 6. Summarizing - the positive number before normalization:

    25.347(10) = 1 1001.0101 1000 1101 0100 1111 1101(2)

  • 7. Normalize the binary representation of the number, shifting the decimal point 4 positions to the left so that only one non-zero digit stays to the left of the decimal point:

    25.347(10) =
    1 1001.0101 1000 1101 0100 1111 1101(2) =
    1 1001.0101 1000 1101 0100 1111 1101(2) × 20 =
    1.1001 0101 1000 1101 0100 1111 1101(2) × 24

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

    Sign: 1 (a negative number)

    Exponent (unadjusted): 4

    Mantissa (not-normalized): 1.1001 0101 1000 1101 0100 1111 1101

  • 9. Adjust the exponent in 8 bit excess/bias notation and then convert it from decimal (base 10) to 8 bit binary (base 2), by using the same technique of repeatedly dividing it by 2, as already demonstrated above:

    Exponent (adjusted) = Exponent (unadjusted) + 2(8-1) - 1 = (4 + 127)(10) = 131(10) =
    1000 0011(2)

  • 10. Normalize the mantissa, remove the leading (leftmost) bit, since it's allways '1' (and the decimal point) and adjust its length to 23 bits, by removing the excess bits from the right (losing precision...):

    Mantissa (not-normalized): 1.1001 0101 1000 1101 0100 1111 1101

    Mantissa (normalized): 100 1010 1100 0110 1010 0111

  • Conclusion:

    Sign (1 bit) = 1 (a negative number)

    Exponent (8 bits) = 1000 0011

    Mantissa (23 bits) = 100 1010 1100 0110 1010 0111

  • Number -25.347, converted from the decimal system (base 10) to 32 bit single precision IEEE 754 binary floating point =
    1 - 1000 0011 - 100 1010 1100 0110 1010 0111