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 341 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 341(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 341(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 341.
Î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 341 × 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 682;
- 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 682 × 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 364;
- 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 364 × 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 728;
- 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 728 × 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 669 456;
- 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 669 456 × 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 338 912;
- 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 338 912 × 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 677 824;
- 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 677 824 × 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 355 648;
- 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 355 648 × 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 711 296;
- 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 711 296 × 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 422 592;
- 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 422 592 × 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 845 184;
- 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 845 184 × 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 690 368;
- 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 690 368 × 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 380 736;
- 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 380 736 × 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 761 472;
- 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 761 472 × 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 173 522 944;
- 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 173 522 944 × 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 347 045 888;
- 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 347 045 888 × 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 694 091 776;
- 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 694 091 776 × 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 388 183 552;
- 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 388 183 552 × 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 776 367 104;
- 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 776 367 104 × 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 552 734 208;
- 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 552 734 208 × 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 105 468 416;
- 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 105 468 416 × 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 210 936 832;
- 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 210 936 832 × 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 421 873 664;
- 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 421 873 664 × 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 843 747 328;
- 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 843 747 328 × 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 729 687 494 656;
- 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 729 687 494 656 × 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 459 374 989 312;
- 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 459 374 989 312 × 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 918 749 978 624;
- 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 918 749 978 624 × 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 837 499 957 248;
- 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 837 499 957 248 × 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 674 999 914 496;
- 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 674 999 914 496 × 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 349 999 828 992;
- 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 349 999 828 992 × 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 699 999 657 984;
- 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 699 999 657 984 × 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 399 999 315 968;
- 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 399 999 315 968 × 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 799 998 631 936;
- 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 799 998 631 936 × 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 693 599 997 263 872;
- 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 693 599 997 263 872 × 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 387 199 994 527 744;
- 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 387 199 994 527 744 × 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 774 399 989 055 488;
- 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 774 399 989 055 488 × 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 548 799 978 110 976;
- 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 548 799 978 110 976 × 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 097 599 956 221 952;
- 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 097 599 956 221 952 × 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 195 199 912 443 904;
- 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 195 199 912 443 904 × 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 390 399 824 887 808;
- 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 390 399 824 887 808 × 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 780 799 649 775 616;
- 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 780 799 649 775 616 × 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 561 599 299 551 232;
- 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 561 599 299 551 232 × 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 787 123 198 599 102 464;
- 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 787 123 198 599 102 464 × 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 574 246 397 198 204 928;
- 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 574 246 397 198 204 928 × 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 148 492 794 396 409 856;
- 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 148 492 794 396 409 856 × 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 296 985 588 792 819 712;
- 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 296 985 588 792 819 712 × 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 593 971 177 585 639 424;
- 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 593 971 177 585 639 424 × 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 187 942 355 171 278 848;
- 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 187 942 355 171 278 848 × 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 375 884 710 342 557 696;
- 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 375 884 710 342 557 696 × 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 751 769 420 685 115 392;
- 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 751 769 420 685 115 392 × 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 503 538 841 370 230 784;
- 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 503 538 841 370 230 784 × 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 227 007 077 682 740 461 568;
- 52) 0,286 037 730 571 188 465 602 040 917 271 778 092 052 833 791 825 176 617 516 958 179 534 227 007 077 682 740 461 568 × 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 454 014 155 365 480 923 136;
- 53) 0,572 075 461 142 376 931 204 081 834 543 556 184 105 667 583 650 353 235 033 916 359 068 454 014 155 365 480 923 136 × 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 908 028 310 730 961 846 272;
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 341(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 341(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 341(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 341 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