24.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 566 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 566(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 566(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 566.
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 566 × 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 132;
- 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 132 × 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 110 264;
- 3) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 264 × 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 220 528;
- 4) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 220 528 × 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 441 056;
- 5) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 441 056 × 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 882 112;
- 6) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 882 112 × 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 764 224;
- 7) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 764 224 × 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 528 448;
- 8) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 528 448 × 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 056 896;
- 9) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 056 896 × 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 113 792;
- 10) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 113 792 × 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 227 584;
- 11) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 227 584 × 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 455 168;
- 12) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 455 168 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 910 336;
- 13) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 910 336 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 553 820 672;
- 14) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 553 820 672 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 107 641 344;
- 15) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 107 641 344 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 215 282 688;
- 16) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 215 282 688 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 430 565 376;
- 17) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 430 565 376 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 861 130 752;
- 18) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 861 130 752 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 722 261 504;
- 19) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 722 261 504 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 444 523 008;
- 20) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 444 523 008 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 889 046 016;
- 21) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 889 046 016 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 778 092 032;
- 22) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 778 092 032 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 556 184 064;
- 23) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 556 184 064 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 887 112 368 128;
- 24) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 887 112 368 128 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 774 224 736 256;
- 25) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 774 224 736 256 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 548 449 472 512;
- 26) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 548 449 472 512 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 096 898 945 024;
- 27) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 096 898 945 024 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 193 797 890 048;
- 28) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 193 797 890 048 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 387 595 780 096;
- 29) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 387 595 780 096 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 775 191 560 192;
- 30) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 775 191 560 192 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 550 383 120 384;
- 31) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 550 383 120 384 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 100 766 240 768;
- 32) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 100 766 240 768 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 201 532 481 536;
- 33) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 201 532 481 536 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 220 403 064 963 072;
- 34) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 220 403 064 963 072 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 440 806 129 926 144;
- 35) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 440 806 129 926 144 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 881 612 259 852 288;
- 36) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 881 612 259 852 288 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 763 224 519 704 576;
- 37) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 763 224 519 704 576 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 526 449 039 409 152;
- 38) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 526 449 039 409 152 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 052 898 078 818 304;
- 39) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 052 898 078 818 304 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 105 796 157 636 608;
- 40) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 105 796 157 636 608 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 211 592 315 273 216;
- 41) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 211 592 315 273 216 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 423 184 630 546 432;
- 42) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 423 184 630 546 432 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 846 369 261 092 864;
- 43) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 846 369 261 092 864 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 553 692 738 522 185 728;
- 44) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 553 692 738 522 185 728 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 107 385 477 044 371 456;
- 45) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 107 385 477 044 371 456 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 214 770 954 088 742 912;
- 46) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 214 770 954 088 742 912 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 429 541 908 177 485 824;
- 47) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 429 541 908 177 485 824 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 859 083 816 354 971 648;
- 48) 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 859 083 816 354 971 648 × 2 = 1 + 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 718 167 632 709 943 296;
- 49) 0.777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 718 167 632 709 943 296 × 2 = 1 + 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 436 335 265 419 886 592;
- 50) 0.555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 436 335 265 419 886 592 × 2 = 1 + 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 872 670 530 839 773 184;
- 51) 0.111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 872 670 530 839 773 184 × 2 = 0 + 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 745 341 061 679 546 368;
- 52) 0.222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 745 341 061 679 546 368 × 2 = 0 + 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 490 682 123 359 092 736;
- 53) 0.444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 443 490 682 123 359 092 736 × 2 = 0 + 0.888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 886 981 364 246 718 185 472;
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 566(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 566(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 566(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 566 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