0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 094 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 333 094(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 333 094(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 333 094.
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 333 094 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 188;
- 2) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 188 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 376;
- 3) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 376 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 752;
- 4) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 752 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 504;
- 5) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 504 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 659 008;
- 6) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 659 008 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 318 016;
- 7) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 318 016 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 636 032;
- 8) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 636 032 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 272 064;
- 9) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 272 064 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 544 128;
- 10) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 544 128 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 088 256;
- 11) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 088 256 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 176 512;
- 12) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 176 512 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 353 024;
- 13) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 353 024 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 706 048;
- 14) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 706 048 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 412 096;
- 15) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 412 096 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 824 192;
- 16) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 824 192 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 317 648 384;
- 17) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 317 648 384 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 635 296 768;
- 18) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 635 296 768 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 270 593 536;
- 19) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 270 593 536 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 541 187 072;
- 20) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 541 187 072 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 082 374 144;
- 21) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 082 374 144 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 164 748 288;
- 22) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 164 748 288 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 329 496 576;
- 23) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 329 496 576 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 658 993 152;
- 24) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 658 993 152 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 317 986 304;
- 25) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 317 986 304 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 635 972 608;
- 26) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 635 972 608 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 317 271 945 216;
- 27) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 317 271 945 216 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 634 543 890 432;
- 28) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 634 543 890 432 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 269 087 780 864;
- 29) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 269 087 780 864 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 538 175 561 728;
- 30) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 538 175 561 728 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 076 351 123 456;
- 31) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 076 351 123 456 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 152 702 246 912;
- 32) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 152 702 246 912 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 305 404 493 824;
- 33) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 305 404 493 824 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 610 808 987 648;
- 34) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 610 808 987 648 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 221 617 975 296;
- 35) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 221 617 975 296 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 443 235 950 592;
- 36) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 443 235 950 592 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 316 886 471 901 184;
- 37) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 316 886 471 901 184 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 633 772 943 802 368;
- 38) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 633 772 943 802 368 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 267 545 887 604 736;
- 39) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 267 545 887 604 736 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 535 091 775 209 472;
- 40) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 535 091 775 209 472 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 070 183 550 418 944;
- 41) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 070 183 550 418 944 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 140 367 100 837 888;
- 42) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 140 367 100 837 888 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 280 734 201 675 776;
- 43) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 280 734 201 675 776 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 561 468 403 351 552;
- 44) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 561 468 403 351 552 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 122 936 806 703 104;
- 45) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 122 936 806 703 104 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 245 873 613 406 208;
- 46) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 658 245 873 613 406 208 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 316 491 747 226 812 416;
- 47) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 316 491 747 226 812 416 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 632 983 494 453 624 832;
- 48) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 632 983 494 453 624 832 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 265 966 988 907 249 664;
- 49) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 265 966 988 907 249 664 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 531 933 977 814 499 328;
- 50) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 531 933 977 814 499 328 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 063 867 955 628 998 656;
- 51) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 063 867 955 628 998 656 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 127 735 911 257 997 312;
- 52) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 127 735 911 257 997 312 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 255 471 822 515 994 624;
- 53) 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 332 255 471 822 515 994 624 × 2 = 0 + 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 510 943 645 031 989 248;
- 54) 0.666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 664 510 943 645 031 989 248 × 2 = 1 + 0.333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 329 021 887 290 063 978 496;
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 333 094(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 333 094(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 333 094(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 333 094 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