11 000 111 110 000 111 000 011 099 999 610 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 11 000 111 110 000 111 000 011 099 999 610(10) to 32 bit single precision IEEE 754 binary floating point representation standard (1 bit for sign, 8 bits for exponent, 23 bits for mantissa)

What are the steps to convert decimal number
11 000 111 110 000 111 000 011 099 999 610(10) to 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;
  • 11 000 111 110 000 111 000 011 099 999 610 ÷ 2 = 5 500 055 555 000 055 500 005 549 999 805 + 0;
  • 5 500 055 555 000 055 500 005 549 999 805 ÷ 2 = 2 750 027 777 500 027 750 002 774 999 902 + 1;
  • 2 750 027 777 500 027 750 002 774 999 902 ÷ 2 = 1 375 013 888 750 013 875 001 387 499 951 + 0;
  • 1 375 013 888 750 013 875 001 387 499 951 ÷ 2 = 687 506 944 375 006 937 500 693 749 975 + 1;
  • 687 506 944 375 006 937 500 693 749 975 ÷ 2 = 343 753 472 187 503 468 750 346 874 987 + 1;
  • 343 753 472 187 503 468 750 346 874 987 ÷ 2 = 171 876 736 093 751 734 375 173 437 493 + 1;
  • 171 876 736 093 751 734 375 173 437 493 ÷ 2 = 85 938 368 046 875 867 187 586 718 746 + 1;
  • 85 938 368 046 875 867 187 586 718 746 ÷ 2 = 42 969 184 023 437 933 593 793 359 373 + 0;
  • 42 969 184 023 437 933 593 793 359 373 ÷ 2 = 21 484 592 011 718 966 796 896 679 686 + 1;
  • 21 484 592 011 718 966 796 896 679 686 ÷ 2 = 10 742 296 005 859 483 398 448 339 843 + 0;
  • 10 742 296 005 859 483 398 448 339 843 ÷ 2 = 5 371 148 002 929 741 699 224 169 921 + 1;
  • 5 371 148 002 929 741 699 224 169 921 ÷ 2 = 2 685 574 001 464 870 849 612 084 960 + 1;
  • 2 685 574 001 464 870 849 612 084 960 ÷ 2 = 1 342 787 000 732 435 424 806 042 480 + 0;
  • 1 342 787 000 732 435 424 806 042 480 ÷ 2 = 671 393 500 366 217 712 403 021 240 + 0;
  • 671 393 500 366 217 712 403 021 240 ÷ 2 = 335 696 750 183 108 856 201 510 620 + 0;
  • 335 696 750 183 108 856 201 510 620 ÷ 2 = 167 848 375 091 554 428 100 755 310 + 0;
  • 167 848 375 091 554 428 100 755 310 ÷ 2 = 83 924 187 545 777 214 050 377 655 + 0;
  • 83 924 187 545 777 214 050 377 655 ÷ 2 = 41 962 093 772 888 607 025 188 827 + 1;
  • 41 962 093 772 888 607 025 188 827 ÷ 2 = 20 981 046 886 444 303 512 594 413 + 1;
  • 20 981 046 886 444 303 512 594 413 ÷ 2 = 10 490 523 443 222 151 756 297 206 + 1;
  • 10 490 523 443 222 151 756 297 206 ÷ 2 = 5 245 261 721 611 075 878 148 603 + 0;
  • 5 245 261 721 611 075 878 148 603 ÷ 2 = 2 622 630 860 805 537 939 074 301 + 1;
  • 2 622 630 860 805 537 939 074 301 ÷ 2 = 1 311 315 430 402 768 969 537 150 + 1;
  • 1 311 315 430 402 768 969 537 150 ÷ 2 = 655 657 715 201 384 484 768 575 + 0;
  • 655 657 715 201 384 484 768 575 ÷ 2 = 327 828 857 600 692 242 384 287 + 1;
  • 327 828 857 600 692 242 384 287 ÷ 2 = 163 914 428 800 346 121 192 143 + 1;
  • 163 914 428 800 346 121 192 143 ÷ 2 = 81 957 214 400 173 060 596 071 + 1;
  • 81 957 214 400 173 060 596 071 ÷ 2 = 40 978 607 200 086 530 298 035 + 1;
  • 40 978 607 200 086 530 298 035 ÷ 2 = 20 489 303 600 043 265 149 017 + 1;
  • 20 489 303 600 043 265 149 017 ÷ 2 = 10 244 651 800 021 632 574 508 + 1;
  • 10 244 651 800 021 632 574 508 ÷ 2 = 5 122 325 900 010 816 287 254 + 0;
  • 5 122 325 900 010 816 287 254 ÷ 2 = 2 561 162 950 005 408 143 627 + 0;
  • 2 561 162 950 005 408 143 627 ÷ 2 = 1 280 581 475 002 704 071 813 + 1;
  • 1 280 581 475 002 704 071 813 ÷ 2 = 640 290 737 501 352 035 906 + 1;
  • 640 290 737 501 352 035 906 ÷ 2 = 320 145 368 750 676 017 953 + 0;
  • 320 145 368 750 676 017 953 ÷ 2 = 160 072 684 375 338 008 976 + 1;
  • 160 072 684 375 338 008 976 ÷ 2 = 80 036 342 187 669 004 488 + 0;
  • 80 036 342 187 669 004 488 ÷ 2 = 40 018 171 093 834 502 244 + 0;
  • 40 018 171 093 834 502 244 ÷ 2 = 20 009 085 546 917 251 122 + 0;
  • 20 009 085 546 917 251 122 ÷ 2 = 10 004 542 773 458 625 561 + 0;
  • 10 004 542 773 458 625 561 ÷ 2 = 5 002 271 386 729 312 780 + 1;
  • 5 002 271 386 729 312 780 ÷ 2 = 2 501 135 693 364 656 390 + 0;
  • 2 501 135 693 364 656 390 ÷ 2 = 1 250 567 846 682 328 195 + 0;
  • 1 250 567 846 682 328 195 ÷ 2 = 625 283 923 341 164 097 + 1;
  • 625 283 923 341 164 097 ÷ 2 = 312 641 961 670 582 048 + 1;
  • 312 641 961 670 582 048 ÷ 2 = 156 320 980 835 291 024 + 0;
  • 156 320 980 835 291 024 ÷ 2 = 78 160 490 417 645 512 + 0;
  • 78 160 490 417 645 512 ÷ 2 = 39 080 245 208 822 756 + 0;
  • 39 080 245 208 822 756 ÷ 2 = 19 540 122 604 411 378 + 0;
  • 19 540 122 604 411 378 ÷ 2 = 9 770 061 302 205 689 + 0;
  • 9 770 061 302 205 689 ÷ 2 = 4 885 030 651 102 844 + 1;
  • 4 885 030 651 102 844 ÷ 2 = 2 442 515 325 551 422 + 0;
  • 2 442 515 325 551 422 ÷ 2 = 1 221 257 662 775 711 + 0;
  • 1 221 257 662 775 711 ÷ 2 = 610 628 831 387 855 + 1;
  • 610 628 831 387 855 ÷ 2 = 305 314 415 693 927 + 1;
  • 305 314 415 693 927 ÷ 2 = 152 657 207 846 963 + 1;
  • 152 657 207 846 963 ÷ 2 = 76 328 603 923 481 + 1;
  • 76 328 603 923 481 ÷ 2 = 38 164 301 961 740 + 1;
  • 38 164 301 961 740 ÷ 2 = 19 082 150 980 870 + 0;
  • 19 082 150 980 870 ÷ 2 = 9 541 075 490 435 + 0;
  • 9 541 075 490 435 ÷ 2 = 4 770 537 745 217 + 1;
  • 4 770 537 745 217 ÷ 2 = 2 385 268 872 608 + 1;
  • 2 385 268 872 608 ÷ 2 = 1 192 634 436 304 + 0;
  • 1 192 634 436 304 ÷ 2 = 596 317 218 152 + 0;
  • 596 317 218 152 ÷ 2 = 298 158 609 076 + 0;
  • 298 158 609 076 ÷ 2 = 149 079 304 538 + 0;
  • 149 079 304 538 ÷ 2 = 74 539 652 269 + 0;
  • 74 539 652 269 ÷ 2 = 37 269 826 134 + 1;
  • 37 269 826 134 ÷ 2 = 18 634 913 067 + 0;
  • 18 634 913 067 ÷ 2 = 9 317 456 533 + 1;
  • 9 317 456 533 ÷ 2 = 4 658 728 266 + 1;
  • 4 658 728 266 ÷ 2 = 2 329 364 133 + 0;
  • 2 329 364 133 ÷ 2 = 1 164 682 066 + 1;
  • 1 164 682 066 ÷ 2 = 582 341 033 + 0;
  • 582 341 033 ÷ 2 = 291 170 516 + 1;
  • 291 170 516 ÷ 2 = 145 585 258 + 0;
  • 145 585 258 ÷ 2 = 72 792 629 + 0;
  • 72 792 629 ÷ 2 = 36 396 314 + 1;
  • 36 396 314 ÷ 2 = 18 198 157 + 0;
  • 18 198 157 ÷ 2 = 9 099 078 + 1;
  • 9 099 078 ÷ 2 = 4 549 539 + 0;
  • 4 549 539 ÷ 2 = 2 274 769 + 1;
  • 2 274 769 ÷ 2 = 1 137 384 + 1;
  • 1 137 384 ÷ 2 = 568 692 + 0;
  • 568 692 ÷ 2 = 284 346 + 0;
  • 284 346 ÷ 2 = 142 173 + 0;
  • 142 173 ÷ 2 = 71 086 + 1;
  • 71 086 ÷ 2 = 35 543 + 0;
  • 35 543 ÷ 2 = 17 771 + 1;
  • 17 771 ÷ 2 = 8 885 + 1;
  • 8 885 ÷ 2 = 4 442 + 1;
  • 4 442 ÷ 2 = 2 221 + 0;
  • 2 221 ÷ 2 = 1 110 + 1;
  • 1 110 ÷ 2 = 555 + 0;
  • 555 ÷ 2 = 277 + 1;
  • 277 ÷ 2 = 138 + 1;
  • 138 ÷ 2 = 69 + 0;
  • 69 ÷ 2 = 34 + 1;
  • 34 ÷ 2 = 17 + 0;
  • 17 ÷ 2 = 8 + 1;
  • 8 ÷ 2 = 4 + 0;
  • 4 ÷ 2 = 2 + 0;
  • 2 ÷ 2 = 1 + 0;
  • 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.

11 000 111 110 000 111 000 011 099 999 610(10) =


1000 1010 1101 0111 0100 0110 1010 0101 0110 1000 0011 0011 1110 0100 0001 1001 0000 1011 0011 1111 0110 1110 0000 1101 0111 1010(2)


3. Normalize the binary representation of the number.

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


11 000 111 110 000 111 000 011 099 999 610(10) =


1000 1010 1101 0111 0100 0110 1010 0101 0110 1000 0011 0011 1110 0100 0001 1001 0000 1011 0011 1111 0110 1110 0000 1101 0111 1010(2) =


1000 1010 1101 0111 0100 0110 1010 0101 0110 1000 0011 0011 1110 0100 0001 1001 0000 1011 0011 1111 0110 1110 0000 1101 0111 1010(2) × 20 =


1.0001 0101 1010 1110 1000 1101 0100 1010 1101 0000 0110 0111 1100 1000 0011 0010 0001 0110 0111 1110 1101 1100 0001 1010 1111 010(2) × 2103


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): 103


Mantissa (not normalized):
1.0001 0101 1010 1110 1000 1101 0100 1010 1101 0000 0110 0111 1100 1000 0011 0010 0001 0110 0111 1110 1101 1100 0001 1010 1111 010


5. Adjust the exponent.

Use the 8 bit excess/bias notation:


Exponent (adjusted) =


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


103 + 2(8-1) - 1 =


(103 + 127)(10) =


230(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;
  • 230 ÷ 2 = 115 + 0;
  • 115 ÷ 2 = 57 + 1;
  • 57 ÷ 2 = 28 + 1;
  • 28 ÷ 2 = 14 + 0;
  • 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) =


230(10) =


1110 0110(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. 000 1010 1101 0111 0100 0110 1010 0101 0110 1000 0011 0011 1110 0100 0001 1001 0000 1011 0011 1111 0110 1110 0000 1101 0111 1010 =


000 1010 1101 0111 0100 0110


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 0110


Mantissa (23 bits) =
000 1010 1101 0111 0100 0110


Decimal number 11 000 111 110 000 111 000 011 099 999 610 converted to 32 bit single precision IEEE 754 binary floating point representation:

0 - 1110 0110 - 000 1010 1101 0111 0100 0110

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