24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907 scris ca binar pe 64 biți, precizie dublă, virgulă mobilă în standard IEEE 754
Scriere 24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907(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
24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907(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ă: 24.
Î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;
- 24 : 2 = 12 + 0;
- 12 : 2 = 6 + 0;
- 6 : 2 = 3 + 0;
- 3 : 2 = 1 + 1;
- 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.
24(10) =
1 1000(2)
3. Convertește în binar (baza 2) partea fracționară: 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907.
Î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,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 814;
- 2) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 814 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 628;
- 3) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 628 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 256;
- 4) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 256 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 446 512;
- 5) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 446 512 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 893 024;
- 6) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 893 024 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 786 048;
- 7) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 786 048 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 572 096;
- 8) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 572 096 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 144 192;
- 9) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 144 192 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 288 384;
- 10) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 288 384 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 576 768;
- 11) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 576 768 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 153 536;
- 12) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 153 536 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 307 072;
- 13) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 307 072 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 614 144;
- 14) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 614 144 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 113 228 288;
- 15) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 113 228 288 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 226 456 576;
- 16) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 226 456 576 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 452 913 152;
- 17) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 452 913 152 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 905 826 304;
- 18) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 905 826 304 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 811 652 608;
- 19) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 811 652 608 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 623 305 216;
- 20) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 623 305 216 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 246 610 432;
- 21) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 246 610 432 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 493 220 864;
- 22) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 493 220 864 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 986 441 728;
- 23) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 986 441 728 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 972 883 456;
- 24) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 972 883 456 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 779 945 766 912;
- 25) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 779 945 766 912 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 559 891 533 824;
- 26) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 559 891 533 824 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 119 783 067 648;
- 27) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 119 783 067 648 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 239 566 135 296;
- 28) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 239 566 135 296 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 479 132 270 592;
- 29) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 479 132 270 592 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 958 264 541 184;
- 30) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 958 264 541 184 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 916 529 082 368;
- 31) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 916 529 082 368 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 833 058 164 736;
- 32) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 833 058 164 736 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 666 116 329 472;
- 33) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 666 116 329 472 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 332 232 658 944;
- 34) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 223 332 232 658 944 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 446 664 465 317 888;
- 35) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 446 664 465 317 888 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 893 328 930 635 776;
- 36) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 893 328 930 635 776 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 786 657 861 271 552;
- 37) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 786 657 861 271 552 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 573 315 722 543 104;
- 38) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 573 315 722 543 104 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 146 631 445 086 208;
- 39) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 146 631 445 086 208 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 293 262 890 172 416;
- 40) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 293 262 890 172 416 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 586 525 780 344 832;
- 41) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 586 525 780 344 832 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 173 051 560 689 664;
- 42) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 889 173 051 560 689 664 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 346 103 121 379 328;
- 43) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 778 346 103 121 379 328 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 692 206 242 758 656;
- 44) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 556 692 206 242 758 656 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 113 384 412 485 517 312;
- 45) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 113 384 412 485 517 312 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 226 768 824 971 034 624;
- 46) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 226 768 824 971 034 624 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 453 537 649 942 069 248;
- 47) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 453 537 649 942 069 248 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 907 075 299 884 138 496;
- 48) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 907 075 299 884 138 496 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 814 150 599 768 276 992;
- 49) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 814 150 599 768 276 992 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 628 301 199 536 553 984;
- 50) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 628 301 199 536 553 984 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 256 602 399 073 107 968;
- 51) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 256 602 399 073 107 968 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 513 204 798 146 215 936;
- 52) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 513 204 798 146 215 936 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 026 409 596 292 431 872;
- 53) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 445 026 409 596 292 431 872 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 890 052 819 192 584 863 744;
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,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907(10) =
0,1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2)
5. Numărul pozitiv înainte de normalizare:
24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907(10) =
1 1000,1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(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:
24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907(10) =
1 1000,1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) =
1 1000,1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(2) × 20 =
1,1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0(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,1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0
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. 1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001 1 1000 =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
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) =
1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001
Numărul zecimal 24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 907 scris în binar în representarea pe 64 biți, precizie dublă, în virgulă mobilă în standard IEEE 754:
0 - 100 0000 0011 - 1000 1100 0111 0001 1100 0111 0001 1100 0111 0001 1100 0111 0001