11 001 101 111 099 999 999 999 999 999 907 Converted to 32 Bit Single Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 11 001 101 111 099 999 999 999 999 999 907(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 001 101 111 099 999 999 999 999 999 907(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 001 101 111 099 999 999 999 999 999 907 ÷ 2 = 5 500 550 555 549 999 999 999 999 999 953 + 1;
  • 5 500 550 555 549 999 999 999 999 999 953 ÷ 2 = 2 750 275 277 774 999 999 999 999 999 976 + 1;
  • 2 750 275 277 774 999 999 999 999 999 976 ÷ 2 = 1 375 137 638 887 499 999 999 999 999 988 + 0;
  • 1 375 137 638 887 499 999 999 999 999 988 ÷ 2 = 687 568 819 443 749 999 999 999 999 994 + 0;
  • 687 568 819 443 749 999 999 999 999 994 ÷ 2 = 343 784 409 721 874 999 999 999 999 997 + 0;
  • 343 784 409 721 874 999 999 999 999 997 ÷ 2 = 171 892 204 860 937 499 999 999 999 998 + 1;
  • 171 892 204 860 937 499 999 999 999 998 ÷ 2 = 85 946 102 430 468 749 999 999 999 999 + 0;
  • 85 946 102 430 468 749 999 999 999 999 ÷ 2 = 42 973 051 215 234 374 999 999 999 999 + 1;
  • 42 973 051 215 234 374 999 999 999 999 ÷ 2 = 21 486 525 607 617 187 499 999 999 999 + 1;
  • 21 486 525 607 617 187 499 999 999 999 ÷ 2 = 10 743 262 803 808 593 749 999 999 999 + 1;
  • 10 743 262 803 808 593 749 999 999 999 ÷ 2 = 5 371 631 401 904 296 874 999 999 999 + 1;
  • 5 371 631 401 904 296 874 999 999 999 ÷ 2 = 2 685 815 700 952 148 437 499 999 999 + 1;
  • 2 685 815 700 952 148 437 499 999 999 ÷ 2 = 1 342 907 850 476 074 218 749 999 999 + 1;
  • 1 342 907 850 476 074 218 749 999 999 ÷ 2 = 671 453 925 238 037 109 374 999 999 + 1;
  • 671 453 925 238 037 109 374 999 999 ÷ 2 = 335 726 962 619 018 554 687 499 999 + 1;
  • 335 726 962 619 018 554 687 499 999 ÷ 2 = 167 863 481 309 509 277 343 749 999 + 1;
  • 167 863 481 309 509 277 343 749 999 ÷ 2 = 83 931 740 654 754 638 671 874 999 + 1;
  • 83 931 740 654 754 638 671 874 999 ÷ 2 = 41 965 870 327 377 319 335 937 499 + 1;
  • 41 965 870 327 377 319 335 937 499 ÷ 2 = 20 982 935 163 688 659 667 968 749 + 1;
  • 20 982 935 163 688 659 667 968 749 ÷ 2 = 10 491 467 581 844 329 833 984 374 + 1;
  • 10 491 467 581 844 329 833 984 374 ÷ 2 = 5 245 733 790 922 164 916 992 187 + 0;
  • 5 245 733 790 922 164 916 992 187 ÷ 2 = 2 622 866 895 461 082 458 496 093 + 1;
  • 2 622 866 895 461 082 458 496 093 ÷ 2 = 1 311 433 447 730 541 229 248 046 + 1;
  • 1 311 433 447 730 541 229 248 046 ÷ 2 = 655 716 723 865 270 614 624 023 + 0;
  • 655 716 723 865 270 614 624 023 ÷ 2 = 327 858 361 932 635 307 312 011 + 1;
  • 327 858 361 932 635 307 312 011 ÷ 2 = 163 929 180 966 317 653 656 005 + 1;
  • 163 929 180 966 317 653 656 005 ÷ 2 = 81 964 590 483 158 826 828 002 + 1;
  • 81 964 590 483 158 826 828 002 ÷ 2 = 40 982 295 241 579 413 414 001 + 0;
  • 40 982 295 241 579 413 414 001 ÷ 2 = 20 491 147 620 789 706 707 000 + 1;
  • 20 491 147 620 789 706 707 000 ÷ 2 = 10 245 573 810 394 853 353 500 + 0;
  • 10 245 573 810 394 853 353 500 ÷ 2 = 5 122 786 905 197 426 676 750 + 0;
  • 5 122 786 905 197 426 676 750 ÷ 2 = 2 561 393 452 598 713 338 375 + 0;
  • 2 561 393 452 598 713 338 375 ÷ 2 = 1 280 696 726 299 356 669 187 + 1;
  • 1 280 696 726 299 356 669 187 ÷ 2 = 640 348 363 149 678 334 593 + 1;
  • 640 348 363 149 678 334 593 ÷ 2 = 320 174 181 574 839 167 296 + 1;
  • 320 174 181 574 839 167 296 ÷ 2 = 160 087 090 787 419 583 648 + 0;
  • 160 087 090 787 419 583 648 ÷ 2 = 80 043 545 393 709 791 824 + 0;
  • 80 043 545 393 709 791 824 ÷ 2 = 40 021 772 696 854 895 912 + 0;
  • 40 021 772 696 854 895 912 ÷ 2 = 20 010 886 348 427 447 956 + 0;
  • 20 010 886 348 427 447 956 ÷ 2 = 10 005 443 174 213 723 978 + 0;
  • 10 005 443 174 213 723 978 ÷ 2 = 5 002 721 587 106 861 989 + 0;
  • 5 002 721 587 106 861 989 ÷ 2 = 2 501 360 793 553 430 994 + 1;
  • 2 501 360 793 553 430 994 ÷ 2 = 1 250 680 396 776 715 497 + 0;
  • 1 250 680 396 776 715 497 ÷ 2 = 625 340 198 388 357 748 + 1;
  • 625 340 198 388 357 748 ÷ 2 = 312 670 099 194 178 874 + 0;
  • 312 670 099 194 178 874 ÷ 2 = 156 335 049 597 089 437 + 0;
  • 156 335 049 597 089 437 ÷ 2 = 78 167 524 798 544 718 + 1;
  • 78 167 524 798 544 718 ÷ 2 = 39 083 762 399 272 359 + 0;
  • 39 083 762 399 272 359 ÷ 2 = 19 541 881 199 636 179 + 1;
  • 19 541 881 199 636 179 ÷ 2 = 9 770 940 599 818 089 + 1;
  • 9 770 940 599 818 089 ÷ 2 = 4 885 470 299 909 044 + 1;
  • 4 885 470 299 909 044 ÷ 2 = 2 442 735 149 954 522 + 0;
  • 2 442 735 149 954 522 ÷ 2 = 1 221 367 574 977 261 + 0;
  • 1 221 367 574 977 261 ÷ 2 = 610 683 787 488 630 + 1;
  • 610 683 787 488 630 ÷ 2 = 305 341 893 744 315 + 0;
  • 305 341 893 744 315 ÷ 2 = 152 670 946 872 157 + 1;
  • 152 670 946 872 157 ÷ 2 = 76 335 473 436 078 + 1;
  • 76 335 473 436 078 ÷ 2 = 38 167 736 718 039 + 0;
  • 38 167 736 718 039 ÷ 2 = 19 083 868 359 019 + 1;
  • 19 083 868 359 019 ÷ 2 = 9 541 934 179 509 + 1;
  • 9 541 934 179 509 ÷ 2 = 4 770 967 089 754 + 1;
  • 4 770 967 089 754 ÷ 2 = 2 385 483 544 877 + 0;
  • 2 385 483 544 877 ÷ 2 = 1 192 741 772 438 + 1;
  • 1 192 741 772 438 ÷ 2 = 596 370 886 219 + 0;
  • 596 370 886 219 ÷ 2 = 298 185 443 109 + 1;
  • 298 185 443 109 ÷ 2 = 149 092 721 554 + 1;
  • 149 092 721 554 ÷ 2 = 74 546 360 777 + 0;
  • 74 546 360 777 ÷ 2 = 37 273 180 388 + 1;
  • 37 273 180 388 ÷ 2 = 18 636 590 194 + 0;
  • 18 636 590 194 ÷ 2 = 9 318 295 097 + 0;
  • 9 318 295 097 ÷ 2 = 4 659 147 548 + 1;
  • 4 659 147 548 ÷ 2 = 2 329 573 774 + 0;
  • 2 329 573 774 ÷ 2 = 1 164 786 887 + 0;
  • 1 164 786 887 ÷ 2 = 582 393 443 + 1;
  • 582 393 443 ÷ 2 = 291 196 721 + 1;
  • 291 196 721 ÷ 2 = 145 598 360 + 1;
  • 145 598 360 ÷ 2 = 72 799 180 + 0;
  • 72 799 180 ÷ 2 = 36 399 590 + 0;
  • 36 399 590 ÷ 2 = 18 199 795 + 0;
  • 18 199 795 ÷ 2 = 9 099 897 + 1;
  • 9 099 897 ÷ 2 = 4 549 948 + 1;
  • 4 549 948 ÷ 2 = 2 274 974 + 0;
  • 2 274 974 ÷ 2 = 1 137 487 + 0;
  • 1 137 487 ÷ 2 = 568 743 + 1;
  • 568 743 ÷ 2 = 284 371 + 1;
  • 284 371 ÷ 2 = 142 185 + 1;
  • 142 185 ÷ 2 = 71 092 + 1;
  • 71 092 ÷ 2 = 35 546 + 0;
  • 35 546 ÷ 2 = 17 773 + 0;
  • 17 773 ÷ 2 = 8 886 + 1;
  • 8 886 ÷ 2 = 4 443 + 0;
  • 4 443 ÷ 2 = 2 221 + 1;
  • 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 001 101 111 099 999 999 999 999 999 907(10) =


1000 1010 1101 1010 0111 1001 1000 1110 0100 1011 0101 1101 1010 0111 0100 1010 0000 0111 0001 0111 0110 1111 1111 1111 1010 0011(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 001 101 111 099 999 999 999 999 999 907(10) =


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


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


1.0001 0101 1011 0100 1111 0011 0001 1100 1001 0110 1011 1011 0100 1110 1001 0100 0000 1110 0010 1110 1101 1111 1111 1111 0100 011(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 1011 0100 1111 0011 0001 1100 1001 0110 1011 1011 0100 1110 1001 0100 0000 1110 0010 1110 1101 1111 1111 1111 0100 011


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


000 1010 1101 1010 0111 1001


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 1010 0111 1001


Decimal number 11 001 101 111 099 999 999 999 999 999 907 converted to 32 bit single precision IEEE 754 binary floating point representation:

0 - 1110 0110 - 000 1010 1101 1010 0111 1001


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