64 bit double precision IEEE 754 binary floating point number 0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000 converted to decimal base ten (double)

How to convert 64 bit double precision IEEE 754 binary floating point:
0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000
to decimal system (base ten)

1. Identify the elements that make up the binary representation of the number:

First bit (the leftmost) indicates the sign,
1 = negative, 0 = positive.


The next 11 bits contain the exponent:
100 0000 0111


The last 52 bits contain the mantissa:
0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000

2. Convert the exponent from binary (base 2) to decimal (base 10):

The exponent is allways a positive integer.

100 0000 0111(2) =


1 × 210 + 0 × 29 + 0 × 28 + 0 × 27 + 0 × 26 + 0 × 25 + 0 × 24 + 0 × 23 + 1 × 22 + 1 × 21 + 1 × 20 =


1,024 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 4 + 2 + 1 =


1,024 + 4 + 2 + 1 =


1,031(10)

3. Adjust the exponent.

Subtract the excess bits: 2(11 - 1) - 1 = 1023, that is due to the 11 bit excess/bias notation:

Exponent adjusted = 1,031 - 1023 = 8


4. Convert the mantissa from binary (base 2) to decimal (base 10):

Mantissa represents the number's fractional part (the excess beyond the number's integer part, comma delimited)

0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000(2) =

0 × 2-1 + 1 × 2-2 + 1 × 2-3 + 0 × 2-4 + 0 × 2-5 + 0 × 2-6 + 0 × 2-7 + 0 × 2-8 + 0 × 2-9 + 1 × 2-10 + 1 × 2-11 + 0 × 2-12 + 1 × 2-13 + 1 × 2-14 + 1 × 2-15 + 0 × 2-16 + 1 × 2-17 + 0 × 2-18 + 1 × 2-19 + 0 × 2-20 + 0 × 2-21 + 1 × 2-22 + 0 × 2-23 + 0 × 2-24 + 0 × 2-25 + 0 × 2-26 + 0 × 2-27 + 1 × 2-28 + 0 × 2-29 + 0 × 2-30 + 1 × 2-31 + 1 × 2-32 + 0 × 2-33 + 1 × 2-34 + 1 × 2-35 + 0 × 2-36 + 0 × 2-37 + 0 × 2-38 + 1 × 2-39 + 0 × 2-40 + 0 × 2-41 + 1 × 2-42 + 1 × 2-43 + 1 × 2-44 + 0 × 2-45 + 0 × 2-46 + 0 × 2-47 + 0 × 2-48 + 0 × 2-49 + 0 × 2-50 + 0 × 2-51 + 0 × 2-52 =


0 + 0.25 + 0.125 + 0 + 0 + 0 + 0 + 0 + 0 + 0.000 976 562 5 + 0.000 488 281 25 + 0 + 0.000 122 070 312 5 + 0.000 061 035 156 25 + 0.000 030 517 578 125 + 0 + 0.000 007 629 394 531 25 + 0 + 0.000 001 907 348 632 812 5 + 0 + 0 + 0.000 000 238 418 579 101 562 5 + 0 + 0 + 0 + 0 + 0 + 0.000 000 003 725 290 298 461 914 062 5 + 0 + 0 + 0.000 000 000 465 661 287 307 739 257 812 5 + 0.000 000 000 232 830 643 653 869 628 906 25 + 0 + 0.000 000 000 058 207 660 913 467 407 226 562 5 + 0.000 000 000 029 103 830 456 733 703 613 281 25 + 0 + 0 + 0 + 0.000 000 000 001 818 989 403 545 856 475 830 078 125 + 0 + 0 + 0.000 000 000 000 227 373 675 443 232 059 478 759 765 625 + 0.000 000 000 000 113 686 837 721 616 029 739 379 882 812 5 + 0.000 000 000 000 056 843 418 860 808 014 869 689 941 406 25 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 =


0.25 + 0.125 + 0.000 976 562 5 + 0.000 488 281 25 + 0.000 122 070 312 5 + 0.000 061 035 156 25 + 0.000 030 517 578 125 + 0.000 007 629 394 531 25 + 0.000 001 907 348 632 812 5 + 0.000 000 238 418 579 101 562 5 + 0.000 000 003 725 290 298 461 914 062 5 + 0.000 000 000 465 661 287 307 739 257 812 5 + 0.000 000 000 232 830 643 653 869 628 906 25 + 0.000 000 000 058 207 660 913 467 407 226 562 5 + 0.000 000 000 029 103 830 456 733 703 613 281 25 + 0.000 000 000 001 818 989 403 545 856 475 830 078 125 + 0.000 000 000 000 227 373 675 443 232 059 478 759 765 625 + 0.000 000 000 000 113 686 837 721 616 029 739 379 882 812 5 + 0.000 000 000 000 056 843 418 860 808 014 869 689 941 406 25 =


0.376 688 246 471 928 778 191 795 572 638 511 657 714 843 75(10)

5. Put all the numbers into expression to calculate the double precision floating point decimal value:

(-1)Sign × (1 + Mantissa) × 2(Exponent adjusted) =


(-1)0 × (1 + 0.376 688 246 471 928 778 191 795 572 638 511 657 714 843 75) × 28 =


1.376 688 246 471 928 778 191 795 572 638 511 657 714 843 75 × 28 =


352.432 191 096 813 767 217 099 666 595 458 984 375

Conclusion:

0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000
converted from
64 bit double precision IEEE 754 binary floating point
to
base ten decimal system (double) =

352.432 191 096 813 767 217 099 666 595 458 984 375(10)

More operations of this kind:

0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0110 1111 1111 = ?

0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0001 = ?


Convert 64 bit double precision IEEE 754 floating point standard binary numbers to base ten decimal system (double)

64 bit double precision IEEE 754 binary floating point standard representation of numbers requires three building blocks: sign (it takes 1 bit and it's either 0 for positive or 1 for negative numbers), exponent (11 bits), mantissa (52 bits)

Latest 64 bit double precision IEEE 754 floating point binary standard numbers converted to decimal base ten (double)

0 - 100 0000 0111 - 0110 0000 0110 1110 1010 0100 0001 0011 0110 0010 0111 0000 0000 = 352.432 191 096 813 767 217 099 666 595 458 984 375 Nov 25 20:33 UTC (GMT)
1 - 100 0000 0101 - 1111 1101 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = -127.25 Nov 25 20:32 UTC (GMT)
0 - 011 1100 0011 - 0010 0111 0010 0101 1101 1101 0001 1101 0010 0100 0011 1010 1100 = 0.000 000 000 000 000 001 000 000 000 000 000 071 542 424 054 621 924 508 528 056 184 923 247 726 170 636 440 201 633 377 000 689 506 530 761 718 75 Nov 25 20:32 UTC (GMT)
0 - 100 0000 0000 - 0101 1110 0101 0110 0000 0100 0001 1000 1001 0011 0111 0100 1000 = 2.736 999 999 999 998 323 119 143 606 163 561 344 146 728 515 625 Nov 25 20:31 UTC (GMT)
1 - 100 0110 0101 - 1100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = -8 873 554 201 597 605 810 476 922 437 632 Nov 25 20:30 UTC (GMT)
0 - 100 0011 0010 - 0110 0001 1000 0001 1010 0001 0100 0001 0110 0001 1000 0001 1010 = 3 109 474 886 421 517 Nov 25 20:30 UTC (GMT)
1 - 100 0000 0011 - 1011 1001 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = -27.566 406 25 Nov 25 20:28 UTC (GMT)
1 - 011 1010 1110 - 1100 0111 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = -0.000 000 000 000 000 000 000 000 735 092 145 921 147 640 754 865 146 273 111 520 258 680 684 491 991 996 765 136 718 75 Nov 25 20:24 UTC (GMT)
0 - 100 0000 0101 - 0010 1010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = 74.5 Nov 25 20:24 UTC (GMT)
0 - 011 1111 1110 - 0101 0110 0000 0100 0001 1000 1001 0011 0111 0100 1000 0000 0000 = 0.667 999 999 999 892 679 625 190 794 467 926 025 390 625 Nov 25 20:24 UTC (GMT)
0 - 011 1111 1110 - 1001 1001 1001 1001 1001 1001 1001 1001 1001 1001 1001 1001 1001 = 0.799 999 999 999 999 933 386 618 522 490 607 574 582 099 914 550 781 25 Nov 25 20:23 UTC (GMT)
0 - 100 0000 0100 - 0000 0111 0010 0011 1001 0010 0111 1000 1110 0001 1110 1100 0110 = 32.892 369 217 295 296 834 890 905 302 017 927 169 799 804 687 5 Nov 25 20:22 UTC (GMT)
0 - 011 1111 1110 - 0011 0011 0011 0011 0011 0011 0011 0011 0011 0011 0011 0011 0010 = 0.599 999 999 999 999 866 773 237 044 981 215 149 164 199 829 101 562 5 Nov 25 20:21 UTC (GMT)
All base ten decimal numbers converted to 64 bit double precision IEEE 754 binary floating point

How to convert numbers from 64 bit double precision IEEE 754 binary floating point standard to decimal system in base 10

Follow the steps below to convert a number from 64 bit double precision IEEE 754 binary floating point representation to base 10 decimal system:

  • 1. Identify the elements that make up the binary representation of the number:
    First bit (leftmost) indicates the sign, 1 = negative, 0 = pozitive.
    The next 11 bits contain the exponent.
    The last 52 bits contain the mantissa.
  • 2. Convert the exponent, that is allways a positive integer, from binary (base 2) to decimal (base 10).
  • 3. Adjust the exponent, subtract the excess bits, 2(11 - 1) - 1 = 1,023, that is due to the 11 bit excess/bias notation.
  • 4. Convert the mantissa, that represents the number's fractional part (the excess beyond the number's integer part, comma delimited), from binary (base 2) to decimal (base 10).
  • 5. Put all the numbers into expression to calculate the double precision floating point decimal value:
    (-1)Sign × (1 + Mantissa) × 2(Exponent adjusted)

Example: convert the number 1 - 100 0011 1101 - 1000 0000 0010 0001 0100 0000 0100 1110 0000 0100 0000 1010 1000 from 64 bit double precision IEEE 754 binary floating point system to base ten decimal (double):

  • 1. Identify the elements that make up the binary representation of the number:
    First bit (leftmost) indicates the sign, 1 = negative, 0 = pozitive.
    The next 11 bits contain the exponent: 100 0011 1101
    The last 52 bits contain the mantissa:
    1000 0000 0010 0001 0100 0000 0100 1110 0000 0100 0000 1010 1000
  • 2. Convert the exponent, that is allways a positive integer, from binary (base 2) to decimal (base 10):
    100 0011 1101(2) =
    1 × 210 + 0 × 29 + 0 × 28 + 0 × 27 + 0 × 26 + 1 × 25 + 1 × 24 + 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 =
    1,024 + 0 + 0 + 0 + 0 + 32 + 16 + 8 + 4 + 0 + 1 =
    1,024 + 32 + 16 + 8 + 4 + 1 =
    1,085(10)
  • 3. Adjust the exponent, subtract the excess bits, 2(11 - 1) - 1 = 1,023, that is due to the 11 bit excess/bias notation:
    Exponent adjusted = 1,085 - 1,023 = 62
  • 4. Convert the mantissa, that represents the number's fractional part (the excess beyond the number's integer part, comma delimited), from binary (base 2) to decimal (base 10):
    1000 0000 0010 0001 0100 0000 0100 1110 0000 0100 0000 1010 1000(2) =
    1 × 2-1 + 0 × 2-2 + 0 × 2-3 + 0 × 2-4 + 0 × 2-5 + 0 × 2-6 + 0 × 2-7 + 0 × 2-8 + 0 × 2-9 + 0 × 2-10 + 1 × 2-11 + 0 × 2-12 + 0 × 2-13 + 0 × 2-14 + 0 × 2-15 + 1 × 2-16 + 0 × 2-17 + 1 × 2-18 + 0 × 2-19 + 0 × 2-20 + 0 × 2-21 + 0 × 2-22 + 0 × 2-23 + 0 × 2-24 + 0 × 2-25 + 1 × 2-26 + 0 × 2-27 + 0 × 2-28 + 1 × 2-29 + 1 × 2-30 + 1 × 2-31 + 0 × 2-32 + 0 × 2-33 + 0 × 2-34 + 0 × 2-35 + 0 × 2-36 + 0 × 2-37 + 1 × 2-38 + 0 × 2-39 + 0 × 2-40 + 0 × 2-41 + 0 × 2-42 + 0 × 2-43 + 0 × 2-44 + 1 × 2-45 + 0 × 2-46 + 1 × 2-47 + 0 × 2-48 + 1 × 2-49 + 0 × 2-50 + 0 × 2-51 + 0 × 2-52 =
    0.5 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0.000 488 281 25 + 0 + 0 + 0 + 0 + 0.000 015 258 789 062 5 + 0 + 0.000 003 814 697 265 625 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0.000 000 014 901 161 193 847 656 25 + 0 + 0 + 0.000 000 001 862 645 149 230 957 031 25 + 0.000 000 000 931 322 574 615 478 515 625 + 0.000 000 000 465 661 287 307 739 257 812 5 + 0 + 0 + 0 + 0 + 0 + 0 + 0.000 000 000 003 637 978 807 091 712 951 660 156 25 + 0 + 0 + 0 + 0 + 0 + 0 + 0.000 000 000 000 028 421 709 430 404 007 434 844 970 703 125 + 0 + 0.000 000 000 000 007 105 427 357 601 001 858 711 242 675 781 25 + 0 + 0.000 000 000 000 001 776 356 839 400 250 464 677 810 668 945 312 5 + 0 + 0 + 0 =
    0.5 + 0.000 488 281 25 + 0.000 015 258 789 062 5 + 0.000 003 814 697 265 625 + 0.000 000 014 901 161 193 847 656 25 + 0.000 000 001 862 645 149 230 957 031 25 + 0.000 000 000 931 322 574 615 478 515 625 + 0.000 000 000 465 661 287 307 739 257 812 5 + 0.000 000 000 003 637 978 807 091 712 951 660 156 25 + 0.000 000 000 000 028 421 709 430 404 007 434 844 970 703 125 + 0.000 000 000 000 007 105 427 357 601 001 858 711 242 675 781 25 + 0.000 000 000 000 001 776 356 839 400 250 464 677 810 668 945 312 5 =
    0.500 507 372 900 793 612 302 550 172 898 918 390 274 047 851 562 5(10)
  • 5. Put all the numbers into expression to calculate the double precision floating point decimal value:
    (-1)Sign × (1 + Mantissa) × 2(Exponent adjusted) =
    (-1)1 × (1 + 0.500 507 372 900 793 612 302 550 172 898 918 390 274 047 851 562 5) × 262 =
    -1.500 507 372 900 793 612 302 550 172 898 918 390 274 047 851 562 5 × 262 =
    -6 919 868 872 153 800 704(10)
  • 1 - 100 0011 1101 - 1000 0000 0010 0001 0100 0000 0100 1110 0000 0100 0000 1010 1000 converted from 64 bit double precision IEEE 754 binary floating point representation to a decimal number (float) in decimal system (in base 10) = -6 919 868 872 153 800 704(10)