-0.000 000 000 000 176 558 49 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard

Convert decimal -0.000 000 000 000 176 558 49(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.000 000 000 000 176 558 49(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. Start with the positive version of the number:

|-0.000 000 000 000 176 558 49| = 0.000 000 000 000 176 558 49


2. 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;

3. 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)


4. Convert to binary (base 2) the fractional part: 0.000 000 000 000 176 558 49.

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.000 000 000 000 176 558 49 × 2 = 0 + 0.000 000 000 000 353 116 98;
  • 2) 0.000 000 000 000 353 116 98 × 2 = 0 + 0.000 000 000 000 706 233 96;
  • 3) 0.000 000 000 000 706 233 96 × 2 = 0 + 0.000 000 000 001 412 467 92;
  • 4) 0.000 000 000 001 412 467 92 × 2 = 0 + 0.000 000 000 002 824 935 84;
  • 5) 0.000 000 000 002 824 935 84 × 2 = 0 + 0.000 000 000 005 649 871 68;
  • 6) 0.000 000 000 005 649 871 68 × 2 = 0 + 0.000 000 000 011 299 743 36;
  • 7) 0.000 000 000 011 299 743 36 × 2 = 0 + 0.000 000 000 022 599 486 72;
  • 8) 0.000 000 000 022 599 486 72 × 2 = 0 + 0.000 000 000 045 198 973 44;
  • 9) 0.000 000 000 045 198 973 44 × 2 = 0 + 0.000 000 000 090 397 946 88;
  • 10) 0.000 000 000 090 397 946 88 × 2 = 0 + 0.000 000 000 180 795 893 76;
  • 11) 0.000 000 000 180 795 893 76 × 2 = 0 + 0.000 000 000 361 591 787 52;
  • 12) 0.000 000 000 361 591 787 52 × 2 = 0 + 0.000 000 000 723 183 575 04;
  • 13) 0.000 000 000 723 183 575 04 × 2 = 0 + 0.000 000 001 446 367 150 08;
  • 14) 0.000 000 001 446 367 150 08 × 2 = 0 + 0.000 000 002 892 734 300 16;
  • 15) 0.000 000 002 892 734 300 16 × 2 = 0 + 0.000 000 005 785 468 600 32;
  • 16) 0.000 000 005 785 468 600 32 × 2 = 0 + 0.000 000 011 570 937 200 64;
  • 17) 0.000 000 011 570 937 200 64 × 2 = 0 + 0.000 000 023 141 874 401 28;
  • 18) 0.000 000 023 141 874 401 28 × 2 = 0 + 0.000 000 046 283 748 802 56;
  • 19) 0.000 000 046 283 748 802 56 × 2 = 0 + 0.000 000 092 567 497 605 12;
  • 20) 0.000 000 092 567 497 605 12 × 2 = 0 + 0.000 000 185 134 995 210 24;
  • 21) 0.000 000 185 134 995 210 24 × 2 = 0 + 0.000 000 370 269 990 420 48;
  • 22) 0.000 000 370 269 990 420 48 × 2 = 0 + 0.000 000 740 539 980 840 96;
  • 23) 0.000 000 740 539 980 840 96 × 2 = 0 + 0.000 001 481 079 961 681 92;
  • 24) 0.000 001 481 079 961 681 92 × 2 = 0 + 0.000 002 962 159 923 363 84;
  • 25) 0.000 002 962 159 923 363 84 × 2 = 0 + 0.000 005 924 319 846 727 68;
  • 26) 0.000 005 924 319 846 727 68 × 2 = 0 + 0.000 011 848 639 693 455 36;
  • 27) 0.000 011 848 639 693 455 36 × 2 = 0 + 0.000 023 697 279 386 910 72;
  • 28) 0.000 023 697 279 386 910 72 × 2 = 0 + 0.000 047 394 558 773 821 44;
  • 29) 0.000 047 394 558 773 821 44 × 2 = 0 + 0.000 094 789 117 547 642 88;
  • 30) 0.000 094 789 117 547 642 88 × 2 = 0 + 0.000 189 578 235 095 285 76;
  • 31) 0.000 189 578 235 095 285 76 × 2 = 0 + 0.000 379 156 470 190 571 52;
  • 32) 0.000 379 156 470 190 571 52 × 2 = 0 + 0.000 758 312 940 381 143 04;
  • 33) 0.000 758 312 940 381 143 04 × 2 = 0 + 0.001 516 625 880 762 286 08;
  • 34) 0.001 516 625 880 762 286 08 × 2 = 0 + 0.003 033 251 761 524 572 16;
  • 35) 0.003 033 251 761 524 572 16 × 2 = 0 + 0.006 066 503 523 049 144 32;
  • 36) 0.006 066 503 523 049 144 32 × 2 = 0 + 0.012 133 007 046 098 288 64;
  • 37) 0.012 133 007 046 098 288 64 × 2 = 0 + 0.024 266 014 092 196 577 28;
  • 38) 0.024 266 014 092 196 577 28 × 2 = 0 + 0.048 532 028 184 393 154 56;
  • 39) 0.048 532 028 184 393 154 56 × 2 = 0 + 0.097 064 056 368 786 309 12;
  • 40) 0.097 064 056 368 786 309 12 × 2 = 0 + 0.194 128 112 737 572 618 24;
  • 41) 0.194 128 112 737 572 618 24 × 2 = 0 + 0.388 256 225 475 145 236 48;
  • 42) 0.388 256 225 475 145 236 48 × 2 = 0 + 0.776 512 450 950 290 472 96;
  • 43) 0.776 512 450 950 290 472 96 × 2 = 1 + 0.553 024 901 900 580 945 92;
  • 44) 0.553 024 901 900 580 945 92 × 2 = 1 + 0.106 049 803 801 161 891 84;
  • 45) 0.106 049 803 801 161 891 84 × 2 = 0 + 0.212 099 607 602 323 783 68;
  • 46) 0.212 099 607 602 323 783 68 × 2 = 0 + 0.424 199 215 204 647 567 36;
  • 47) 0.424 199 215 204 647 567 36 × 2 = 0 + 0.848 398 430 409 295 134 72;
  • 48) 0.848 398 430 409 295 134 72 × 2 = 1 + 0.696 796 860 818 590 269 44;
  • 49) 0.696 796 860 818 590 269 44 × 2 = 1 + 0.393 593 721 637 180 538 88;
  • 50) 0.393 593 721 637 180 538 88 × 2 = 0 + 0.787 187 443 274 361 077 76;
  • 51) 0.787 187 443 274 361 077 76 × 2 = 1 + 0.574 374 886 548 722 155 52;
  • 52) 0.574 374 886 548 722 155 52 × 2 = 1 + 0.148 749 773 097 444 311 04;
  • 53) 0.148 749 773 097 444 311 04 × 2 = 0 + 0.297 499 546 194 888 622 08;
  • 54) 0.297 499 546 194 888 622 08 × 2 = 0 + 0.594 999 092 389 777 244 16;
  • 55) 0.594 999 092 389 777 244 16 × 2 = 1 + 0.189 998 184 779 554 488 32;
  • 56) 0.189 998 184 779 554 488 32 × 2 = 0 + 0.379 996 369 559 108 976 64;
  • 57) 0.379 996 369 559 108 976 64 × 2 = 0 + 0.759 992 739 118 217 953 28;
  • 58) 0.759 992 739 118 217 953 28 × 2 = 1 + 0.519 985 478 236 435 906 56;
  • 59) 0.519 985 478 236 435 906 56 × 2 = 1 + 0.039 970 956 472 871 813 12;
  • 60) 0.039 970 956 472 871 813 12 × 2 = 0 + 0.079 941 912 945 743 626 24;
  • 61) 0.079 941 912 945 743 626 24 × 2 = 0 + 0.159 883 825 891 487 252 48;
  • 62) 0.159 883 825 891 487 252 48 × 2 = 0 + 0.319 767 651 782 974 504 96;
  • 63) 0.319 767 651 782 974 504 96 × 2 = 0 + 0.639 535 303 565 949 009 92;
  • 64) 0.639 535 303 565 949 009 92 × 2 = 1 + 0.279 070 607 131 898 019 84;
  • 65) 0.279 070 607 131 898 019 84 × 2 = 0 + 0.558 141 214 263 796 039 68;
  • 66) 0.558 141 214 263 796 039 68 × 2 = 1 + 0.116 282 428 527 592 079 36;
  • 67) 0.116 282 428 527 592 079 36 × 2 = 0 + 0.232 564 857 055 184 158 72;
  • 68) 0.232 564 857 055 184 158 72 × 2 = 0 + 0.465 129 714 110 368 317 44;
  • 69) 0.465 129 714 110 368 317 44 × 2 = 0 + 0.930 259 428 220 736 634 88;
  • 70) 0.930 259 428 220 736 634 88 × 2 = 1 + 0.860 518 856 441 473 269 76;
  • 71) 0.860 518 856 441 473 269 76 × 2 = 1 + 0.721 037 712 882 946 539 52;
  • 72) 0.721 037 712 882 946 539 52 × 2 = 1 + 0.442 075 425 765 893 079 04;
  • 73) 0.442 075 425 765 893 079 04 × 2 = 0 + 0.884 150 851 531 786 158 08;
  • 74) 0.884 150 851 531 786 158 08 × 2 = 1 + 0.768 301 703 063 572 316 16;
  • 75) 0.768 301 703 063 572 316 16 × 2 = 1 + 0.536 603 406 127 144 632 32;
  • 76) 0.536 603 406 127 144 632 32 × 2 = 1 + 0.073 206 812 254 289 264 64;
  • 77) 0.073 206 812 254 289 264 64 × 2 = 0 + 0.146 413 624 508 578 529 28;
  • 78) 0.146 413 624 508 578 529 28 × 2 = 0 + 0.292 827 249 017 157 058 56;
  • 79) 0.292 827 249 017 157 058 56 × 2 = 0 + 0.585 654 498 034 314 117 12;
  • 80) 0.585 654 498 034 314 117 12 × 2 = 1 + 0.171 308 996 068 628 234 24;
  • 81) 0.171 308 996 068 628 234 24 × 2 = 0 + 0.342 617 992 137 256 468 48;
  • 82) 0.342 617 992 137 256 468 48 × 2 = 0 + 0.685 235 984 274 512 936 96;
  • 83) 0.685 235 984 274 512 936 96 × 2 = 1 + 0.370 471 968 549 025 873 92;
  • 84) 0.370 471 968 549 025 873 92 × 2 = 0 + 0.740 943 937 098 051 747 84;
  • 85) 0.740 943 937 098 051 747 84 × 2 = 1 + 0.481 887 874 196 103 495 68;
  • 86) 0.481 887 874 196 103 495 68 × 2 = 0 + 0.963 775 748 392 206 991 36;
  • 87) 0.963 775 748 392 206 991 36 × 2 = 1 + 0.927 551 496 784 413 982 72;
  • 88) 0.927 551 496 784 413 982 72 × 2 = 1 + 0.855 102 993 568 827 965 44;
  • 89) 0.855 102 993 568 827 965 44 × 2 = 1 + 0.710 205 987 137 655 930 88;
  • 90) 0.710 205 987 137 655 930 88 × 2 = 1 + 0.420 411 974 275 311 861 76;
  • 91) 0.420 411 974 275 311 861 76 × 2 = 0 + 0.840 823 948 550 623 723 52;
  • 92) 0.840 823 948 550 623 723 52 × 2 = 1 + 0.681 647 897 101 247 447 04;
  • 93) 0.681 647 897 101 247 447 04 × 2 = 1 + 0.363 295 794 202 494 894 08;
  • 94) 0.363 295 794 202 494 894 08 × 2 = 0 + 0.726 591 588 404 989 788 16;
  • 95) 0.726 591 588 404 989 788 16 × 2 = 1 + 0.453 183 176 809 979 576 32;

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


5. 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.000 000 000 000 176 558 49(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 0001 0100 0111 0111 0001 0010 1011 1101 101(2)

6. Positive number before normalization:

0.000 000 000 000 176 558 49(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 0001 0100 0111 0111 0001 0010 1011 1101 101(2)

7. Normalize the binary representation of the number.

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


0.000 000 000 000 176 558 49(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 0001 0100 0111 0111 0001 0010 1011 1101 101(2) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 0001 0100 0111 0111 0001 0010 1011 1101 101(2) × 20 =


1.1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 1101(2) × 2-43


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


Mantissa (not normalized):
1.1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 1101


9. Adjust the exponent.

Use the 11 bit excess/bias notation:


Exponent (adjusted) =


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


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


(-43 + 1 023)(10) =


980(10)


10. 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;
  • 980 ÷ 2 = 490 + 0;
  • 490 ÷ 2 = 245 + 0;
  • 245 ÷ 2 = 122 + 1;
  • 122 ÷ 2 = 61 + 0;
  • 61 ÷ 2 = 30 + 1;
  • 30 ÷ 2 = 15 + 0;
  • 15 ÷ 2 = 7 + 1;
  • 7 ÷ 2 = 3 + 1;
  • 3 ÷ 2 = 1 + 1;
  • 1 ÷ 2 = 0 + 1;

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

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


Exponent (adjusted) =


980(10) =


011 1101 0100(2)


12. 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. 1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 1101 =


1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 1101


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

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


Exponent (11 bits) =
011 1101 0100


Mantissa (52 bits) =
1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 1101


Decimal number -0.000 000 000 000 176 558 49 converted to 64 bit double precision IEEE 754 binary floating point representation:

1 - 011 1101 0100 - 1000 1101 1001 0011 0000 1010 0011 1011 1000 1001 0101 1110 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