1 000 111 010 111 000 000 001 010 111 110 009 949 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 1 000 111 010 111 000 000 001 010 111 110 009 949(10) to 64 bit double precision IEEE 754 binary floating point representation standard (1 bit for sign, 11 bits for exponent, 52 bits for mantissa)

What are the steps to convert decimal number
1 000 111 010 111 000 000 001 010 111 110 009 949(10) to 64 bit double precision IEEE 754 binary floating point representation (1 bit for sign, 11 bits for exponent, 52 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;
  • 1 000 111 010 111 000 000 001 010 111 110 009 949 ÷ 2 = 500 055 505 055 500 000 000 505 055 555 004 974 + 1;
  • 500 055 505 055 500 000 000 505 055 555 004 974 ÷ 2 = 250 027 752 527 750 000 000 252 527 777 502 487 + 0;
  • 250 027 752 527 750 000 000 252 527 777 502 487 ÷ 2 = 125 013 876 263 875 000 000 126 263 888 751 243 + 1;
  • 125 013 876 263 875 000 000 126 263 888 751 243 ÷ 2 = 62 506 938 131 937 500 000 063 131 944 375 621 + 1;
  • 62 506 938 131 937 500 000 063 131 944 375 621 ÷ 2 = 31 253 469 065 968 750 000 031 565 972 187 810 + 1;
  • 31 253 469 065 968 750 000 031 565 972 187 810 ÷ 2 = 15 626 734 532 984 375 000 015 782 986 093 905 + 0;
  • 15 626 734 532 984 375 000 015 782 986 093 905 ÷ 2 = 7 813 367 266 492 187 500 007 891 493 046 952 + 1;
  • 7 813 367 266 492 187 500 007 891 493 046 952 ÷ 2 = 3 906 683 633 246 093 750 003 945 746 523 476 + 0;
  • 3 906 683 633 246 093 750 003 945 746 523 476 ÷ 2 = 1 953 341 816 623 046 875 001 972 873 261 738 + 0;
  • 1 953 341 816 623 046 875 001 972 873 261 738 ÷ 2 = 976 670 908 311 523 437 500 986 436 630 869 + 0;
  • 976 670 908 311 523 437 500 986 436 630 869 ÷ 2 = 488 335 454 155 761 718 750 493 218 315 434 + 1;
  • 488 335 454 155 761 718 750 493 218 315 434 ÷ 2 = 244 167 727 077 880 859 375 246 609 157 717 + 0;
  • 244 167 727 077 880 859 375 246 609 157 717 ÷ 2 = 122 083 863 538 940 429 687 623 304 578 858 + 1;
  • 122 083 863 538 940 429 687 623 304 578 858 ÷ 2 = 61 041 931 769 470 214 843 811 652 289 429 + 0;
  • 61 041 931 769 470 214 843 811 652 289 429 ÷ 2 = 30 520 965 884 735 107 421 905 826 144 714 + 1;
  • 30 520 965 884 735 107 421 905 826 144 714 ÷ 2 = 15 260 482 942 367 553 710 952 913 072 357 + 0;
  • 15 260 482 942 367 553 710 952 913 072 357 ÷ 2 = 7 630 241 471 183 776 855 476 456 536 178 + 1;
  • 7 630 241 471 183 776 855 476 456 536 178 ÷ 2 = 3 815 120 735 591 888 427 738 228 268 089 + 0;
  • 3 815 120 735 591 888 427 738 228 268 089 ÷ 2 = 1 907 560 367 795 944 213 869 114 134 044 + 1;
  • 1 907 560 367 795 944 213 869 114 134 044 ÷ 2 = 953 780 183 897 972 106 934 557 067 022 + 0;
  • 953 780 183 897 972 106 934 557 067 022 ÷ 2 = 476 890 091 948 986 053 467 278 533 511 + 0;
  • 476 890 091 948 986 053 467 278 533 511 ÷ 2 = 238 445 045 974 493 026 733 639 266 755 + 1;
  • 238 445 045 974 493 026 733 639 266 755 ÷ 2 = 119 222 522 987 246 513 366 819 633 377 + 1;
  • 119 222 522 987 246 513 366 819 633 377 ÷ 2 = 59 611 261 493 623 256 683 409 816 688 + 1;
  • 59 611 261 493 623 256 683 409 816 688 ÷ 2 = 29 805 630 746 811 628 341 704 908 344 + 0;
  • 29 805 630 746 811 628 341 704 908 344 ÷ 2 = 14 902 815 373 405 814 170 852 454 172 + 0;
  • 14 902 815 373 405 814 170 852 454 172 ÷ 2 = 7 451 407 686 702 907 085 426 227 086 + 0;
  • 7 451 407 686 702 907 085 426 227 086 ÷ 2 = 3 725 703 843 351 453 542 713 113 543 + 0;
  • 3 725 703 843 351 453 542 713 113 543 ÷ 2 = 1 862 851 921 675 726 771 356 556 771 + 1;
  • 1 862 851 921 675 726 771 356 556 771 ÷ 2 = 931 425 960 837 863 385 678 278 385 + 1;
  • 931 425 960 837 863 385 678 278 385 ÷ 2 = 465 712 980 418 931 692 839 139 192 + 1;
  • 465 712 980 418 931 692 839 139 192 ÷ 2 = 232 856 490 209 465 846 419 569 596 + 0;
  • 232 856 490 209 465 846 419 569 596 ÷ 2 = 116 428 245 104 732 923 209 784 798 + 0;
  • 116 428 245 104 732 923 209 784 798 ÷ 2 = 58 214 122 552 366 461 604 892 399 + 0;
  • 58 214 122 552 366 461 604 892 399 ÷ 2 = 29 107 061 276 183 230 802 446 199 + 1;
  • 29 107 061 276 183 230 802 446 199 ÷ 2 = 14 553 530 638 091 615 401 223 099 + 1;
  • 14 553 530 638 091 615 401 223 099 ÷ 2 = 7 276 765 319 045 807 700 611 549 + 1;
  • 7 276 765 319 045 807 700 611 549 ÷ 2 = 3 638 382 659 522 903 850 305 774 + 1;
  • 3 638 382 659 522 903 850 305 774 ÷ 2 = 1 819 191 329 761 451 925 152 887 + 0;
  • 1 819 191 329 761 451 925 152 887 ÷ 2 = 909 595 664 880 725 962 576 443 + 1;
  • 909 595 664 880 725 962 576 443 ÷ 2 = 454 797 832 440 362 981 288 221 + 1;
  • 454 797 832 440 362 981 288 221 ÷ 2 = 227 398 916 220 181 490 644 110 + 1;
  • 227 398 916 220 181 490 644 110 ÷ 2 = 113 699 458 110 090 745 322 055 + 0;
  • 113 699 458 110 090 745 322 055 ÷ 2 = 56 849 729 055 045 372 661 027 + 1;
  • 56 849 729 055 045 372 661 027 ÷ 2 = 28 424 864 527 522 686 330 513 + 1;
  • 28 424 864 527 522 686 330 513 ÷ 2 = 14 212 432 263 761 343 165 256 + 1;
  • 14 212 432 263 761 343 165 256 ÷ 2 = 7 106 216 131 880 671 582 628 + 0;
  • 7 106 216 131 880 671 582 628 ÷ 2 = 3 553 108 065 940 335 791 314 + 0;
  • 3 553 108 065 940 335 791 314 ÷ 2 = 1 776 554 032 970 167 895 657 + 0;
  • 1 776 554 032 970 167 895 657 ÷ 2 = 888 277 016 485 083 947 828 + 1;
  • 888 277 016 485 083 947 828 ÷ 2 = 444 138 508 242 541 973 914 + 0;
  • 444 138 508 242 541 973 914 ÷ 2 = 222 069 254 121 270 986 957 + 0;
  • 222 069 254 121 270 986 957 ÷ 2 = 111 034 627 060 635 493 478 + 1;
  • 111 034 627 060 635 493 478 ÷ 2 = 55 517 313 530 317 746 739 + 0;
  • 55 517 313 530 317 746 739 ÷ 2 = 27 758 656 765 158 873 369 + 1;
  • 27 758 656 765 158 873 369 ÷ 2 = 13 879 328 382 579 436 684 + 1;
  • 13 879 328 382 579 436 684 ÷ 2 = 6 939 664 191 289 718 342 + 0;
  • 6 939 664 191 289 718 342 ÷ 2 = 3 469 832 095 644 859 171 + 0;
  • 3 469 832 095 644 859 171 ÷ 2 = 1 734 916 047 822 429 585 + 1;
  • 1 734 916 047 822 429 585 ÷ 2 = 867 458 023 911 214 792 + 1;
  • 867 458 023 911 214 792 ÷ 2 = 433 729 011 955 607 396 + 0;
  • 433 729 011 955 607 396 ÷ 2 = 216 864 505 977 803 698 + 0;
  • 216 864 505 977 803 698 ÷ 2 = 108 432 252 988 901 849 + 0;
  • 108 432 252 988 901 849 ÷ 2 = 54 216 126 494 450 924 + 1;
  • 54 216 126 494 450 924 ÷ 2 = 27 108 063 247 225 462 + 0;
  • 27 108 063 247 225 462 ÷ 2 = 13 554 031 623 612 731 + 0;
  • 13 554 031 623 612 731 ÷ 2 = 6 777 015 811 806 365 + 1;
  • 6 777 015 811 806 365 ÷ 2 = 3 388 507 905 903 182 + 1;
  • 3 388 507 905 903 182 ÷ 2 = 1 694 253 952 951 591 + 0;
  • 1 694 253 952 951 591 ÷ 2 = 847 126 976 475 795 + 1;
  • 847 126 976 475 795 ÷ 2 = 423 563 488 237 897 + 1;
  • 423 563 488 237 897 ÷ 2 = 211 781 744 118 948 + 1;
  • 211 781 744 118 948 ÷ 2 = 105 890 872 059 474 + 0;
  • 105 890 872 059 474 ÷ 2 = 52 945 436 029 737 + 0;
  • 52 945 436 029 737 ÷ 2 = 26 472 718 014 868 + 1;
  • 26 472 718 014 868 ÷ 2 = 13 236 359 007 434 + 0;
  • 13 236 359 007 434 ÷ 2 = 6 618 179 503 717 + 0;
  • 6 618 179 503 717 ÷ 2 = 3 309 089 751 858 + 1;
  • 3 309 089 751 858 ÷ 2 = 1 654 544 875 929 + 0;
  • 1 654 544 875 929 ÷ 2 = 827 272 437 964 + 1;
  • 827 272 437 964 ÷ 2 = 413 636 218 982 + 0;
  • 413 636 218 982 ÷ 2 = 206 818 109 491 + 0;
  • 206 818 109 491 ÷ 2 = 103 409 054 745 + 1;
  • 103 409 054 745 ÷ 2 = 51 704 527 372 + 1;
  • 51 704 527 372 ÷ 2 = 25 852 263 686 + 0;
  • 25 852 263 686 ÷ 2 = 12 926 131 843 + 0;
  • 12 926 131 843 ÷ 2 = 6 463 065 921 + 1;
  • 6 463 065 921 ÷ 2 = 3 231 532 960 + 1;
  • 3 231 532 960 ÷ 2 = 1 615 766 480 + 0;
  • 1 615 766 480 ÷ 2 = 807 883 240 + 0;
  • 807 883 240 ÷ 2 = 403 941 620 + 0;
  • 403 941 620 ÷ 2 = 201 970 810 + 0;
  • 201 970 810 ÷ 2 = 100 985 405 + 0;
  • 100 985 405 ÷ 2 = 50 492 702 + 1;
  • 50 492 702 ÷ 2 = 25 246 351 + 0;
  • 25 246 351 ÷ 2 = 12 623 175 + 1;
  • 12 623 175 ÷ 2 = 6 311 587 + 1;
  • 6 311 587 ÷ 2 = 3 155 793 + 1;
  • 3 155 793 ÷ 2 = 1 577 896 + 1;
  • 1 577 896 ÷ 2 = 788 948 + 0;
  • 788 948 ÷ 2 = 394 474 + 0;
  • 394 474 ÷ 2 = 197 237 + 0;
  • 197 237 ÷ 2 = 98 618 + 1;
  • 98 618 ÷ 2 = 49 309 + 0;
  • 49 309 ÷ 2 = 24 654 + 1;
  • 24 654 ÷ 2 = 12 327 + 0;
  • 12 327 ÷ 2 = 6 163 + 1;
  • 6 163 ÷ 2 = 3 081 + 1;
  • 3 081 ÷ 2 = 1 540 + 1;
  • 1 540 ÷ 2 = 770 + 0;
  • 770 ÷ 2 = 385 + 0;
  • 385 ÷ 2 = 192 + 1;
  • 192 ÷ 2 = 96 + 0;
  • 96 ÷ 2 = 48 + 0;
  • 48 ÷ 2 = 24 + 0;
  • 24 ÷ 2 = 12 + 0;
  • 12 ÷ 2 = 6 + 0;
  • 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.

1 000 111 010 111 000 000 001 010 111 110 009 949(10) =


1100 0000 1001 1101 0100 0111 1010 0000 1100 1100 1010 0100 1110 1100 1000 1100 1101 0010 0011 1011 1011 1100 0111 0000 1110 0101 0101 0100 0101 1101(2)


3. Normalize the binary representation of the number.

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


1 000 111 010 111 000 000 001 010 111 110 009 949(10) =


1100 0000 1001 1101 0100 0111 1010 0000 1100 1100 1010 0100 1110 1100 1000 1100 1101 0010 0011 1011 1011 1100 0111 0000 1110 0101 0101 0100 0101 1101(2) =


1100 0000 1001 1101 0100 0111 1010 0000 1100 1100 1010 0100 1110 1100 1000 1100 1101 0010 0011 1011 1011 1100 0111 0000 1110 0101 0101 0100 0101 1101(2) × 20 =


1.1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101 1001 0001 1001 1010 0100 0111 0111 0111 1000 1110 0001 1100 1010 1010 1000 1011 101(2) × 2119


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

Sign 0 (a positive number)


Exponent (unadjusted): 119


Mantissa (not normalized):
1.1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101 1001 0001 1001 1010 0100 0111 0111 0111 1000 1110 0001 1100 1010 1010 1000 1011 101


5. Adjust the exponent.

Use the 11 bit excess/bias notation:


Exponent (adjusted) =


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


119 + 2(11-1) - 1 =


(119 + 1 023)(10) =


1 142(10)


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

Use the same technique of repeatedly dividing by 2:


  • division = quotient + remainder;
  • 1 142 ÷ 2 = 571 + 0;
  • 571 ÷ 2 = 285 + 1;
  • 285 ÷ 2 = 142 + 1;
  • 142 ÷ 2 = 71 + 0;
  • 71 ÷ 2 = 35 + 1;
  • 35 ÷ 2 = 17 + 1;
  • 17 ÷ 2 = 8 + 1;
  • 8 ÷ 2 = 4 + 0;
  • 4 ÷ 2 = 2 + 0;
  • 2 ÷ 2 = 1 + 0;
  • 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) =


1142(10) =


100 0111 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 52 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. 1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101 100 1000 1100 1101 0010 0011 1011 1011 1100 0111 0000 1110 0101 0101 0100 0101 1101 =


1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101


9. The three elements that make up the number's 64 bit double precision IEEE 754 binary floating point representation:

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


Exponent (11 bits) =
100 0111 0110


Mantissa (52 bits) =
1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101


Decimal number 1 000 111 010 111 000 000 001 010 111 110 009 949 converted to 64 bit double precision IEEE 754 binary floating point representation:

0 - 100 0111 0110 - 1000 0001 0011 1010 1000 1111 0100 0001 1001 1001 0100 1001 1101


How to convert numbers from the decimal system (base ten) to 64 bit double precision IEEE 754 binary floating point standard

Follow the steps below to convert a base 10 decimal number to 64 bit double 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 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 from the previous 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 multiplying operations, starting from the top of the list constructed 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, shifting the decimal mark (the decimal point) "n" positions either to the left, or to the right, so that only one non zero digit remains to the left of the decimal mark.
  • 7. Adjust the exponent in 11 bit excess/bias notation and then convert it from decimal (base 10) to 11 bit binary, by using the same technique of repeatedly dividing by 2, as shown above:
    Exponent (adjusted) = Exponent (unadjusted) + 2(11-1) - 1
  • 8. Normalize mantissa, remove the leading (leftmost) bit, since it's allways '1' (and the decimal mark, if the case) and adjust its length to 52 bits, either by removing the excess bits from the right (losing precision...) or by adding extra bits set on '0' 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 -31.640 215 from the decimal system (base ten) to 64 bit double precision IEEE 754 binary floating point:

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

    |-31.640 215| = 31.640 215

  • 2. First convert the integer part, 31. Divide it repeatedly by 2, keeping track of each remainder, until we get a quotient that is equal to zero:
    • division = quotient + remainder;
    • 31 ÷ 2 = 15 + 1;
    • 15 ÷ 2 = 7 + 1;
    • 7 ÷ 2 = 3 + 1;
    • 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:

    31(10) = 1 1111(2)

  • 4. Then, convert the fractional part, 0.640 215. 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.640 215 × 2 = 1 + 0.280 43;
    • 2) 0.280 43 × 2 = 0 + 0.560 86;
    • 3) 0.560 86 × 2 = 1 + 0.121 72;
    • 4) 0.121 72 × 2 = 0 + 0.243 44;
    • 5) 0.243 44 × 2 = 0 + 0.486 88;
    • 6) 0.486 88 × 2 = 0 + 0.973 76;
    • 7) 0.973 76 × 2 = 1 + 0.947 52;
    • 8) 0.947 52 × 2 = 1 + 0.895 04;
    • 9) 0.895 04 × 2 = 1 + 0.790 08;
    • 10) 0.790 08 × 2 = 1 + 0.580 16;
    • 11) 0.580 16 × 2 = 1 + 0.160 32;
    • 12) 0.160 32 × 2 = 0 + 0.320 64;
    • 13) 0.320 64 × 2 = 0 + 0.641 28;
    • 14) 0.641 28 × 2 = 1 + 0.282 56;
    • 15) 0.282 56 × 2 = 0 + 0.565 12;
    • 16) 0.565 12 × 2 = 1 + 0.130 24;
    • 17) 0.130 24 × 2 = 0 + 0.260 48;
    • 18) 0.260 48 × 2 = 0 + 0.520 96;
    • 19) 0.520 96 × 2 = 1 + 0.041 92;
    • 20) 0.041 92 × 2 = 0 + 0.083 84;
    • 21) 0.083 84 × 2 = 0 + 0.167 68;
    • 22) 0.167 68 × 2 = 0 + 0.335 36;
    • 23) 0.335 36 × 2 = 0 + 0.670 72;
    • 24) 0.670 72 × 2 = 1 + 0.341 44;
    • 25) 0.341 44 × 2 = 0 + 0.682 88;
    • 26) 0.682 88 × 2 = 1 + 0.365 76;
    • 27) 0.365 76 × 2 = 0 + 0.731 52;
    • 28) 0.731 52 × 2 = 1 + 0.463 04;
    • 29) 0.463 04 × 2 = 0 + 0.926 08;
    • 30) 0.926 08 × 2 = 1 + 0.852 16;
    • 31) 0.852 16 × 2 = 1 + 0.704 32;
    • 32) 0.704 32 × 2 = 1 + 0.408 64;
    • 33) 0.408 64 × 2 = 0 + 0.817 28;
    • 34) 0.817 28 × 2 = 1 + 0.634 56;
    • 35) 0.634 56 × 2 = 1 + 0.269 12;
    • 36) 0.269 12 × 2 = 0 + 0.538 24;
    • 37) 0.538 24 × 2 = 1 + 0.076 48;
    • 38) 0.076 48 × 2 = 0 + 0.152 96;
    • 39) 0.152 96 × 2 = 0 + 0.305 92;
    • 40) 0.305 92 × 2 = 0 + 0.611 84;
    • 41) 0.611 84 × 2 = 1 + 0.223 68;
    • 42) 0.223 68 × 2 = 0 + 0.447 36;
    • 43) 0.447 36 × 2 = 0 + 0.894 72;
    • 44) 0.894 72 × 2 = 1 + 0.789 44;
    • 45) 0.789 44 × 2 = 1 + 0.578 88;
    • 46) 0.578 88 × 2 = 1 + 0.157 76;
    • 47) 0.157 76 × 2 = 0 + 0.315 52;
    • 48) 0.315 52 × 2 = 0 + 0.631 04;
    • 49) 0.631 04 × 2 = 1 + 0.262 08;
    • 50) 0.262 08 × 2 = 0 + 0.524 16;
    • 51) 0.524 16 × 2 = 1 + 0.048 32;
    • 52) 0.048 32 × 2 = 0 + 0.096 64;
    • 53) 0.096 64 × 2 = 0 + 0.193 28;
    • We didn't get any fractional part that was equal to zero. But we had enough iterations (over Mantissa limit = 52) 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.640 215(10) = 0.1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0(2)

  • 6. Summarizing - the positive number before normalization:

    31.640 215(10) = 1 1111.1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0(2)

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

    31.640 215(10) =
    1 1111.1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0(2) =
    1 1111.1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0(2) × 20 =
    1.1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0(2) × 24

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

    Sign: 1 (a negative number)

    Exponent (unadjusted): 4

    Mantissa (not-normalized): 1.1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0

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

    Exponent (adjusted) = Exponent (unadjusted) + 2(11-1) - 1 = (4 + 1023)(10) = 1027(10) =
    100 0000 0011(2)

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

    Mantissa (not-normalized): 1.1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100 1010 0

    Mantissa (normalized): 1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100

  • Conclusion:

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

    Exponent (8 bits) = 100 0000 0011

    Mantissa (52 bits) = 1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100

  • Number -31.640 215, converted from decimal system (base 10) to 64 bit double precision IEEE 754 binary floating point =
    1 - 100 0000 0011 - 1111 1010 0011 1110 0101 0010 0001 0101 0111 0110 1000 1001 1100