64bit IEEE 754: Decimal ↗ Double Precision Floating Point Binary: 0.000 000 127 7 Convert the Number to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard, From a Base Ten Decimal System Number

Number 0.000 000 127 7(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.000 000 127 7.

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.000 000 127 7 × 2 = 0 + 0.000 000 255 4;
  • 2) 0.000 000 255 4 × 2 = 0 + 0.000 000 510 8;
  • 3) 0.000 000 510 8 × 2 = 0 + 0.000 001 021 6;
  • 4) 0.000 001 021 6 × 2 = 0 + 0.000 002 043 2;
  • 5) 0.000 002 043 2 × 2 = 0 + 0.000 004 086 4;
  • 6) 0.000 004 086 4 × 2 = 0 + 0.000 008 172 8;
  • 7) 0.000 008 172 8 × 2 = 0 + 0.000 016 345 6;
  • 8) 0.000 016 345 6 × 2 = 0 + 0.000 032 691 2;
  • 9) 0.000 032 691 2 × 2 = 0 + 0.000 065 382 4;
  • 10) 0.000 065 382 4 × 2 = 0 + 0.000 130 764 8;
  • 11) 0.000 130 764 8 × 2 = 0 + 0.000 261 529 6;
  • 12) 0.000 261 529 6 × 2 = 0 + 0.000 523 059 2;
  • 13) 0.000 523 059 2 × 2 = 0 + 0.001 046 118 4;
  • 14) 0.001 046 118 4 × 2 = 0 + 0.002 092 236 8;
  • 15) 0.002 092 236 8 × 2 = 0 + 0.004 184 473 6;
  • 16) 0.004 184 473 6 × 2 = 0 + 0.008 368 947 2;
  • 17) 0.008 368 947 2 × 2 = 0 + 0.016 737 894 4;
  • 18) 0.016 737 894 4 × 2 = 0 + 0.033 475 788 8;
  • 19) 0.033 475 788 8 × 2 = 0 + 0.066 951 577 6;
  • 20) 0.066 951 577 6 × 2 = 0 + 0.133 903 155 2;
  • 21) 0.133 903 155 2 × 2 = 0 + 0.267 806 310 4;
  • 22) 0.267 806 310 4 × 2 = 0 + 0.535 612 620 8;
  • 23) 0.535 612 620 8 × 2 = 1 + 0.071 225 241 6;
  • 24) 0.071 225 241 6 × 2 = 0 + 0.142 450 483 2;
  • 25) 0.142 450 483 2 × 2 = 0 + 0.284 900 966 4;
  • 26) 0.284 900 966 4 × 2 = 0 + 0.569 801 932 8;
  • 27) 0.569 801 932 8 × 2 = 1 + 0.139 603 865 6;
  • 28) 0.139 603 865 6 × 2 = 0 + 0.279 207 731 2;
  • 29) 0.279 207 731 2 × 2 = 0 + 0.558 415 462 4;
  • 30) 0.558 415 462 4 × 2 = 1 + 0.116 830 924 8;
  • 31) 0.116 830 924 8 × 2 = 0 + 0.233 661 849 6;
  • 32) 0.233 661 849 6 × 2 = 0 + 0.467 323 699 2;
  • 33) 0.467 323 699 2 × 2 = 0 + 0.934 647 398 4;
  • 34) 0.934 647 398 4 × 2 = 1 + 0.869 294 796 8;
  • 35) 0.869 294 796 8 × 2 = 1 + 0.738 589 593 6;
  • 36) 0.738 589 593 6 × 2 = 1 + 0.477 179 187 2;
  • 37) 0.477 179 187 2 × 2 = 0 + 0.954 358 374 4;
  • 38) 0.954 358 374 4 × 2 = 1 + 0.908 716 748 8;
  • 39) 0.908 716 748 8 × 2 = 1 + 0.817 433 497 6;
  • 40) 0.817 433 497 6 × 2 = 1 + 0.634 866 995 2;
  • 41) 0.634 866 995 2 × 2 = 1 + 0.269 733 990 4;
  • 42) 0.269 733 990 4 × 2 = 0 + 0.539 467 980 8;
  • 43) 0.539 467 980 8 × 2 = 1 + 0.078 935 961 6;
  • 44) 0.078 935 961 6 × 2 = 0 + 0.157 871 923 2;
  • 45) 0.157 871 923 2 × 2 = 0 + 0.315 743 846 4;
  • 46) 0.315 743 846 4 × 2 = 0 + 0.631 487 692 8;
  • 47) 0.631 487 692 8 × 2 = 1 + 0.262 975 385 6;
  • 48) 0.262 975 385 6 × 2 = 0 + 0.525 950 771 2;
  • 49) 0.525 950 771 2 × 2 = 1 + 0.051 901 542 4;
  • 50) 0.051 901 542 4 × 2 = 0 + 0.103 803 084 8;
  • 51) 0.103 803 084 8 × 2 = 0 + 0.207 606 169 6;
  • 52) 0.207 606 169 6 × 2 = 0 + 0.415 212 339 2;
  • 53) 0.415 212 339 2 × 2 = 0 + 0.830 424 678 4;
  • 54) 0.830 424 678 4 × 2 = 1 + 0.660 849 356 8;
  • 55) 0.660 849 356 8 × 2 = 1 + 0.321 698 713 6;
  • 56) 0.321 698 713 6 × 2 = 0 + 0.643 397 427 2;
  • 57) 0.643 397 427 2 × 2 = 1 + 0.286 794 854 4;
  • 58) 0.286 794 854 4 × 2 = 0 + 0.573 589 708 8;
  • 59) 0.573 589 708 8 × 2 = 1 + 0.147 179 417 6;
  • 60) 0.147 179 417 6 × 2 = 0 + 0.294 358 835 2;
  • 61) 0.294 358 835 2 × 2 = 0 + 0.588 717 670 4;
  • 62) 0.588 717 670 4 × 2 = 1 + 0.177 435 340 8;
  • 63) 0.177 435 340 8 × 2 = 0 + 0.354 870 681 6;
  • 64) 0.354 870 681 6 × 2 = 0 + 0.709 741 363 2;
  • 65) 0.709 741 363 2 × 2 = 1 + 0.419 482 726 4;
  • 66) 0.419 482 726 4 × 2 = 0 + 0.838 965 452 8;
  • 67) 0.838 965 452 8 × 2 = 1 + 0.677 930 905 6;
  • 68) 0.677 930 905 6 × 2 = 1 + 0.355 861 811 2;
  • 69) 0.355 861 811 2 × 2 = 0 + 0.711 723 622 4;
  • 70) 0.711 723 622 4 × 2 = 1 + 0.423 447 244 8;
  • 71) 0.423 447 244 8 × 2 = 0 + 0.846 894 489 6;
  • 72) 0.846 894 489 6 × 2 = 1 + 0.693 788 979 2;
  • 73) 0.693 788 979 2 × 2 = 1 + 0.387 577 958 4;
  • 74) 0.387 577 958 4 × 2 = 0 + 0.775 155 916 8;
  • 75) 0.775 155 916 8 × 2 = 1 + 0.550 311 833 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...)


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.000 000 127 7(10) =


0.0000 0000 0000 0000 0000 0010 0010 0100 0111 0111 1010 0010 1000 0110 1010 0100 1011 0101 101(2)


5. Positive number before normalization:

0.000 000 127 7(10) =


0.0000 0000 0000 0000 0000 0010 0010 0100 0111 0111 1010 0010 1000 0110 1010 0100 1011 0101 101(2)

6. Normalize the binary representation of the number.

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


0.000 000 127 7(10) =


0.0000 0000 0000 0000 0000 0010 0010 0100 0111 0111 1010 0010 1000 0110 1010 0100 1011 0101 101(2) =


0.0000 0000 0000 0000 0000 0010 0010 0100 0111 0111 1010 0010 1000 0110 1010 0100 1011 0101 101(2) × 20 =


1.0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101(2) × 2-23


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


Mantissa (not normalized):
1.0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101


8. Adjust the exponent.

Use the 11 bit excess/bias notation:


Exponent (adjusted) =


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


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


(-23 + 1 023)(10) =


1 000(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 000 ÷ 2 = 500 + 0;
  • 500 ÷ 2 = 250 + 0;
  • 250 ÷ 2 = 125 + 0;
  • 125 ÷ 2 = 62 + 1;
  • 62 ÷ 2 = 31 + 0;
  • 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) =


1000(10) =


011 1110 1000(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. 0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101 =


0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101


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 1110 1000


Mantissa (52 bits) =
0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101


The base ten decimal number 0.000 000 127 7 converted and written in 64 bit double precision IEEE 754 binary floating point representation:
0 - 011 1110 1000 - 0001 0010 0011 1011 1101 0001 0100 0011 0101 0010 0101 1010 1101

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

Number 0.000 000 127 7 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number 174 545 932 415 634 700 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 049 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number 23 227 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number 18 446 744 073 709 553 755 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number -160 207 093 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number 34 298 254 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
Number 235 004 converted from decimal system (written in base ten) to 64 bit double precision IEEE 754 binary floating point representation standard Mar 28 08:03 UTC (GMT)
All base ten decimal numbers converted to 64 bit double precision IEEE 754 binary floating point