0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 304 9 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 304 9(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 304 9(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 304 9.
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 304 9 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 609 8;
- 2) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 609 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 219 6;
- 3) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 219 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 439 2;
- 4) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 439 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 878 4;
- 5) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 878 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 756 8;
- 6) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 756 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 513 6;
- 7) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 513 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 663 027 2;
- 8) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 663 027 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 326 054 4;
- 9) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 326 054 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 652 108 8;
- 10) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 652 108 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 304 217 6;
- 11) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 304 217 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 608 435 2;
- 12) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 608 435 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 216 870 4;
- 13) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 216 870 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 433 740 8;
- 14) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 433 740 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 867 481 6;
- 15) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 867 481 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 734 963 2;
- 16) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 734 963 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 469 926 4;
- 17) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 469 926 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 939 852 8;
- 18) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 939 852 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 879 705 6;
- 19) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 879 705 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 759 411 2;
- 20) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 759 411 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 303 518 822 4;
- 21) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 303 518 822 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 607 037 644 8;
- 22) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 607 037 644 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 214 075 289 6;
- 23) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 214 075 289 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 428 150 579 2;
- 24) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 428 150 579 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 856 301 158 4;
- 25) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 856 301 158 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 712 602 316 8;
- 26) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 712 602 316 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 425 204 633 6;
- 27) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 425 204 633 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 850 409 267 2;
- 28) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 850 409 267 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 700 818 534 4;
- 29) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 700 818 534 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 401 637 068 8;
- 30) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 401 637 068 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 302 803 274 137 6;
- 31) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 302 803 274 137 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 605 606 548 275 2;
- 32) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 605 606 548 275 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 211 213 096 550 4;
- 33) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 211 213 096 550 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 422 426 193 100 8;
- 34) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 422 426 193 100 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 844 852 386 201 6;
- 35) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 844 852 386 201 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 689 704 772 403 2;
- 36) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 689 704 772 403 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 379 409 544 806 4;
- 37) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 379 409 544 806 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 758 819 089 612 8;
- 38) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 758 819 089 612 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 517 638 179 225 6;
- 39) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 517 638 179 225 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 035 276 358 451 2;
- 40) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 651 035 276 358 451 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 302 070 552 716 902 4;
- 41) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 302 070 552 716 902 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 604 141 105 433 804 8;
- 42) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 604 141 105 433 804 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 208 282 210 867 609 6;
- 43) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 208 282 210 867 609 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 416 564 421 735 219 2;
- 44) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 416 564 421 735 219 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 833 128 843 470 438 4;
- 45) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 833 128 843 470 438 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 666 257 686 940 876 8;
- 46) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 666 257 686 940 876 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 332 515 373 881 753 6;
- 47) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 332 515 373 881 753 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 665 030 747 763 507 2;
- 48) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 665 030 747 763 507 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 330 061 495 527 014 4;
- 49) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 330 061 495 527 014 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 660 122 991 054 028 8;
- 50) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 660 122 991 054 028 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 301 320 245 982 108 057 6;
- 51) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 301 320 245 982 108 057 6 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 602 640 491 964 216 115 2;
- 52) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 602 640 491 964 216 115 2 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 205 280 983 928 432 230 4;
- 53) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 205 280 983 928 432 230 4 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 410 561 967 856 864 460 8;
- 54) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 410 561 967 856 864 460 8 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 821 123 935 713 728 921 6;
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 304 9(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 304 9(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 304 9(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 304 9 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