17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117 Converted to 64 Bit Double Precision IEEE 754 Binary Floating Point Representation Standard
Convert decimal 17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117(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
17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117(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: 17.
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;
- 17 ÷ 2 = 8 + 1;
- 8 ÷ 2 = 4 + 0;
- 4 ÷ 2 = 2 + 0;
- 2 ÷ 2 = 1 + 0;
- 1 ÷ 2 = 0 + 1;
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.
17(10) =
1 0001(2)
3. Convert to binary (base 2) the fractional part: 0.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117.
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.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117 × 2 = 0 + 0.965 310 672 353 276 975 987 884 053 143 930 886 556 593 826 044 984 798 814 311 788 441 082 666 308 350 054 708 500 234;
- 2) 0.965 310 672 353 276 975 987 884 053 143 930 886 556 593 826 044 984 798 814 311 788 441 082 666 308 350 054 708 500 234 × 2 = 1 + 0.930 621 344 706 553 951 975 768 106 287 861 773 113 187 652 089 969 597 628 623 576 882 165 332 616 700 109 417 000 468;
- 3) 0.930 621 344 706 553 951 975 768 106 287 861 773 113 187 652 089 969 597 628 623 576 882 165 332 616 700 109 417 000 468 × 2 = 1 + 0.861 242 689 413 107 903 951 536 212 575 723 546 226 375 304 179 939 195 257 247 153 764 330 665 233 400 218 834 000 936;
- 4) 0.861 242 689 413 107 903 951 536 212 575 723 546 226 375 304 179 939 195 257 247 153 764 330 665 233 400 218 834 000 936 × 2 = 1 + 0.722 485 378 826 215 807 903 072 425 151 447 092 452 750 608 359 878 390 514 494 307 528 661 330 466 800 437 668 001 872;
- 5) 0.722 485 378 826 215 807 903 072 425 151 447 092 452 750 608 359 878 390 514 494 307 528 661 330 466 800 437 668 001 872 × 2 = 1 + 0.444 970 757 652 431 615 806 144 850 302 894 184 905 501 216 719 756 781 028 988 615 057 322 660 933 600 875 336 003 744;
- 6) 0.444 970 757 652 431 615 806 144 850 302 894 184 905 501 216 719 756 781 028 988 615 057 322 660 933 600 875 336 003 744 × 2 = 0 + 0.889 941 515 304 863 231 612 289 700 605 788 369 811 002 433 439 513 562 057 977 230 114 645 321 867 201 750 672 007 488;
- 7) 0.889 941 515 304 863 231 612 289 700 605 788 369 811 002 433 439 513 562 057 977 230 114 645 321 867 201 750 672 007 488 × 2 = 1 + 0.779 883 030 609 726 463 224 579 401 211 576 739 622 004 866 879 027 124 115 954 460 229 290 643 734 403 501 344 014 976;
- 8) 0.779 883 030 609 726 463 224 579 401 211 576 739 622 004 866 879 027 124 115 954 460 229 290 643 734 403 501 344 014 976 × 2 = 1 + 0.559 766 061 219 452 926 449 158 802 423 153 479 244 009 733 758 054 248 231 908 920 458 581 287 468 807 002 688 029 952;
- 9) 0.559 766 061 219 452 926 449 158 802 423 153 479 244 009 733 758 054 248 231 908 920 458 581 287 468 807 002 688 029 952 × 2 = 1 + 0.119 532 122 438 905 852 898 317 604 846 306 958 488 019 467 516 108 496 463 817 840 917 162 574 937 614 005 376 059 904;
- 10) 0.119 532 122 438 905 852 898 317 604 846 306 958 488 019 467 516 108 496 463 817 840 917 162 574 937 614 005 376 059 904 × 2 = 0 + 0.239 064 244 877 811 705 796 635 209 692 613 916 976 038 935 032 216 992 927 635 681 834 325 149 875 228 010 752 119 808;
- 11) 0.239 064 244 877 811 705 796 635 209 692 613 916 976 038 935 032 216 992 927 635 681 834 325 149 875 228 010 752 119 808 × 2 = 0 + 0.478 128 489 755 623 411 593 270 419 385 227 833 952 077 870 064 433 985 855 271 363 668 650 299 750 456 021 504 239 616;
- 12) 0.478 128 489 755 623 411 593 270 419 385 227 833 952 077 870 064 433 985 855 271 363 668 650 299 750 456 021 504 239 616 × 2 = 0 + 0.956 256 979 511 246 823 186 540 838 770 455 667 904 155 740 128 867 971 710 542 727 337 300 599 500 912 043 008 479 232;
- 13) 0.956 256 979 511 246 823 186 540 838 770 455 667 904 155 740 128 867 971 710 542 727 337 300 599 500 912 043 008 479 232 × 2 = 1 + 0.912 513 959 022 493 646 373 081 677 540 911 335 808 311 480 257 735 943 421 085 454 674 601 199 001 824 086 016 958 464;
- 14) 0.912 513 959 022 493 646 373 081 677 540 911 335 808 311 480 257 735 943 421 085 454 674 601 199 001 824 086 016 958 464 × 2 = 1 + 0.825 027 918 044 987 292 746 163 355 081 822 671 616 622 960 515 471 886 842 170 909 349 202 398 003 648 172 033 916 928;
- 15) 0.825 027 918 044 987 292 746 163 355 081 822 671 616 622 960 515 471 886 842 170 909 349 202 398 003 648 172 033 916 928 × 2 = 1 + 0.650 055 836 089 974 585 492 326 710 163 645 343 233 245 921 030 943 773 684 341 818 698 404 796 007 296 344 067 833 856;
- 16) 0.650 055 836 089 974 585 492 326 710 163 645 343 233 245 921 030 943 773 684 341 818 698 404 796 007 296 344 067 833 856 × 2 = 1 + 0.300 111 672 179 949 170 984 653 420 327 290 686 466 491 842 061 887 547 368 683 637 396 809 592 014 592 688 135 667 712;
- 17) 0.300 111 672 179 949 170 984 653 420 327 290 686 466 491 842 061 887 547 368 683 637 396 809 592 014 592 688 135 667 712 × 2 = 0 + 0.600 223 344 359 898 341 969 306 840 654 581 372 932 983 684 123 775 094 737 367 274 793 619 184 029 185 376 271 335 424;
- 18) 0.600 223 344 359 898 341 969 306 840 654 581 372 932 983 684 123 775 094 737 367 274 793 619 184 029 185 376 271 335 424 × 2 = 1 + 0.200 446 688 719 796 683 938 613 681 309 162 745 865 967 368 247 550 189 474 734 549 587 238 368 058 370 752 542 670 848;
- 19) 0.200 446 688 719 796 683 938 613 681 309 162 745 865 967 368 247 550 189 474 734 549 587 238 368 058 370 752 542 670 848 × 2 = 0 + 0.400 893 377 439 593 367 877 227 362 618 325 491 731 934 736 495 100 378 949 469 099 174 476 736 116 741 505 085 341 696;
- 20) 0.400 893 377 439 593 367 877 227 362 618 325 491 731 934 736 495 100 378 949 469 099 174 476 736 116 741 505 085 341 696 × 2 = 0 + 0.801 786 754 879 186 735 754 454 725 236 650 983 463 869 472 990 200 757 898 938 198 348 953 472 233 483 010 170 683 392;
- 21) 0.801 786 754 879 186 735 754 454 725 236 650 983 463 869 472 990 200 757 898 938 198 348 953 472 233 483 010 170 683 392 × 2 = 1 + 0.603 573 509 758 373 471 508 909 450 473 301 966 927 738 945 980 401 515 797 876 396 697 906 944 466 966 020 341 366 784;
- 22) 0.603 573 509 758 373 471 508 909 450 473 301 966 927 738 945 980 401 515 797 876 396 697 906 944 466 966 020 341 366 784 × 2 = 1 + 0.207 147 019 516 746 943 017 818 900 946 603 933 855 477 891 960 803 031 595 752 793 395 813 888 933 932 040 682 733 568;
- 23) 0.207 147 019 516 746 943 017 818 900 946 603 933 855 477 891 960 803 031 595 752 793 395 813 888 933 932 040 682 733 568 × 2 = 0 + 0.414 294 039 033 493 886 035 637 801 893 207 867 710 955 783 921 606 063 191 505 586 791 627 777 867 864 081 365 467 136;
- 24) 0.414 294 039 033 493 886 035 637 801 893 207 867 710 955 783 921 606 063 191 505 586 791 627 777 867 864 081 365 467 136 × 2 = 0 + 0.828 588 078 066 987 772 071 275 603 786 415 735 421 911 567 843 212 126 383 011 173 583 255 555 735 728 162 730 934 272;
- 25) 0.828 588 078 066 987 772 071 275 603 786 415 735 421 911 567 843 212 126 383 011 173 583 255 555 735 728 162 730 934 272 × 2 = 1 + 0.657 176 156 133 975 544 142 551 207 572 831 470 843 823 135 686 424 252 766 022 347 166 511 111 471 456 325 461 868 544;
- 26) 0.657 176 156 133 975 544 142 551 207 572 831 470 843 823 135 686 424 252 766 022 347 166 511 111 471 456 325 461 868 544 × 2 = 1 + 0.314 352 312 267 951 088 285 102 415 145 662 941 687 646 271 372 848 505 532 044 694 333 022 222 942 912 650 923 737 088;
- 27) 0.314 352 312 267 951 088 285 102 415 145 662 941 687 646 271 372 848 505 532 044 694 333 022 222 942 912 650 923 737 088 × 2 = 0 + 0.628 704 624 535 902 176 570 204 830 291 325 883 375 292 542 745 697 011 064 089 388 666 044 445 885 825 301 847 474 176;
- 28) 0.628 704 624 535 902 176 570 204 830 291 325 883 375 292 542 745 697 011 064 089 388 666 044 445 885 825 301 847 474 176 × 2 = 1 + 0.257 409 249 071 804 353 140 409 660 582 651 766 750 585 085 491 394 022 128 178 777 332 088 891 771 650 603 694 948 352;
- 29) 0.257 409 249 071 804 353 140 409 660 582 651 766 750 585 085 491 394 022 128 178 777 332 088 891 771 650 603 694 948 352 × 2 = 0 + 0.514 818 498 143 608 706 280 819 321 165 303 533 501 170 170 982 788 044 256 357 554 664 177 783 543 301 207 389 896 704;
- 30) 0.514 818 498 143 608 706 280 819 321 165 303 533 501 170 170 982 788 044 256 357 554 664 177 783 543 301 207 389 896 704 × 2 = 1 + 0.029 636 996 287 217 412 561 638 642 330 607 067 002 340 341 965 576 088 512 715 109 328 355 567 086 602 414 779 793 408;
- 31) 0.029 636 996 287 217 412 561 638 642 330 607 067 002 340 341 965 576 088 512 715 109 328 355 567 086 602 414 779 793 408 × 2 = 0 + 0.059 273 992 574 434 825 123 277 284 661 214 134 004 680 683 931 152 177 025 430 218 656 711 134 173 204 829 559 586 816;
- 32) 0.059 273 992 574 434 825 123 277 284 661 214 134 004 680 683 931 152 177 025 430 218 656 711 134 173 204 829 559 586 816 × 2 = 0 + 0.118 547 985 148 869 650 246 554 569 322 428 268 009 361 367 862 304 354 050 860 437 313 422 268 346 409 659 119 173 632;
- 33) 0.118 547 985 148 869 650 246 554 569 322 428 268 009 361 367 862 304 354 050 860 437 313 422 268 346 409 659 119 173 632 × 2 = 0 + 0.237 095 970 297 739 300 493 109 138 644 856 536 018 722 735 724 608 708 101 720 874 626 844 536 692 819 318 238 347 264;
- 34) 0.237 095 970 297 739 300 493 109 138 644 856 536 018 722 735 724 608 708 101 720 874 626 844 536 692 819 318 238 347 264 × 2 = 0 + 0.474 191 940 595 478 600 986 218 277 289 713 072 037 445 471 449 217 416 203 441 749 253 689 073 385 638 636 476 694 528;
- 35) 0.474 191 940 595 478 600 986 218 277 289 713 072 037 445 471 449 217 416 203 441 749 253 689 073 385 638 636 476 694 528 × 2 = 0 + 0.948 383 881 190 957 201 972 436 554 579 426 144 074 890 942 898 434 832 406 883 498 507 378 146 771 277 272 953 389 056;
- 36) 0.948 383 881 190 957 201 972 436 554 579 426 144 074 890 942 898 434 832 406 883 498 507 378 146 771 277 272 953 389 056 × 2 = 1 + 0.896 767 762 381 914 403 944 873 109 158 852 288 149 781 885 796 869 664 813 766 997 014 756 293 542 554 545 906 778 112;
- 37) 0.896 767 762 381 914 403 944 873 109 158 852 288 149 781 885 796 869 664 813 766 997 014 756 293 542 554 545 906 778 112 × 2 = 1 + 0.793 535 524 763 828 807 889 746 218 317 704 576 299 563 771 593 739 329 627 533 994 029 512 587 085 109 091 813 556 224;
- 38) 0.793 535 524 763 828 807 889 746 218 317 704 576 299 563 771 593 739 329 627 533 994 029 512 587 085 109 091 813 556 224 × 2 = 1 + 0.587 071 049 527 657 615 779 492 436 635 409 152 599 127 543 187 478 659 255 067 988 059 025 174 170 218 183 627 112 448;
- 39) 0.587 071 049 527 657 615 779 492 436 635 409 152 599 127 543 187 478 659 255 067 988 059 025 174 170 218 183 627 112 448 × 2 = 1 + 0.174 142 099 055 315 231 558 984 873 270 818 305 198 255 086 374 957 318 510 135 976 118 050 348 340 436 367 254 224 896;
- 40) 0.174 142 099 055 315 231 558 984 873 270 818 305 198 255 086 374 957 318 510 135 976 118 050 348 340 436 367 254 224 896 × 2 = 0 + 0.348 284 198 110 630 463 117 969 746 541 636 610 396 510 172 749 914 637 020 271 952 236 100 696 680 872 734 508 449 792;
- 41) 0.348 284 198 110 630 463 117 969 746 541 636 610 396 510 172 749 914 637 020 271 952 236 100 696 680 872 734 508 449 792 × 2 = 0 + 0.696 568 396 221 260 926 235 939 493 083 273 220 793 020 345 499 829 274 040 543 904 472 201 393 361 745 469 016 899 584;
- 42) 0.696 568 396 221 260 926 235 939 493 083 273 220 793 020 345 499 829 274 040 543 904 472 201 393 361 745 469 016 899 584 × 2 = 1 + 0.393 136 792 442 521 852 471 878 986 166 546 441 586 040 690 999 658 548 081 087 808 944 402 786 723 490 938 033 799 168;
- 43) 0.393 136 792 442 521 852 471 878 986 166 546 441 586 040 690 999 658 548 081 087 808 944 402 786 723 490 938 033 799 168 × 2 = 0 + 0.786 273 584 885 043 704 943 757 972 333 092 883 172 081 381 999 317 096 162 175 617 888 805 573 446 981 876 067 598 336;
- 44) 0.786 273 584 885 043 704 943 757 972 333 092 883 172 081 381 999 317 096 162 175 617 888 805 573 446 981 876 067 598 336 × 2 = 1 + 0.572 547 169 770 087 409 887 515 944 666 185 766 344 162 763 998 634 192 324 351 235 777 611 146 893 963 752 135 196 672;
- 45) 0.572 547 169 770 087 409 887 515 944 666 185 766 344 162 763 998 634 192 324 351 235 777 611 146 893 963 752 135 196 672 × 2 = 1 + 0.145 094 339 540 174 819 775 031 889 332 371 532 688 325 527 997 268 384 648 702 471 555 222 293 787 927 504 270 393 344;
- 46) 0.145 094 339 540 174 819 775 031 889 332 371 532 688 325 527 997 268 384 648 702 471 555 222 293 787 927 504 270 393 344 × 2 = 0 + 0.290 188 679 080 349 639 550 063 778 664 743 065 376 651 055 994 536 769 297 404 943 110 444 587 575 855 008 540 786 688;
- 47) 0.290 188 679 080 349 639 550 063 778 664 743 065 376 651 055 994 536 769 297 404 943 110 444 587 575 855 008 540 786 688 × 2 = 0 + 0.580 377 358 160 699 279 100 127 557 329 486 130 753 302 111 989 073 538 594 809 886 220 889 175 151 710 017 081 573 376;
- 48) 0.580 377 358 160 699 279 100 127 557 329 486 130 753 302 111 989 073 538 594 809 886 220 889 175 151 710 017 081 573 376 × 2 = 1 + 0.160 754 716 321 398 558 200 255 114 658 972 261 506 604 223 978 147 077 189 619 772 441 778 350 303 420 034 163 146 752;
- 49) 0.160 754 716 321 398 558 200 255 114 658 972 261 506 604 223 978 147 077 189 619 772 441 778 350 303 420 034 163 146 752 × 2 = 0 + 0.321 509 432 642 797 116 400 510 229 317 944 523 013 208 447 956 294 154 379 239 544 883 556 700 606 840 068 326 293 504;
- 50) 0.321 509 432 642 797 116 400 510 229 317 944 523 013 208 447 956 294 154 379 239 544 883 556 700 606 840 068 326 293 504 × 2 = 0 + 0.643 018 865 285 594 232 801 020 458 635 889 046 026 416 895 912 588 308 758 479 089 767 113 401 213 680 136 652 587 008;
- 51) 0.643 018 865 285 594 232 801 020 458 635 889 046 026 416 895 912 588 308 758 479 089 767 113 401 213 680 136 652 587 008 × 2 = 1 + 0.286 037 730 571 188 465 602 040 917 271 778 092 052 833 791 825 176 617 516 958 179 534 226 802 427 360 273 305 174 016;
- 52) 0.286 037 730 571 188 465 602 040 917 271 778 092 052 833 791 825 176 617 516 958 179 534 226 802 427 360 273 305 174 016 × 2 = 0 + 0.572 075 461 142 376 931 204 081 834 543 556 184 105 667 583 650 353 235 033 916 359 068 453 604 854 720 546 610 348 032;
- 53) 0.572 075 461 142 376 931 204 081 834 543 556 184 105 667 583 650 353 235 033 916 359 068 453 604 854 720 546 610 348 032 × 2 = 1 + 0.144 150 922 284 753 862 408 163 669 087 112 368 211 335 167 300 706 470 067 832 718 136 907 209 709 441 093 220 696 064;
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.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117(10) =
0.0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2)
5. Positive number before normalization:
17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117(10) =
1 0001.0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2)
6. Normalize the binary representation of the number.
Shift the decimal mark 4 positions to the left, so that only one non zero digit remains to the left of it:
17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117(10) =
1 0001.0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2) =
1 0001.0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2) × 20 =
1.0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2) × 24
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): 4
Mantissa (not normalized):
1.0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1
8. Adjust the exponent.
Use the 11 bit excess/bias notation:
Exponent (adjusted) =
Exponent (unadjusted) + 2(11-1) - 1 =
4 + 2(11-1) - 1 =
(4 + 1 023)(10) =
1 027(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 027 ÷ 2 = 513 + 1;
- 513 ÷ 2 = 256 + 1;
- 256 ÷ 2 = 128 + 0;
- 128 ÷ 2 = 64 + 0;
- 64 ÷ 2 = 32 + 0;
- 32 ÷ 2 = 16 + 0;
- 16 ÷ 2 = 8 + 0;
- 8 ÷ 2 = 4 + 0;
- 4 ÷ 2 = 2 + 0;
- 2 ÷ 2 = 1 + 0;
- 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) =
1027(10) =
100 0000 0011(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, by removing the excess bits, from the right (if any of the excess bits is set on 1, we are losing precision...).
Mantissa (normalized) =
1. 0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0 0101 =
0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001
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) =
100 0000 0011
Mantissa (52 bits) =
0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001
Decimal number 17.482 655 336 176 638 487 993 942 026 571 965 443 278 296 913 022 492 399 407 155 894 220 541 333 154 175 027 354 250 117 converted to 64 bit double precision IEEE 754 binary floating point representation:
0 - 100 0000 0011 - 0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001