64bit IEEE 754: Decimal ↗ Double Precision Floating Point Binary: 0.002 204 718 632 Convert the Number to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard, From a Base Ten Decimal System Number

Number 0.002 204 718 632(10) converted and written in 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.002 204 718 632.

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.002 204 718 632 × 2 = 0 + 0.004 409 437 264;
  • 2) 0.004 409 437 264 × 2 = 0 + 0.008 818 874 528;
  • 3) 0.008 818 874 528 × 2 = 0 + 0.017 637 749 056;
  • 4) 0.017 637 749 056 × 2 = 0 + 0.035 275 498 112;
  • 5) 0.035 275 498 112 × 2 = 0 + 0.070 550 996 224;
  • 6) 0.070 550 996 224 × 2 = 0 + 0.141 101 992 448;
  • 7) 0.141 101 992 448 × 2 = 0 + 0.282 203 984 896;
  • 8) 0.282 203 984 896 × 2 = 0 + 0.564 407 969 792;
  • 9) 0.564 407 969 792 × 2 = 1 + 0.128 815 939 584;
  • 10) 0.128 815 939 584 × 2 = 0 + 0.257 631 879 168;
  • 11) 0.257 631 879 168 × 2 = 0 + 0.515 263 758 336;
  • 12) 0.515 263 758 336 × 2 = 1 + 0.030 527 516 672;
  • 13) 0.030 527 516 672 × 2 = 0 + 0.061 055 033 344;
  • 14) 0.061 055 033 344 × 2 = 0 + 0.122 110 066 688;
  • 15) 0.122 110 066 688 × 2 = 0 + 0.244 220 133 376;
  • 16) 0.244 220 133 376 × 2 = 0 + 0.488 440 266 752;
  • 17) 0.488 440 266 752 × 2 = 0 + 0.976 880 533 504;
  • 18) 0.976 880 533 504 × 2 = 1 + 0.953 761 067 008;
  • 19) 0.953 761 067 008 × 2 = 1 + 0.907 522 134 016;
  • 20) 0.907 522 134 016 × 2 = 1 + 0.815 044 268 032;
  • 21) 0.815 044 268 032 × 2 = 1 + 0.630 088 536 064;
  • 22) 0.630 088 536 064 × 2 = 1 + 0.260 177 072 128;
  • 23) 0.260 177 072 128 × 2 = 0 + 0.520 354 144 256;
  • 24) 0.520 354 144 256 × 2 = 1 + 0.040 708 288 512;
  • 25) 0.040 708 288 512 × 2 = 0 + 0.081 416 577 024;
  • 26) 0.081 416 577 024 × 2 = 0 + 0.162 833 154 048;
  • 27) 0.162 833 154 048 × 2 = 0 + 0.325 666 308 096;
  • 28) 0.325 666 308 096 × 2 = 0 + 0.651 332 616 192;
  • 29) 0.651 332 616 192 × 2 = 1 + 0.302 665 232 384;
  • 30) 0.302 665 232 384 × 2 = 0 + 0.605 330 464 768;
  • 31) 0.605 330 464 768 × 2 = 1 + 0.210 660 929 536;
  • 32) 0.210 660 929 536 × 2 = 0 + 0.421 321 859 072;
  • 33) 0.421 321 859 072 × 2 = 0 + 0.842 643 718 144;
  • 34) 0.842 643 718 144 × 2 = 1 + 0.685 287 436 288;
  • 35) 0.685 287 436 288 × 2 = 1 + 0.370 574 872 576;
  • 36) 0.370 574 872 576 × 2 = 0 + 0.741 149 745 152;
  • 37) 0.741 149 745 152 × 2 = 1 + 0.482 299 490 304;
  • 38) 0.482 299 490 304 × 2 = 0 + 0.964 598 980 608;
  • 39) 0.964 598 980 608 × 2 = 1 + 0.929 197 961 216;
  • 40) 0.929 197 961 216 × 2 = 1 + 0.858 395 922 432;
  • 41) 0.858 395 922 432 × 2 = 1 + 0.716 791 844 864;
  • 42) 0.716 791 844 864 × 2 = 1 + 0.433 583 689 728;
  • 43) 0.433 583 689 728 × 2 = 0 + 0.867 167 379 456;
  • 44) 0.867 167 379 456 × 2 = 1 + 0.734 334 758 912;
  • 45) 0.734 334 758 912 × 2 = 1 + 0.468 669 517 824;
  • 46) 0.468 669 517 824 × 2 = 0 + 0.937 339 035 648;
  • 47) 0.937 339 035 648 × 2 = 1 + 0.874 678 071 296;
  • 48) 0.874 678 071 296 × 2 = 1 + 0.749 356 142 592;
  • 49) 0.749 356 142 592 × 2 = 1 + 0.498 712 285 184;
  • 50) 0.498 712 285 184 × 2 = 0 + 0.997 424 570 368;
  • 51) 0.997 424 570 368 × 2 = 1 + 0.994 849 140 736;
  • 52) 0.994 849 140 736 × 2 = 1 + 0.989 698 281 472;
  • 53) 0.989 698 281 472 × 2 = 1 + 0.979 396 562 944;
  • 54) 0.979 396 562 944 × 2 = 1 + 0.958 793 125 888;
  • 55) 0.958 793 125 888 × 2 = 1 + 0.917 586 251 776;
  • 56) 0.917 586 251 776 × 2 = 1 + 0.835 172 503 552;
  • 57) 0.835 172 503 552 × 2 = 1 + 0.670 345 007 104;
  • 58) 0.670 345 007 104 × 2 = 1 + 0.340 690 014 208;
  • 59) 0.340 690 014 208 × 2 = 0 + 0.681 380 028 416;
  • 60) 0.681 380 028 416 × 2 = 1 + 0.362 760 056 832;
  • 61) 0.362 760 056 832 × 2 = 0 + 0.725 520 113 664;

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...)


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.002 204 718 632(10) =


0.0000 0000 1001 0000 0111 1101 0000 1010 0110 1011 1101 1011 1011 1111 1101 0(2)


5. Positive number before normalization:

0.002 204 718 632(10) =


0.0000 0000 1001 0000 0111 1101 0000 1010 0110 1011 1101 1011 1011 1111 1101 0(2)

6. Normalize the binary representation of the number.

Shift the decimal mark 9 positions to the right, so that only one non zero digit remains to the left of it:


0.002 204 718 632(10) =


0.0000 0000 1001 0000 0111 1101 0000 1010 0110 1011 1101 1011 1011 1111 1101 0(2) =


0.0000 0000 1001 0000 0111 1101 0000 1010 0110 1011 1101 1011 1011 1111 1101 0(2) × 20 =


1.0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010(2) × 2-9


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): -9


Mantissa (not normalized):
1.0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010


8. Adjust the exponent.

Use the 11 bit excess/bias notation:


Exponent (adjusted) =


Exponent (unadjusted) + 2(11-1) - 1 =


-9 + 2(11-1) - 1 =


(-9 + 1 023)(10) =


1 014(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 014 ÷ 2 = 507 + 0;
  • 507 ÷ 2 = 253 + 1;
  • 253 ÷ 2 = 126 + 1;
  • 126 ÷ 2 = 63 + 0;
  • 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) =


1014(10) =


011 1111 0110(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. 0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010 =


0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010


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 0110


Mantissa (52 bits) =
0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010


The base ten decimal number 0.002 204 718 632 converted and written in 64 bit double precision IEEE 754 binary floating point representation:
0 - 011 1111 0110 - 0010 0000 1111 1010 0001 0100 1101 0111 1011 0111 0111 1111 1010

The latest decimal numbers converted from base ten to 64 bit double precision IEEE 754 floating point binary standard representation