0,000 000 000 000 000 000 000 008 01 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754
Scriere 0,000 000 000 000 000 000 000 008 01(10) din zecimal în binar pe 32 de biți, precizie simplă, în virgulă mobilă în standard IEEE 754 (1 bit pentru semn, 8 biți pentru exponent, 23 de biți pentru mantisă)
Care sunt pașii pentru a scrie numărul
0,000 000 000 000 000 000 000 008 01(10) din zecimal în binar în reprezentarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754 (1 bit pentru semn, 8 biți pentru exponent, 23 de biți pentru mantisă)
1. Întâi convertește în binar (în baza 2) partea întreagă: 0.
Î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;
- 0 : 2 = 0 + 0;
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.
0(10) =
0(2)
3. Convertește în binar (baza 2) partea fracționară: 0,000 000 000 000 000 000 000 008 01.
Î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,000 000 000 000 000 000 000 008 01 × 2 = 0 + 0,000 000 000 000 000 000 000 016 02;
- 2) 0,000 000 000 000 000 000 000 016 02 × 2 = 0 + 0,000 000 000 000 000 000 000 032 04;
- 3) 0,000 000 000 000 000 000 000 032 04 × 2 = 0 + 0,000 000 000 000 000 000 000 064 08;
- 4) 0,000 000 000 000 000 000 000 064 08 × 2 = 0 + 0,000 000 000 000 000 000 000 128 16;
- 5) 0,000 000 000 000 000 000 000 128 16 × 2 = 0 + 0,000 000 000 000 000 000 000 256 32;
- 6) 0,000 000 000 000 000 000 000 256 32 × 2 = 0 + 0,000 000 000 000 000 000 000 512 64;
- 7) 0,000 000 000 000 000 000 000 512 64 × 2 = 0 + 0,000 000 000 000 000 000 001 025 28;
- 8) 0,000 000 000 000 000 000 001 025 28 × 2 = 0 + 0,000 000 000 000 000 000 002 050 56;
- 9) 0,000 000 000 000 000 000 002 050 56 × 2 = 0 + 0,000 000 000 000 000 000 004 101 12;
- 10) 0,000 000 000 000 000 000 004 101 12 × 2 = 0 + 0,000 000 000 000 000 000 008 202 24;
- 11) 0,000 000 000 000 000 000 008 202 24 × 2 = 0 + 0,000 000 000 000 000 000 016 404 48;
- 12) 0,000 000 000 000 000 000 016 404 48 × 2 = 0 + 0,000 000 000 000 000 000 032 808 96;
- 13) 0,000 000 000 000 000 000 032 808 96 × 2 = 0 + 0,000 000 000 000 000 000 065 617 92;
- 14) 0,000 000 000 000 000 000 065 617 92 × 2 = 0 + 0,000 000 000 000 000 000 131 235 84;
- 15) 0,000 000 000 000 000 000 131 235 84 × 2 = 0 + 0,000 000 000 000 000 000 262 471 68;
- 16) 0,000 000 000 000 000 000 262 471 68 × 2 = 0 + 0,000 000 000 000 000 000 524 943 36;
- 17) 0,000 000 000 000 000 000 524 943 36 × 2 = 0 + 0,000 000 000 000 000 001 049 886 72;
- 18) 0,000 000 000 000 000 001 049 886 72 × 2 = 0 + 0,000 000 000 000 000 002 099 773 44;
- 19) 0,000 000 000 000 000 002 099 773 44 × 2 = 0 + 0,000 000 000 000 000 004 199 546 88;
- 20) 0,000 000 000 000 000 004 199 546 88 × 2 = 0 + 0,000 000 000 000 000 008 399 093 76;
- 21) 0,000 000 000 000 000 008 399 093 76 × 2 = 0 + 0,000 000 000 000 000 016 798 187 52;
- 22) 0,000 000 000 000 000 016 798 187 52 × 2 = 0 + 0,000 000 000 000 000 033 596 375 04;
- 23) 0,000 000 000 000 000 033 596 375 04 × 2 = 0 + 0,000 000 000 000 000 067 192 750 08;
- 24) 0,000 000 000 000 000 067 192 750 08 × 2 = 0 + 0,000 000 000 000 000 134 385 500 16;
- 25) 0,000 000 000 000 000 134 385 500 16 × 2 = 0 + 0,000 000 000 000 000 268 771 000 32;
- 26) 0,000 000 000 000 000 268 771 000 32 × 2 = 0 + 0,000 000 000 000 000 537 542 000 64;
- 27) 0,000 000 000 000 000 537 542 000 64 × 2 = 0 + 0,000 000 000 000 001 075 084 001 28;
- 28) 0,000 000 000 000 001 075 084 001 28 × 2 = 0 + 0,000 000 000 000 002 150 168 002 56;
- 29) 0,000 000 000 000 002 150 168 002 56 × 2 = 0 + 0,000 000 000 000 004 300 336 005 12;
- 30) 0,000 000 000 000 004 300 336 005 12 × 2 = 0 + 0,000 000 000 000 008 600 672 010 24;
- 31) 0,000 000 000 000 008 600 672 010 24 × 2 = 0 + 0,000 000 000 000 017 201 344 020 48;
- 32) 0,000 000 000 000 017 201 344 020 48 × 2 = 0 + 0,000 000 000 000 034 402 688 040 96;
- 33) 0,000 000 000 000 034 402 688 040 96 × 2 = 0 + 0,000 000 000 000 068 805 376 081 92;
- 34) 0,000 000 000 000 068 805 376 081 92 × 2 = 0 + 0,000 000 000 000 137 610 752 163 84;
- 35) 0,000 000 000 000 137 610 752 163 84 × 2 = 0 + 0,000 000 000 000 275 221 504 327 68;
- 36) 0,000 000 000 000 275 221 504 327 68 × 2 = 0 + 0,000 000 000 000 550 443 008 655 36;
- 37) 0,000 000 000 000 550 443 008 655 36 × 2 = 0 + 0,000 000 000 001 100 886 017 310 72;
- 38) 0,000 000 000 001 100 886 017 310 72 × 2 = 0 + 0,000 000 000 002 201 772 034 621 44;
- 39) 0,000 000 000 002 201 772 034 621 44 × 2 = 0 + 0,000 000 000 004 403 544 069 242 88;
- 40) 0,000 000 000 004 403 544 069 242 88 × 2 = 0 + 0,000 000 000 008 807 088 138 485 76;
- 41) 0,000 000 000 008 807 088 138 485 76 × 2 = 0 + 0,000 000 000 017 614 176 276 971 52;
- 42) 0,000 000 000 017 614 176 276 971 52 × 2 = 0 + 0,000 000 000 035 228 352 553 943 04;
- 43) 0,000 000 000 035 228 352 553 943 04 × 2 = 0 + 0,000 000 000 070 456 705 107 886 08;
- 44) 0,000 000 000 070 456 705 107 886 08 × 2 = 0 + 0,000 000 000 140 913 410 215 772 16;
- 45) 0,000 000 000 140 913 410 215 772 16 × 2 = 0 + 0,000 000 000 281 826 820 431 544 32;
- 46) 0,000 000 000 281 826 820 431 544 32 × 2 = 0 + 0,000 000 000 563 653 640 863 088 64;
- 47) 0,000 000 000 563 653 640 863 088 64 × 2 = 0 + 0,000 000 001 127 307 281 726 177 28;
- 48) 0,000 000 001 127 307 281 726 177 28 × 2 = 0 + 0,000 000 002 254 614 563 452 354 56;
- 49) 0,000 000 002 254 614 563 452 354 56 × 2 = 0 + 0,000 000 004 509 229 126 904 709 12;
- 50) 0,000 000 004 509 229 126 904 709 12 × 2 = 0 + 0,000 000 009 018 458 253 809 418 24;
- 51) 0,000 000 009 018 458 253 809 418 24 × 2 = 0 + 0,000 000 018 036 916 507 618 836 48;
- 52) 0,000 000 018 036 916 507 618 836 48 × 2 = 0 + 0,000 000 036 073 833 015 237 672 96;
- 53) 0,000 000 036 073 833 015 237 672 96 × 2 = 0 + 0,000 000 072 147 666 030 475 345 92;
- 54) 0,000 000 072 147 666 030 475 345 92 × 2 = 0 + 0,000 000 144 295 332 060 950 691 84;
- 55) 0,000 000 144 295 332 060 950 691 84 × 2 = 0 + 0,000 000 288 590 664 121 901 383 68;
- 56) 0,000 000 288 590 664 121 901 383 68 × 2 = 0 + 0,000 000 577 181 328 243 802 767 36;
- 57) 0,000 000 577 181 328 243 802 767 36 × 2 = 0 + 0,000 001 154 362 656 487 605 534 72;
- 58) 0,000 001 154 362 656 487 605 534 72 × 2 = 0 + 0,000 002 308 725 312 975 211 069 44;
- 59) 0,000 002 308 725 312 975 211 069 44 × 2 = 0 + 0,000 004 617 450 625 950 422 138 88;
- 60) 0,000 004 617 450 625 950 422 138 88 × 2 = 0 + 0,000 009 234 901 251 900 844 277 76;
- 61) 0,000 009 234 901 251 900 844 277 76 × 2 = 0 + 0,000 018 469 802 503 801 688 555 52;
- 62) 0,000 018 469 802 503 801 688 555 52 × 2 = 0 + 0,000 036 939 605 007 603 377 111 04;
- 63) 0,000 036 939 605 007 603 377 111 04 × 2 = 0 + 0,000 073 879 210 015 206 754 222 08;
- 64) 0,000 073 879 210 015 206 754 222 08 × 2 = 0 + 0,000 147 758 420 030 413 508 444 16;
- 65) 0,000 147 758 420 030 413 508 444 16 × 2 = 0 + 0,000 295 516 840 060 827 016 888 32;
- 66) 0,000 295 516 840 060 827 016 888 32 × 2 = 0 + 0,000 591 033 680 121 654 033 776 64;
- 67) 0,000 591 033 680 121 654 033 776 64 × 2 = 0 + 0,001 182 067 360 243 308 067 553 28;
- 68) 0,001 182 067 360 243 308 067 553 28 × 2 = 0 + 0,002 364 134 720 486 616 135 106 56;
- 69) 0,002 364 134 720 486 616 135 106 56 × 2 = 0 + 0,004 728 269 440 973 232 270 213 12;
- 70) 0,004 728 269 440 973 232 270 213 12 × 2 = 0 + 0,009 456 538 881 946 464 540 426 24;
- 71) 0,009 456 538 881 946 464 540 426 24 × 2 = 0 + 0,018 913 077 763 892 929 080 852 48;
- 72) 0,018 913 077 763 892 929 080 852 48 × 2 = 0 + 0,037 826 155 527 785 858 161 704 96;
- 73) 0,037 826 155 527 785 858 161 704 96 × 2 = 0 + 0,075 652 311 055 571 716 323 409 92;
- 74) 0,075 652 311 055 571 716 323 409 92 × 2 = 0 + 0,151 304 622 111 143 432 646 819 84;
- 75) 0,151 304 622 111 143 432 646 819 84 × 2 = 0 + 0,302 609 244 222 286 865 293 639 68;
- 76) 0,302 609 244 222 286 865 293 639 68 × 2 = 0 + 0,605 218 488 444 573 730 587 279 36;
- 77) 0,605 218 488 444 573 730 587 279 36 × 2 = 1 + 0,210 436 976 889 147 461 174 558 72;
- 78) 0,210 436 976 889 147 461 174 558 72 × 2 = 0 + 0,420 873 953 778 294 922 349 117 44;
- 79) 0,420 873 953 778 294 922 349 117 44 × 2 = 0 + 0,841 747 907 556 589 844 698 234 88;
- 80) 0,841 747 907 556 589 844 698 234 88 × 2 = 1 + 0,683 495 815 113 179 689 396 469 76;
- 81) 0,683 495 815 113 179 689 396 469 76 × 2 = 1 + 0,366 991 630 226 359 378 792 939 52;
- 82) 0,366 991 630 226 359 378 792 939 52 × 2 = 0 + 0,733 983 260 452 718 757 585 879 04;
- 83) 0,733 983 260 452 718 757 585 879 04 × 2 = 1 + 0,467 966 520 905 437 515 171 758 08;
- 84) 0,467 966 520 905 437 515 171 758 08 × 2 = 0 + 0,935 933 041 810 875 030 343 516 16;
- 85) 0,935 933 041 810 875 030 343 516 16 × 2 = 1 + 0,871 866 083 621 750 060 687 032 32;
- 86) 0,871 866 083 621 750 060 687 032 32 × 2 = 1 + 0,743 732 167 243 500 121 374 064 64;
- 87) 0,743 732 167 243 500 121 374 064 64 × 2 = 1 + 0,487 464 334 487 000 242 748 129 28;
- 88) 0,487 464 334 487 000 242 748 129 28 × 2 = 0 + 0,974 928 668 974 000 485 496 258 56;
- 89) 0,974 928 668 974 000 485 496 258 56 × 2 = 1 + 0,949 857 337 948 000 970 992 517 12;
- 90) 0,949 857 337 948 000 970 992 517 12 × 2 = 1 + 0,899 714 675 896 001 941 985 034 24;
- 91) 0,899 714 675 896 001 941 985 034 24 × 2 = 1 + 0,799 429 351 792 003 883 970 068 48;
- 92) 0,799 429 351 792 003 883 970 068 48 × 2 = 1 + 0,598 858 703 584 007 767 940 136 96;
- 93) 0,598 858 703 584 007 767 940 136 96 × 2 = 1 + 0,197 717 407 168 015 535 880 273 92;
- 94) 0,197 717 407 168 015 535 880 273 92 × 2 = 0 + 0,395 434 814 336 031 071 760 547 84;
- 95) 0,395 434 814 336 031 071 760 547 84 × 2 = 0 + 0,790 869 628 672 062 143 521 095 68;
- 96) 0,790 869 628 672 062 143 521 095 68 × 2 = 1 + 0,581 739 257 344 124 287 042 191 36;
- 97) 0,581 739 257 344 124 287 042 191 36 × 2 = 1 + 0,163 478 514 688 248 574 084 382 72;
- 98) 0,163 478 514 688 248 574 084 382 72 × 2 = 0 + 0,326 957 029 376 497 148 168 765 44;
- 99) 0,326 957 029 376 497 148 168 765 44 × 2 = 0 + 0,653 914 058 752 994 296 337 530 88;
- 100) 0,653 914 058 752 994 296 337 530 88 × 2 = 1 + 0,307 828 117 505 988 592 675 061 76;
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,000 000 000 000 000 000 000 008 01(10) =
0,0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1001 1010 1110 1111 1001 1001(2)
5. Numărul pozitiv înainte de normalizare:
0,000 000 000 000 000 000 000 008 01(10) =
0,0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1001 1010 1110 1111 1001 1001(2)
6. Normalizează reprezentarea binară a numărului.
Mută virgula cu 77 poziții la dreapta, astfel încât partea întreagă a acestuia să aibă un singur bit, diferit de 0:
0,000 000 000 000 000 000 000 008 01(10) =
0,0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1001 1010 1110 1111 1001 1001(2) =
0,0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1001 1010 1110 1111 1001 1001(2) × 20 =
1,0011 0101 1101 1111 0011 001(2) × 2-77
7. Până la acest moment avem următoarele elemente ce vor alcătui numărul binar în reprezentare IEEE 754, precizie simplă (32 biți):
Semn 0 (un număr pozitiv)
Exponent (neajustat): -77
Mantisă (nenormalizată):
1,0011 0101 1101 1111 0011 001
8. Ajustează exponentul.
Folosește reprezentarea deplasată pe 8 biți:
Exponent (ajustat) =
Exponent (neajustat) + 2(8-1) - 1 =
-77 + 2(8-1) - 1 =
(-77 + 127)(10) =
50(10)
9. Convertește exponentul ajustat din zecimal (baza 10) în binar pe 8 biți.
Folosește din nou tehnica împărțirii repetate la 2:
- împărțire = cât + rest;
- 50 : 2 = 25 + 0;
- 25 : 2 = 12 + 1;
- 12 : 2 = 6 + 0;
- 6 : 2 = 3 + 0;
- 3 : 2 = 1 + 1;
- 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) =
50(10) =
0011 0010(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 23 biți, doar dacă e necesar (nu e cazul aici).
Mantisă (normalizată) =
1. 001 1010 1110 1111 1001 1001 =
001 1010 1110 1111 1001 1001
12. Cele trei elemente care alcătuiesc reprezentarea numărului în sistem binar pe 32 de biți, precizie simplă, în virgulă mobilă în standard IEEE 754:
Semn (1 bit) =
0 (un număr pozitiv)
Exponent (8 biți) =
0011 0010
Mantisă (23 biți) =
001 1010 1110 1111 1001 1001
Numărul zecimal 0,000 000 000 000 000 000 000 008 01 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:
0 - 0011 0010 - 001 1010 1110 1111 1001 1001