24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 795 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 795 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 795 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 795 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 795 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 590 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 590 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 180 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 180 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 360 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 360 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 721 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 721 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 443 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 443 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 886 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 886 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 772 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 772 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 115 545 6;
- 9) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 115 545 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 231 091 2;
- 10) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 231 091 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 462 182 4;
- 11) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 462 182 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 924 364 8;
- 12) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 924 364 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 848 729 6;
- 13) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 848 729 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 697 459 2;
- 14) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 697 459 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 394 918 4;
- 15) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 394 918 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 789 836 8;
- 16) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 789 836 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 579 673 6;
- 17) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 579 673 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 159 347 2;
- 18) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 159 347 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 318 694 4;
- 19) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 318 694 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 564 637 388 8;
- 20) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 564 637 388 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 129 274 777 6;
- 21) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 129 274 777 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 258 549 555 2;
- 22) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 258 549 555 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 517 099 110 4;
- 23) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 517 099 110 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 034 198 220 8;
- 24) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 034 198 220 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 068 396 441 6;
- 25) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 068 396 441 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 136 792 883 2;
- 26) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 136 792 883 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 273 585 766 4;
- 27) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 273 585 766 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 224 547 171 532 8;
- 28) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 224 547 171 532 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 449 094 343 065 6;
- 29) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 449 094 343 065 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 898 188 686 131 2;
- 30) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 898 188 686 131 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 796 377 372 262 4;
- 31) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 796 377 372 262 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 592 754 744 524 8;
- 32) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 592 754 744 524 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 185 509 489 049 6;
- 33) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 185 509 489 049 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 371 018 978 099 2;
- 34) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 371 018 978 099 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 742 037 956 198 4;
- 35) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 742 037 956 198 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 484 075 912 396 8;
- 36) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 484 075 912 396 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 968 151 824 793 6;
- 37) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 968 151 824 793 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 936 303 649 587 2;
- 38) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 557 936 303 649 587 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 115 872 607 299 174 4;
- 39) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 115 872 607 299 174 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 231 745 214 598 348 8;
- 40) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 231 745 214 598 348 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 463 490 429 196 697 6;
- 41) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 463 490 429 196 697 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 926 980 858 393 395 2;
- 42) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 926 980 858 393 395 2 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 853 961 716 786 790 4;
- 43) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 853 961 716 786 790 4 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 707 923 433 573 580 8;
- 44) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 707 923 433 573 580 8 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 415 846 867 147 161 6;
- 45) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 415 846 867 147 161 6 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 831 693 734 294 323 2;
- 46) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 831 693 734 294 323 2 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 663 387 468 588 646 4;
- 47) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 663 387 468 588 646 4 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 326 774 937 177 292 8;
- 48) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 326 774 937 177 292 8 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 653 549 874 354 585 6;
- 49) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 653 549 874 354 585 6 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 565 307 099 748 709 171 2;
- 50) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 565 307 099 748 709 171 2 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 130 614 199 497 418 342 4;
- 51) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 130 614 199 497 418 342 4 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 261 228 398 994 836 684 8;
- 52) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 261 228 398 994 836 684 8 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 522 456 797 989 673 369 6;
- 53) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 522 456 797 989 673 369 6 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 044 913 595 979 346 739 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 795 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 795 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 795 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 795 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