24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard
Convert decimal 24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1(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
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1(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: 24.
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;
- 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 integer part of the number.
Take all the remainders starting from the bottom of the list constructed above.
24(10) =
1 1000(2)
3. Convert to binary (base 2) the fractional part: 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1.
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.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 578 2;
- 2) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 578 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 156 4;
- 3) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 156 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 312 8;
- 4) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 312 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 625 6;
- 5) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 625 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 251 2;
- 6) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 251 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 502 4;
- 7) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 502 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 004 8;
- 8) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 004 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 114 009 6;
- 9) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 114 009 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 228 019 2;
- 10) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 228 019 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 456 038 4;
- 11) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 456 038 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 912 076 8;
- 12) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 912 076 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 824 153 6;
- 13) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 824 153 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 648 307 2;
- 14) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 648 307 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 296 614 4;
- 15) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 296 614 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 593 228 8;
- 16) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 593 228 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 186 457 6;
- 17) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 186 457 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 890 372 915 2;
- 18) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 890 372 915 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 780 745 830 4;
- 19) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 780 745 830 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 561 491 660 8;
- 20) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 561 491 660 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 122 983 321 6;
- 21) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 122 983 321 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 245 966 643 2;
- 22) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 245 966 643 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 491 933 286 4;
- 23) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 491 933 286 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 983 866 572 8;
- 24) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 983 866 572 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 967 733 145 6;
- 25) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 967 733 145 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 935 466 291 2;
- 26) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 935 466 291 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 870 932 582 4;
- 27) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 870 932 582 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 741 865 164 8;
- 28) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 741 865 164 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 447 483 730 329 6;
- 29) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 447 483 730 329 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 894 967 460 659 2;
- 30) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 894 967 460 659 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 934 921 318 4;
- 31) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 934 921 318 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 579 869 842 636 8;
- 32) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 579 869 842 636 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 159 739 685 273 6;
- 33) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 159 739 685 273 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 319 479 370 547 2;
- 34) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 319 479 370 547 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 638 958 741 094 4;
- 35) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 638 958 741 094 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 277 917 482 188 8;
- 36) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 277 917 482 188 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 555 834 964 377 6;
- 37) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 555 834 964 377 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 111 669 928 755 2;
- 38) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 111 669 928 755 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 114 223 339 857 510 4;
- 39) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 114 223 339 857 510 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 228 446 679 715 020 8;
- 40) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 228 446 679 715 020 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 456 893 359 430 041 6;
- 41) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 456 893 359 430 041 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 913 786 718 860 083 2;
- 42) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 913 786 718 860 083 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 827 573 437 720 166 4;
- 43) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 827 573 437 720 166 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 655 146 875 440 332 8;
- 44) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 655 146 875 440 332 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 310 293 750 880 665 6;
- 45) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 310 293 750 880 665 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 620 587 501 761 331 2;
- 46) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 620 587 501 761 331 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 241 175 003 522 662 4;
- 47) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 241 175 003 522 662 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 890 482 350 007 045 324 8;
- 48) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 890 482 350 007 045 324 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 780 964 700 014 090 649 6;
- 49) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 780 964 700 014 090 649 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 561 929 400 028 181 299 2;
- 50) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 561 929 400 028 181 299 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 123 858 800 056 362 598 4;
- 51) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 123 858 800 056 362 598 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 247 717 600 112 725 196 8;
- 52) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 247 717 600 112 725 196 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 495 435 200 225 450 393 6;
- 53) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 495 435 200 225 450 393 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 990 870 400 450 900 787 2;
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.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1(10) =
0.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2)
5. Positive number before normalization:
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1(10) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2)
6. Normalize the binary representation of the number.
Shift the decimal mark 4 positions to the left, so that only one non zero digit remains to the left of it:
24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1(10) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) =
1 1000.1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) × 20 =
1.1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) × 24
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): 4
Mantissa (not normalized):
1.1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0
8. Adjust the exponent.
Use the 11 bit excess/bias notation:
Exponent (adjusted) =
Exponent (unadjusted) + 2(11-1) - 1 =
4 + 2(11-1) - 1 =
(4 + 1 023)(10) =
1 027(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 027 ÷ 2 = 513 + 1;
- 513 ÷ 2 = 256 + 1;
- 256 ÷ 2 = 128 + 0;
- 128 ÷ 2 = 64 + 0;
- 64 ÷ 2 = 32 + 0;
- 32 ÷ 2 = 16 + 0;
- 16 ÷ 2 = 8 + 0;
- 8 ÷ 2 = 4 + 0;
- 4 ÷ 2 = 2 + 0;
- 2 ÷ 2 = 1 + 0;
- 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) =
1027(10) =
100 0000 0011(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, 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 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1 1000 =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
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) =
100 0000 0011
Mantissa (52 bits) =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
Decimal number 24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 789 1 converted to 64 bit double precision IEEE 754 binary floating point representation:
0 - 100 0000 0011 - 1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001