0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 2 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 325 2(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 325 2(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 325 2.
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 325 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 4;
- 2) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 300 8;
- 3) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 300 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 601 6;
- 4) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 601 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 203 2;
- 5) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 203 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 406 4;
- 6) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 406 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 812 8;
- 7) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 812 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 625 6;
- 8) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 625 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 251 2;
- 9) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 251 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 502 4;
- 10) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 502 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 004 8;
- 11) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 325 004 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 009 6;
- 12) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 650 009 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 300 019 2;
- 13) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 300 019 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 600 038 4;
- 14) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 600 038 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 200 076 8;
- 15) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 200 076 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 400 153 6;
- 16) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 400 153 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 800 307 2;
- 17) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 800 307 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 600 614 4;
- 18) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 600 614 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 201 228 8;
- 19) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 201 228 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 402 457 6;
- 20) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 402 457 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 804 915 2;
- 21) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 804 915 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 609 830 4;
- 22) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 609 830 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 299 219 660 8;
- 23) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 299 219 660 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 598 439 321 6;
- 24) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 598 439 321 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 196 878 643 2;
- 25) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 196 878 643 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 393 757 286 4;
- 26) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 393 757 286 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 787 514 572 8;
- 27) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 787 514 572 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 575 029 145 6;
- 28) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 575 029 145 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 150 058 291 2;
- 29) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 150 058 291 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 300 116 582 4;
- 30) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 300 116 582 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 600 233 164 8;
- 31) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 600 233 164 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 200 466 329 6;
- 32) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 649 200 466 329 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 400 932 659 2;
- 33) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 298 400 932 659 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 596 801 865 318 4;
- 34) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 596 801 865 318 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 193 603 730 636 8;
- 35) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 193 603 730 636 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 387 207 461 273 6;
- 36) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 387 207 461 273 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 774 414 922 547 2;
- 37) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 774 414 922 547 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 548 829 845 094 4;
- 38) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 548 829 845 094 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 097 659 690 188 8;
- 39) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 097 659 690 188 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 195 319 380 377 6;
- 40) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 195 319 380 377 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 390 638 760 755 2;
- 41) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 390 638 760 755 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 781 277 521 510 4;
- 42) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 781 277 521 510 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 297 562 555 043 020 8;
- 43) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 297 562 555 043 020 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 595 125 110 086 041 6;
- 44) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 595 125 110 086 041 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 190 250 220 172 083 2;
- 45) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 190 250 220 172 083 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 380 500 440 344 166 4;
- 46) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 380 500 440 344 166 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 761 000 880 688 332 8;
- 47) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 761 000 880 688 332 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 522 001 761 376 665 6;
- 48) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 665 522 001 761 376 665 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 044 003 522 753 331 2;
- 49) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 331 044 003 522 753 331 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 088 007 045 506 662 4;
- 50) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 662 088 007 045 506 662 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 176 014 091 013 324 8;
- 51) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 324 176 014 091 013 324 8 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 352 028 182 026 649 6;
- 52) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 648 352 028 182 026 649 6 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 296 704 056 364 053 299 2;
- 53) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 296 704 056 364 053 299 2 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 593 408 112 728 106 598 4;
- 54) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 593 408 112 728 106 598 4 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 186 816 225 456 213 196 8;
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 325 2(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 325 2(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 325 2(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 325 2 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