0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard
Convert decimal 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18(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.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18(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: 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;
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.
0(10) =
0(2)
3. Convert to binary (base 2) the fractional part: 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18.
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.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 36;
- 2) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 36 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 72;
- 3) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 72 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 44;
- 4) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 44 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 88;
- 5) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 88 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 597 76;
- 6) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 597 76 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 195 52;
- 7) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 195 52 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 391 04;
- 8) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 391 04 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 782 08;
- 9) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 782 08 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 564 16;
- 10) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 564 16 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 128 32;
- 11) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 128 32 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 256 64;
- 12) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 256 64 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 513 28;
- 13) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 513 28 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 026 56;
- 14) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 026 56 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 053 12;
- 15) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 053 12 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 596 106 24;
- 16) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 596 106 24 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 192 212 48;
- 17) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 192 212 48 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 384 424 96;
- 18) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 384 424 96 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 768 849 92;
- 19) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 768 849 92 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 537 699 84;
- 20) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 537 699 84 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 075 399 68;
- 21) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 075 399 68 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 150 799 36;
- 22) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 150 799 36 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 301 598 72;
- 23) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 301 598 72 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 603 197 44;
- 24) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 603 197 44 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 297 206 394 88;
- 25) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 297 206 394 88 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 594 412 789 76;
- 26) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 594 412 789 76 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 188 825 579 52;
- 27) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 188 825 579 52 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 377 651 159 04;
- 28) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 377 651 159 04 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 755 302 318 08;
- 29) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 755 302 318 08 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 510 604 636 16;
- 30) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 510 604 636 16 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 021 209 272 32;
- 31) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 021 209 272 32 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 042 418 544 64;
- 32) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 042 418 544 64 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 084 837 089 28;
- 33) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 084 837 089 28 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 169 674 178 56;
- 34) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 169 674 178 56 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 296 339 348 357 12;
- 35) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 296 339 348 357 12 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 592 678 696 714 24;
- 36) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 592 678 696 714 24 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 185 357 393 428 48;
- 37) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 185 357 393 428 48 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 370 714 786 856 96;
- 38) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 370 714 786 856 96 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 741 429 573 713 92;
- 39) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 741 429 573 713 92 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 482 859 147 427 84;
- 40) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 482 859 147 427 84 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 330 965 718 294 855 68;
- 41) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 330 965 718 294 855 68 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 661 931 436 589 711 36;
- 42) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 661 931 436 589 711 36 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 323 862 873 179 422 72;
- 43) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 323 862 873 179 422 72 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 647 725 746 358 845 44;
- 44) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 647 725 746 358 845 44 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 295 451 492 717 690 88;
- 45) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 295 451 492 717 690 88 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 590 902 985 435 381 76;
- 46) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 590 902 985 435 381 76 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 181 805 970 870 763 52;
- 47) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 181 805 970 870 763 52 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 363 611 941 741 527 04;
- 48) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 363 611 941 741 527 04 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 727 223 883 483 054 08;
- 49) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 727 223 883 483 054 08 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 454 447 766 966 108 16;
- 50) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 454 447 766 966 108 16 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 330 908 895 533 932 216 32;
- 51) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 330 908 895 533 932 216 32 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 661 817 791 067 864 432 64;
- 52) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 661 817 791 067 864 432 64 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 323 635 582 135 728 865 28;
- 53) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 323 635 582 135 728 865 28 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 647 271 164 271 457 730 56;
- 54) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 647 271 164 271 457 730 56 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 294 542 328 542 915 461 12;
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.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18(10) =
0.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 01(2)
5. Positive number before normalization:
0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18(10) =
0.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 01(2)
6. Normalize the binary representation of the number.
Shift the decimal mark 2 positions to the right, so that only one non zero digit remains to the left of it:
0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18(10) =
0.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 01(2) =
0.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 01(2) × 20 =
1.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101(2) × 2-2
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): -2
Mantissa (not normalized):
1.0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101
8. Adjust the exponent.
Use the 11 bit excess/bias notation:
Exponent (adjusted) =
Exponent (unadjusted) + 2(11-1) - 1 =
-2 + 2(11-1) - 1 =
(-2 + 1 023)(10) =
1 021(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 021 ÷ 2 = 510 + 1;
- 510 ÷ 2 = 255 + 0;
- 255 ÷ 2 = 127 + 1;
- 127 ÷ 2 = 63 + 1;
- 63 ÷ 2 = 31 + 1;
- 31 ÷ 2 = 15 + 1;
- 15 ÷ 2 = 7 + 1;
- 7 ÷ 2 = 3 + 1;
- 3 ÷ 2 = 1 + 1;
- 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) =
1021(10) =
011 1111 1101(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, only if necessary (not the case here).
Mantissa (normalized) =
1. 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 =
0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101
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) =
011 1111 1101
Mantissa (52 bits) =
0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101
Decimal number 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 18 converted to 64 bit double precision IEEE 754 binary floating point representation:
0 - 011 1111 1101 - 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101