0.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal 0.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9(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
0.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9(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. 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.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9.

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.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9 × 2 = 1 + 0.570 796 326 916 438 338 022 008 147 344 296 414 622 403 736 253 8;
  • 2) 0.570 796 326 916 438 338 022 008 147 344 296 414 622 403 736 253 8 × 2 = 1 + 0.141 592 653 832 876 676 044 016 294 688 592 829 244 807 472 507 6;
  • 3) 0.141 592 653 832 876 676 044 016 294 688 592 829 244 807 472 507 6 × 2 = 0 + 0.283 185 307 665 753 352 088 032 589 377 185 658 489 614 945 015 2;
  • 4) 0.283 185 307 665 753 352 088 032 589 377 185 658 489 614 945 015 2 × 2 = 0 + 0.566 370 615 331 506 704 176 065 178 754 371 316 979 229 890 030 4;
  • 5) 0.566 370 615 331 506 704 176 065 178 754 371 316 979 229 890 030 4 × 2 = 1 + 0.132 741 230 663 013 408 352 130 357 508 742 633 958 459 780 060 8;
  • 6) 0.132 741 230 663 013 408 352 130 357 508 742 633 958 459 780 060 8 × 2 = 0 + 0.265 482 461 326 026 816 704 260 715 017 485 267 916 919 560 121 6;
  • 7) 0.265 482 461 326 026 816 704 260 715 017 485 267 916 919 560 121 6 × 2 = 0 + 0.530 964 922 652 053 633 408 521 430 034 970 535 833 839 120 243 2;
  • 8) 0.530 964 922 652 053 633 408 521 430 034 970 535 833 839 120 243 2 × 2 = 1 + 0.061 929 845 304 107 266 817 042 860 069 941 071 667 678 240 486 4;
  • 9) 0.061 929 845 304 107 266 817 042 860 069 941 071 667 678 240 486 4 × 2 = 0 + 0.123 859 690 608 214 533 634 085 720 139 882 143 335 356 480 972 8;
  • 10) 0.123 859 690 608 214 533 634 085 720 139 882 143 335 356 480 972 8 × 2 = 0 + 0.247 719 381 216 429 067 268 171 440 279 764 286 670 712 961 945 6;
  • 11) 0.247 719 381 216 429 067 268 171 440 279 764 286 670 712 961 945 6 × 2 = 0 + 0.495 438 762 432 858 134 536 342 880 559 528 573 341 425 923 891 2;
  • 12) 0.495 438 762 432 858 134 536 342 880 559 528 573 341 425 923 891 2 × 2 = 0 + 0.990 877 524 865 716 269 072 685 761 119 057 146 682 851 847 782 4;
  • 13) 0.990 877 524 865 716 269 072 685 761 119 057 146 682 851 847 782 4 × 2 = 1 + 0.981 755 049 731 432 538 145 371 522 238 114 293 365 703 695 564 8;
  • 14) 0.981 755 049 731 432 538 145 371 522 238 114 293 365 703 695 564 8 × 2 = 1 + 0.963 510 099 462 865 076 290 743 044 476 228 586 731 407 391 129 6;
  • 15) 0.963 510 099 462 865 076 290 743 044 476 228 586 731 407 391 129 6 × 2 = 1 + 0.927 020 198 925 730 152 581 486 088 952 457 173 462 814 782 259 2;
  • 16) 0.927 020 198 925 730 152 581 486 088 952 457 173 462 814 782 259 2 × 2 = 1 + 0.854 040 397 851 460 305 162 972 177 904 914 346 925 629 564 518 4;
  • 17) 0.854 040 397 851 460 305 162 972 177 904 914 346 925 629 564 518 4 × 2 = 1 + 0.708 080 795 702 920 610 325 944 355 809 828 693 851 259 129 036 8;
  • 18) 0.708 080 795 702 920 610 325 944 355 809 828 693 851 259 129 036 8 × 2 = 1 + 0.416 161 591 405 841 220 651 888 711 619 657 387 702 518 258 073 6;
  • 19) 0.416 161 591 405 841 220 651 888 711 619 657 387 702 518 258 073 6 × 2 = 0 + 0.832 323 182 811 682 441 303 777 423 239 314 775 405 036 516 147 2;
  • 20) 0.832 323 182 811 682 441 303 777 423 239 314 775 405 036 516 147 2 × 2 = 1 + 0.664 646 365 623 364 882 607 554 846 478 629 550 810 073 032 294 4;
  • 21) 0.664 646 365 623 364 882 607 554 846 478 629 550 810 073 032 294 4 × 2 = 1 + 0.329 292 731 246 729 765 215 109 692 957 259 101 620 146 064 588 8;
  • 22) 0.329 292 731 246 729 765 215 109 692 957 259 101 620 146 064 588 8 × 2 = 0 + 0.658 585 462 493 459 530 430 219 385 914 518 203 240 292 129 177 6;
  • 23) 0.658 585 462 493 459 530 430 219 385 914 518 203 240 292 129 177 6 × 2 = 1 + 0.317 170 924 986 919 060 860 438 771 829 036 406 480 584 258 355 2;
  • 24) 0.317 170 924 986 919 060 860 438 771 829 036 406 480 584 258 355 2 × 2 = 0 + 0.634 341 849 973 838 121 720 877 543 658 072 812 961 168 516 710 4;
  • 25) 0.634 341 849 973 838 121 720 877 543 658 072 812 961 168 516 710 4 × 2 = 1 + 0.268 683 699 947 676 243 441 755 087 316 145 625 922 337 033 420 8;
  • 26) 0.268 683 699 947 676 243 441 755 087 316 145 625 922 337 033 420 8 × 2 = 0 + 0.537 367 399 895 352 486 883 510 174 632 291 251 844 674 066 841 6;
  • 27) 0.537 367 399 895 352 486 883 510 174 632 291 251 844 674 066 841 6 × 2 = 1 + 0.074 734 799 790 704 973 767 020 349 264 582 503 689 348 133 683 2;
  • 28) 0.074 734 799 790 704 973 767 020 349 264 582 503 689 348 133 683 2 × 2 = 0 + 0.149 469 599 581 409 947 534 040 698 529 165 007 378 696 267 366 4;
  • 29) 0.149 469 599 581 409 947 534 040 698 529 165 007 378 696 267 366 4 × 2 = 0 + 0.298 939 199 162 819 895 068 081 397 058 330 014 757 392 534 732 8;
  • 30) 0.298 939 199 162 819 895 068 081 397 058 330 014 757 392 534 732 8 × 2 = 0 + 0.597 878 398 325 639 790 136 162 794 116 660 029 514 785 069 465 6;
  • 31) 0.597 878 398 325 639 790 136 162 794 116 660 029 514 785 069 465 6 × 2 = 1 + 0.195 756 796 651 279 580 272 325 588 233 320 059 029 570 138 931 2;
  • 32) 0.195 756 796 651 279 580 272 325 588 233 320 059 029 570 138 931 2 × 2 = 0 + 0.391 513 593 302 559 160 544 651 176 466 640 118 059 140 277 862 4;
  • 33) 0.391 513 593 302 559 160 544 651 176 466 640 118 059 140 277 862 4 × 2 = 0 + 0.783 027 186 605 118 321 089 302 352 933 280 236 118 280 555 724 8;
  • 34) 0.783 027 186 605 118 321 089 302 352 933 280 236 118 280 555 724 8 × 2 = 1 + 0.566 054 373 210 236 642 178 604 705 866 560 472 236 561 111 449 6;
  • 35) 0.566 054 373 210 236 642 178 604 705 866 560 472 236 561 111 449 6 × 2 = 1 + 0.132 108 746 420 473 284 357 209 411 733 120 944 473 122 222 899 2;
  • 36) 0.132 108 746 420 473 284 357 209 411 733 120 944 473 122 222 899 2 × 2 = 0 + 0.264 217 492 840 946 568 714 418 823 466 241 888 946 244 445 798 4;
  • 37) 0.264 217 492 840 946 568 714 418 823 466 241 888 946 244 445 798 4 × 2 = 0 + 0.528 434 985 681 893 137 428 837 646 932 483 777 892 488 891 596 8;
  • 38) 0.528 434 985 681 893 137 428 837 646 932 483 777 892 488 891 596 8 × 2 = 1 + 0.056 869 971 363 786 274 857 675 293 864 967 555 784 977 783 193 6;
  • 39) 0.056 869 971 363 786 274 857 675 293 864 967 555 784 977 783 193 6 × 2 = 0 + 0.113 739 942 727 572 549 715 350 587 729 935 111 569 955 566 387 2;
  • 40) 0.113 739 942 727 572 549 715 350 587 729 935 111 569 955 566 387 2 × 2 = 0 + 0.227 479 885 455 145 099 430 701 175 459 870 223 139 911 132 774 4;
  • 41) 0.227 479 885 455 145 099 430 701 175 459 870 223 139 911 132 774 4 × 2 = 0 + 0.454 959 770 910 290 198 861 402 350 919 740 446 279 822 265 548 8;
  • 42) 0.454 959 770 910 290 198 861 402 350 919 740 446 279 822 265 548 8 × 2 = 0 + 0.909 919 541 820 580 397 722 804 701 839 480 892 559 644 531 097 6;
  • 43) 0.909 919 541 820 580 397 722 804 701 839 480 892 559 644 531 097 6 × 2 = 1 + 0.819 839 083 641 160 795 445 609 403 678 961 785 119 289 062 195 2;
  • 44) 0.819 839 083 641 160 795 445 609 403 678 961 785 119 289 062 195 2 × 2 = 1 + 0.639 678 167 282 321 590 891 218 807 357 923 570 238 578 124 390 4;
  • 45) 0.639 678 167 282 321 590 891 218 807 357 923 570 238 578 124 390 4 × 2 = 1 + 0.279 356 334 564 643 181 782 437 614 715 847 140 477 156 248 780 8;
  • 46) 0.279 356 334 564 643 181 782 437 614 715 847 140 477 156 248 780 8 × 2 = 0 + 0.558 712 669 129 286 363 564 875 229 431 694 280 954 312 497 561 6;
  • 47) 0.558 712 669 129 286 363 564 875 229 431 694 280 954 312 497 561 6 × 2 = 1 + 0.117 425 338 258 572 727 129 750 458 863 388 561 908 624 995 123 2;
  • 48) 0.117 425 338 258 572 727 129 750 458 863 388 561 908 624 995 123 2 × 2 = 0 + 0.234 850 676 517 145 454 259 500 917 726 777 123 817 249 990 246 4;
  • 49) 0.234 850 676 517 145 454 259 500 917 726 777 123 817 249 990 246 4 × 2 = 0 + 0.469 701 353 034 290 908 519 001 835 453 554 247 634 499 980 492 8;
  • 50) 0.469 701 353 034 290 908 519 001 835 453 554 247 634 499 980 492 8 × 2 = 0 + 0.939 402 706 068 581 817 038 003 670 907 108 495 268 999 960 985 6;
  • 51) 0.939 402 706 068 581 817 038 003 670 907 108 495 268 999 960 985 6 × 2 = 1 + 0.878 805 412 137 163 634 076 007 341 814 216 990 537 999 921 971 2;
  • 52) 0.878 805 412 137 163 634 076 007 341 814 216 990 537 999 921 971 2 × 2 = 1 + 0.757 610 824 274 327 268 152 014 683 628 433 981 075 999 843 942 4;
  • 53) 0.757 610 824 274 327 268 152 014 683 628 433 981 075 999 843 942 4 × 2 = 1 + 0.515 221 648 548 654 536 304 029 367 256 867 962 151 999 687 884 8;

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 - the converted number we get in the end will be just a very good approximation of the initial one).


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.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9(10) =


0.1100 1001 0000 1111 1101 1010 1010 0010 0110 0100 0011 1010 0011 1(2)

5. Positive number before normalization:

0.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9(10) =


0.1100 1001 0000 1111 1101 1010 1010 0010 0110 0100 0011 1010 0011 1(2)

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.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9(10) =


0.1100 1001 0000 1111 1101 1010 1010 0010 0110 0100 0011 1010 0011 1(2) =


0.1100 1001 0000 1111 1101 1010 1010 0010 0110 0100 0011 1010 0011 1(2) × 20 =


1.1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111(2) × 2-1


7. 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): -1


Mantissa (not normalized):
1.1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111


8. Adjust the exponent.

Use the 11 bit excess/bias notation:


Exponent (adjusted) =


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


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


(-1 + 1 023)(10) =


1 022(10)


9. 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 022 ÷ 2 = 511 + 0;
  • 511 ÷ 2 = 255 + 1;
  • 255 ÷ 2 = 127 + 1;
  • 127 ÷ 2 = 63 + 1;
  • 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) =


1022(10) =


011 1111 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 52 bits, only if necessary (not the case here).


Mantissa (normalized) =


1. 1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111 =


1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111


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


Mantissa (52 bits) =
1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111


Decimal number 0.785 398 163 458 219 169 011 004 073 672 148 207 311 201 868 126 9 converted to 64 bit double precision IEEE 754 binary floating point representation:

0 - 011 1111 1110 - 1001 0010 0001 1111 1011 0101 0100 0100 1100 1000 0111 0100 0111

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