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

Convert decimal -0.000 000 000 000 176 559 2(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 559 2(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 559 2| = 0.000 000 000 000 176 559 2


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

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 559 2 × 2 = 0 + 0.000 000 000 000 353 118 4;
  • 2) 0.000 000 000 000 353 118 4 × 2 = 0 + 0.000 000 000 000 706 236 8;
  • 3) 0.000 000 000 000 706 236 8 × 2 = 0 + 0.000 000 000 001 412 473 6;
  • 4) 0.000 000 000 001 412 473 6 × 2 = 0 + 0.000 000 000 002 824 947 2;
  • 5) 0.000 000 000 002 824 947 2 × 2 = 0 + 0.000 000 000 005 649 894 4;
  • 6) 0.000 000 000 005 649 894 4 × 2 = 0 + 0.000 000 000 011 299 788 8;
  • 7) 0.000 000 000 011 299 788 8 × 2 = 0 + 0.000 000 000 022 599 577 6;
  • 8) 0.000 000 000 022 599 577 6 × 2 = 0 + 0.000 000 000 045 199 155 2;
  • 9) 0.000 000 000 045 199 155 2 × 2 = 0 + 0.000 000 000 090 398 310 4;
  • 10) 0.000 000 000 090 398 310 4 × 2 = 0 + 0.000 000 000 180 796 620 8;
  • 11) 0.000 000 000 180 796 620 8 × 2 = 0 + 0.000 000 000 361 593 241 6;
  • 12) 0.000 000 000 361 593 241 6 × 2 = 0 + 0.000 000 000 723 186 483 2;
  • 13) 0.000 000 000 723 186 483 2 × 2 = 0 + 0.000 000 001 446 372 966 4;
  • 14) 0.000 000 001 446 372 966 4 × 2 = 0 + 0.000 000 002 892 745 932 8;
  • 15) 0.000 000 002 892 745 932 8 × 2 = 0 + 0.000 000 005 785 491 865 6;
  • 16) 0.000 000 005 785 491 865 6 × 2 = 0 + 0.000 000 011 570 983 731 2;
  • 17) 0.000 000 011 570 983 731 2 × 2 = 0 + 0.000 000 023 141 967 462 4;
  • 18) 0.000 000 023 141 967 462 4 × 2 = 0 + 0.000 000 046 283 934 924 8;
  • 19) 0.000 000 046 283 934 924 8 × 2 = 0 + 0.000 000 092 567 869 849 6;
  • 20) 0.000 000 092 567 869 849 6 × 2 = 0 + 0.000 000 185 135 739 699 2;
  • 21) 0.000 000 185 135 739 699 2 × 2 = 0 + 0.000 000 370 271 479 398 4;
  • 22) 0.000 000 370 271 479 398 4 × 2 = 0 + 0.000 000 740 542 958 796 8;
  • 23) 0.000 000 740 542 958 796 8 × 2 = 0 + 0.000 001 481 085 917 593 6;
  • 24) 0.000 001 481 085 917 593 6 × 2 = 0 + 0.000 002 962 171 835 187 2;
  • 25) 0.000 002 962 171 835 187 2 × 2 = 0 + 0.000 005 924 343 670 374 4;
  • 26) 0.000 005 924 343 670 374 4 × 2 = 0 + 0.000 011 848 687 340 748 8;
  • 27) 0.000 011 848 687 340 748 8 × 2 = 0 + 0.000 023 697 374 681 497 6;
  • 28) 0.000 023 697 374 681 497 6 × 2 = 0 + 0.000 047 394 749 362 995 2;
  • 29) 0.000 047 394 749 362 995 2 × 2 = 0 + 0.000 094 789 498 725 990 4;
  • 30) 0.000 094 789 498 725 990 4 × 2 = 0 + 0.000 189 578 997 451 980 8;
  • 31) 0.000 189 578 997 451 980 8 × 2 = 0 + 0.000 379 157 994 903 961 6;
  • 32) 0.000 379 157 994 903 961 6 × 2 = 0 + 0.000 758 315 989 807 923 2;
  • 33) 0.000 758 315 989 807 923 2 × 2 = 0 + 0.001 516 631 979 615 846 4;
  • 34) 0.001 516 631 979 615 846 4 × 2 = 0 + 0.003 033 263 959 231 692 8;
  • 35) 0.003 033 263 959 231 692 8 × 2 = 0 + 0.006 066 527 918 463 385 6;
  • 36) 0.006 066 527 918 463 385 6 × 2 = 0 + 0.012 133 055 836 926 771 2;
  • 37) 0.012 133 055 836 926 771 2 × 2 = 0 + 0.024 266 111 673 853 542 4;
  • 38) 0.024 266 111 673 853 542 4 × 2 = 0 + 0.048 532 223 347 707 084 8;
  • 39) 0.048 532 223 347 707 084 8 × 2 = 0 + 0.097 064 446 695 414 169 6;
  • 40) 0.097 064 446 695 414 169 6 × 2 = 0 + 0.194 128 893 390 828 339 2;
  • 41) 0.194 128 893 390 828 339 2 × 2 = 0 + 0.388 257 786 781 656 678 4;
  • 42) 0.388 257 786 781 656 678 4 × 2 = 0 + 0.776 515 573 563 313 356 8;
  • 43) 0.776 515 573 563 313 356 8 × 2 = 1 + 0.553 031 147 126 626 713 6;
  • 44) 0.553 031 147 126 626 713 6 × 2 = 1 + 0.106 062 294 253 253 427 2;
  • 45) 0.106 062 294 253 253 427 2 × 2 = 0 + 0.212 124 588 506 506 854 4;
  • 46) 0.212 124 588 506 506 854 4 × 2 = 0 + 0.424 249 177 013 013 708 8;
  • 47) 0.424 249 177 013 013 708 8 × 2 = 0 + 0.848 498 354 026 027 417 6;
  • 48) 0.848 498 354 026 027 417 6 × 2 = 1 + 0.696 996 708 052 054 835 2;
  • 49) 0.696 996 708 052 054 835 2 × 2 = 1 + 0.393 993 416 104 109 670 4;
  • 50) 0.393 993 416 104 109 670 4 × 2 = 0 + 0.787 986 832 208 219 340 8;
  • 51) 0.787 986 832 208 219 340 8 × 2 = 1 + 0.575 973 664 416 438 681 6;
  • 52) 0.575 973 664 416 438 681 6 × 2 = 1 + 0.151 947 328 832 877 363 2;
  • 53) 0.151 947 328 832 877 363 2 × 2 = 0 + 0.303 894 657 665 754 726 4;
  • 54) 0.303 894 657 665 754 726 4 × 2 = 0 + 0.607 789 315 331 509 452 8;
  • 55) 0.607 789 315 331 509 452 8 × 2 = 1 + 0.215 578 630 663 018 905 6;
  • 56) 0.215 578 630 663 018 905 6 × 2 = 0 + 0.431 157 261 326 037 811 2;
  • 57) 0.431 157 261 326 037 811 2 × 2 = 0 + 0.862 314 522 652 075 622 4;
  • 58) 0.862 314 522 652 075 622 4 × 2 = 1 + 0.724 629 045 304 151 244 8;
  • 59) 0.724 629 045 304 151 244 8 × 2 = 1 + 0.449 258 090 608 302 489 6;
  • 60) 0.449 258 090 608 302 489 6 × 2 = 0 + 0.898 516 181 216 604 979 2;
  • 61) 0.898 516 181 216 604 979 2 × 2 = 1 + 0.797 032 362 433 209 958 4;
  • 62) 0.797 032 362 433 209 958 4 × 2 = 1 + 0.594 064 724 866 419 916 8;
  • 63) 0.594 064 724 866 419 916 8 × 2 = 1 + 0.188 129 449 732 839 833 6;
  • 64) 0.188 129 449 732 839 833 6 × 2 = 0 + 0.376 258 899 465 679 667 2;
  • 65) 0.376 258 899 465 679 667 2 × 2 = 0 + 0.752 517 798 931 359 334 4;
  • 66) 0.752 517 798 931 359 334 4 × 2 = 1 + 0.505 035 597 862 718 668 8;
  • 67) 0.505 035 597 862 718 668 8 × 2 = 1 + 0.010 071 195 725 437 337 6;
  • 68) 0.010 071 195 725 437 337 6 × 2 = 0 + 0.020 142 391 450 874 675 2;
  • 69) 0.020 142 391 450 874 675 2 × 2 = 0 + 0.040 284 782 901 749 350 4;
  • 70) 0.040 284 782 901 749 350 4 × 2 = 0 + 0.080 569 565 803 498 700 8;
  • 71) 0.080 569 565 803 498 700 8 × 2 = 0 + 0.161 139 131 606 997 401 6;
  • 72) 0.161 139 131 606 997 401 6 × 2 = 0 + 0.322 278 263 213 994 803 2;
  • 73) 0.322 278 263 213 994 803 2 × 2 = 0 + 0.644 556 526 427 989 606 4;
  • 74) 0.644 556 526 427 989 606 4 × 2 = 1 + 0.289 113 052 855 979 212 8;
  • 75) 0.289 113 052 855 979 212 8 × 2 = 0 + 0.578 226 105 711 958 425 6;
  • 76) 0.578 226 105 711 958 425 6 × 2 = 1 + 0.156 452 211 423 916 851 2;
  • 77) 0.156 452 211 423 916 851 2 × 2 = 0 + 0.312 904 422 847 833 702 4;
  • 78) 0.312 904 422 847 833 702 4 × 2 = 0 + 0.625 808 845 695 667 404 8;
  • 79) 0.625 808 845 695 667 404 8 × 2 = 1 + 0.251 617 691 391 334 809 6;
  • 80) 0.251 617 691 391 334 809 6 × 2 = 0 + 0.503 235 382 782 669 619 2;
  • 81) 0.503 235 382 782 669 619 2 × 2 = 1 + 0.006 470 765 565 339 238 4;
  • 82) 0.006 470 765 565 339 238 4 × 2 = 0 + 0.012 941 531 130 678 476 8;
  • 83) 0.012 941 531 130 678 476 8 × 2 = 0 + 0.025 883 062 261 356 953 6;
  • 84) 0.025 883 062 261 356 953 6 × 2 = 0 + 0.051 766 124 522 713 907 2;
  • 85) 0.051 766 124 522 713 907 2 × 2 = 0 + 0.103 532 249 045 427 814 4;
  • 86) 0.103 532 249 045 427 814 4 × 2 = 0 + 0.207 064 498 090 855 628 8;
  • 87) 0.207 064 498 090 855 628 8 × 2 = 0 + 0.414 128 996 181 711 257 6;
  • 88) 0.414 128 996 181 711 257 6 × 2 = 0 + 0.828 257 992 363 422 515 2;
  • 89) 0.828 257 992 363 422 515 2 × 2 = 1 + 0.656 515 984 726 845 030 4;
  • 90) 0.656 515 984 726 845 030 4 × 2 = 1 + 0.313 031 969 453 690 060 8;
  • 91) 0.313 031 969 453 690 060 8 × 2 = 0 + 0.626 063 938 907 380 121 6;
  • 92) 0.626 063 938 907 380 121 6 × 2 = 1 + 0.252 127 877 814 760 243 2;
  • 93) 0.252 127 877 814 760 243 2 × 2 = 0 + 0.504 255 755 629 520 486 4;
  • 94) 0.504 255 755 629 520 486 4 × 2 = 1 + 0.008 511 511 259 040 972 8;
  • 95) 0.008 511 511 259 040 972 8 × 2 = 0 + 0.017 023 022 518 081 945 6;

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 559 2(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 1110 0110 0000 0101 0010 1000 0000 1101 010(2)

6. Positive number before normalization:

0.000 000 000 000 176 559 2(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 1110 0110 0000 0101 0010 1000 0000 1101 010(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 559 2(10) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 1110 0110 0000 0101 0010 1000 0000 1101 010(2) =


0.0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0011 0001 1011 0010 0110 1110 0110 0000 0101 0010 1000 0000 1101 010(2) × 20 =


1.1000 1101 1001 0011 0111 0011 0000 0010 1001 0100 0000 0110 1010(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 0111 0011 0000 0010 1001 0100 0000 0110 1010


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 0111 0011 0000 0010 1001 0100 0000 0110 1010 =


1000 1101 1001 0011 0111 0011 0000 0010 1001 0100 0000 0110 1010


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 0111 0011 0000 0010 1001 0100 0000 0110 1010


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

1 - 011 1101 0100 - 1000 1101 1001 0011 0111 0011 0000 0010 1001 0100 0000 0110 1010


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