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 121 scris ca binar pe 64 biți, precizie dublă, virgulă mobilă în standard IEEE 754
Scriere 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 121(10) din zecimal în binar pe 64 de biți, precizie dublă, în virgulă mobilă în standard IEEE 754 (1 bit pentru semn, 11 biți pentru exponent, 52 de biți pentru mantisă)
Care sunt pașii pentru a scrie numărul
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 121(10) din zecimal în binar în reprezentarea pe 64 biți, precizie dublă, în virgulă mobilă în standard IEEE 754 (1 bit pentru semn, 11 biți pentru exponent, 52 de biți pentru mantisă)
1. Întâi convertește în binar (în baza 2) partea întreagă: 17.
Împarte numărul în mod repetat la 2.
Notăm mai jos, în ordine, fiecare rest al împărțirilor.
Ne oprim când obținem un cât egal cu zero.
- împărțire = cât + rest;
- 17 : 2 = 8 + 1;
- 8 : 2 = 4 + 0;
- 4 : 2 = 2 + 0;
- 2 : 2 = 1 + 0;
- 1 : 2 = 0 + 1;
2. Construiește reprezentarea în baza 2 a părții întregi a numărului.
Ia fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus.
17(10) =
1 0001(2)
3. Convertește în binar (baza 2) partea fracționară: 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 121.
Înmulțește numărul în mod repetat cu 2.
Notăm mai jos fiecare parte întreagă a înmulțirilor.
Ne oprim când obținem o parte fracționară egală cu zero.
- #) înmulțire = întreg + fracționar;
- 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 121 × 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 242;
- 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 242 × 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 484;
- 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 484 × 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 968;
- 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 968 × 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 936;
- 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 936 × 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 872;
- 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 872 × 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 744;
- 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 744 × 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 015 488;
- 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 015 488 × 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 030 976;
- 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 030 976 × 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 061 952;
- 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 061 952 × 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 123 904;
- 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 123 904 × 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 247 808;
- 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 247 808 × 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 495 616;
- 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 495 616 × 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 991 232;
- 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 991 232 × 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 982 464;
- 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 982 464 × 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 964 928;
- 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 964 928 × 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 929 856;
- 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 929 856 × 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 859 712;
- 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 859 712 × 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 543 719 424;
- 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 543 719 424 × 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 087 438 848;
- 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 087 438 848 × 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 174 877 696;
- 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 174 877 696 × 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 349 755 392;
- 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 349 755 392 × 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 699 510 784;
- 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 699 510 784 × 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 399 021 568;
- 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 399 021 568 × 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 798 043 136;
- 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 798 043 136 × 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 596 086 272;
- 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 596 086 272 × 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 651 192 172 544;
- 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 651 192 172 544 × 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 302 384 345 088;
- 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 302 384 345 088 × 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 604 768 690 176;
- 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 604 768 690 176 × 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 209 537 380 352;
- 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 209 537 380 352 × 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 419 074 760 704;
- 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 419 074 760 704 × 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 838 149 521 408;
- 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 838 149 521 408 × 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 676 299 042 816;
- 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 676 299 042 816 × 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 352 598 085 632;
- 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 352 598 085 632 × 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 705 196 171 264;
- 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 705 196 171 264 × 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 410 392 342 528;
- 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 410 392 342 528 × 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 820 784 685 056;
- 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 820 784 685 056 × 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 641 569 370 112;
- 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 641 569 370 112 × 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 219 283 138 740 224;
- 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 219 283 138 740 224 × 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 438 566 277 480 448;
- 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 438 566 277 480 448 × 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 877 132 554 960 896;
- 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 877 132 554 960 896 × 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 754 265 109 921 792;
- 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 754 265 109 921 792 × 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 508 530 219 843 584;
- 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 508 530 219 843 584 × 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 447 017 060 439 687 168;
- 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 447 017 060 439 687 168 × 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 894 034 120 879 374 336;
- 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 894 034 120 879 374 336 × 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 788 068 241 758 748 672;
- 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 788 068 241 758 748 672 × 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 576 136 483 517 497 344;
- 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 576 136 483 517 497 344 × 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 152 272 967 034 994 688;
- 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 152 272 967 034 994 688 × 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 304 545 934 069 989 376;
- 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 304 545 934 069 989 376 × 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 609 091 868 139 978 752;
- 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 609 091 868 139 978 752 × 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 218 183 736 279 957 504;
- 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 218 183 736 279 957 504 × 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 436 367 472 559 915 008;
- 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 436 367 472 559 915 008 × 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 872 734 945 119 830 016;
- 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 872 734 945 119 830 016 × 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 745 469 890 239 660 032;
Nicio parte fracționară egală cu zero n-a fost obținută. Însă am efectuat un număr suficient de iterații (peste limita de Mantisă) și am obținut măcar o parte întreagă diferită de zero => STOP (Pierdem din precizie - numărul convertit pe care îl vom obține în final va fi doar o foarte bună aproximare a celui inițial).
4. Construiește reprezentarea în baza 2 a părții fracționare a numărului.
Ia fiecare parte întreagă a rezultatelor înmulțirilor, începând din partea de sus a listei construite:
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 121(10) =
0,0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2)
5. Numărul pozitiv înainte de normalizare:
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 121(10) =
1 0001,0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1(2)
6. Normalizează reprezentarea binară a numărului.
Mută virgula cu 4 poziții la stânga, astfel încât partea întreagă a acestuia să aibă un singur bit, diferit de 0:
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 121(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. Până la acest moment avem următoarele elemente ce vor alcătui numărul binar în reprezentare IEEE 754, precizie dublă (64 biți):
Semn 0 (un număr pozitiv)
Exponent (neajustat): 4
Mantisă (nenormalizată):
1,0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001 0010 1
8. Ajustează exponentul.
Folosește reprezentarea deplasată pe 11 biți:
Exponent (ajustat) =
Exponent (neajustat) + 2(11-1) - 1 =
4 + 2(11-1) - 1 =
(4 + 1 023)(10) =
1 027(10)
9. Convertește exponentul ajustat din zecimal (baza 10) în binar pe 11 biți.
Folosește din nou tehnica împărțirii repetate la 2:
- împărțire = cât + rest;
- 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. Construiește reprezentarea în baza 2 a exponentului ajustat.
Ia fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus.
Exponent (ajustat) =
1027(10) =
100 0000 0011(2)
11. Normalizează mantisa.
a) Renunță la primul bit, cel mai din stânga, care e întotdeauna 1, și la separatorul zecimal, dacă e cazul.
b) Ajustează-i lungimea la 52 biți, prin renunțarea la biții în exces, din dreapta (dacă măcar unul din acești biți în exces e setat pe 1, se pierde din precizie...).
Mantisă (normalizată) =
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. Cele trei elemente care alcătuiesc reprezentarea numărului în sistem binar pe 64 de biți, precizie dublă, în virgulă mobilă în standard IEEE 754:
Semn (1 bit) =
0 (un număr pozitiv)
Exponent (11 biți) =
100 0000 0011
Mantisă (52 biți) =
0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001
Numărul zecimal 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 121 scris în binar în representarea pe 64 biți, precizie dublă, în virgulă mobilă în standard IEEE 754:
0 - 100 0000 0011 - 0001 0111 1011 1000 1111 0100 1100 1101 0100 0001 1110 0101 1001