24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 859 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 777 859(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 777 859(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 777 859.
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 777 859 × 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 555 718;
- 2) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 718 × 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 111 436;
- 3) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 436 × 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 222 872;
- 4) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 872 × 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 445 744;
- 5) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 744 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 488;
- 6) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 488 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 976;
- 7) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 782 976 × 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 565 952;
- 8) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 565 952 × 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 131 904;
- 9) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 131 904 × 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 263 808;
- 10) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 263 808 × 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 527 616;
- 11) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 527 616 × 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 055 232;
- 12) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 055 232 × 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 110 464;
- 13) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 110 464 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 220 928;
- 14) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 220 928 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 441 856;
- 15) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 441 856 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 224 883 712;
- 16) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 224 883 712 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 449 767 424;
- 17) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 449 767 424 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 899 534 848;
- 18) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 899 534 848 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 799 069 696;
- 19) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 799 069 696 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 598 139 392;
- 20) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 598 139 392 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 196 278 784;
- 21) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 196 278 784 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 392 557 568;
- 22) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 392 557 568 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 785 115 136;
- 23) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 785 115 136 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 570 230 272;
- 24) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 570 230 272 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 779 140 460 544;
- 25) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 779 140 460 544 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 558 280 921 088;
- 26) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 558 280 921 088 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 116 561 842 176;
- 27) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 116 561 842 176 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 233 123 684 352;
- 28) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 233 123 684 352 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 466 247 368 704;
- 29) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 466 247 368 704 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 932 494 737 408;
- 30) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 932 494 737 408 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 864 989 474 816;
- 31) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 864 989 474 816 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 729 978 949 632;
- 32) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 729 978 949 632 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 459 957 899 264;
- 33) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 459 957 899 264 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 919 915 798 528;
- 34) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 919 915 798 528 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 839 831 597 056;
- 35) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 839 831 597 056 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 679 663 194 112;
- 36) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 891 679 663 194 112 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 783 359 326 388 224;
- 37) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 783 359 326 388 224 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 566 718 652 776 448;
- 38) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 566 718 652 776 448 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 133 437 305 552 896;
- 39) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 133 437 305 552 896 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 266 874 611 105 792;
- 40) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 266 874 611 105 792 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 533 749 222 211 584;
- 41) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 533 749 222 211 584 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 067 498 444 423 168;
- 42) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 067 498 444 423 168 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 134 996 888 846 336;
- 43) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 134 996 888 846 336 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 269 993 777 692 672;
- 44) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 269 993 777 692 672 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 539 987 555 385 344;
- 45) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 112 539 987 555 385 344 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 225 079 975 110 770 688;
- 46) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 225 079 975 110 770 688 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 450 159 950 221 541 376;
- 47) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 450 159 950 221 541 376 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 900 319 900 443 082 752;
- 48) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 900 319 900 443 082 752 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 800 639 800 886 165 504;
- 49) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 800 639 800 886 165 504 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 601 279 601 772 331 008;
- 50) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 601 279 601 772 331 008 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 202 559 203 544 662 016;
- 51) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 202 559 203 544 662 016 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 405 118 407 089 324 032;
- 52) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 405 118 407 089 324 032 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 810 236 814 178 648 064;
- 53) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 810 236 814 178 648 064 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 620 473 628 357 296 128;
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 777 859(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 777 859(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 777 859(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 777 859 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