24,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 752 9 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 752 9(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 752 9(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 752 9.
Î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 752 9 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 505 8;
- 2) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 505 8 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 011 6;
- 3) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 011 6 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 023 2;
- 4) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 023 2 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 046 4;
- 5) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 046 4 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 092 8;
- 6) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 092 8 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 185 6;
- 7) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 185 6 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 552 371 2;
- 8) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 552 371 2 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 104 742 4;
- 9) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 104 742 4 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 209 484 8;
- 10) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 209 484 8 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 418 969 6;
- 11) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 418 969 6 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 837 939 2;
- 12) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 837 939 2 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 675 878 4;
- 13) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 675 878 4 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 351 756 8;
- 14) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 351 756 8 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 703 513 6;
- 15) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 703 513 6 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 407 027 2;
- 16) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 407 027 2 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 814 054 4;
- 17) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 814 054 4 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 885 628 108 8;
- 18) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 885 628 108 8 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 771 256 217 6;
- 19) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 771 256 217 6 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 542 512 435 2;
- 20) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 542 512 435 2 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 085 024 870 4;
- 21) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 085 024 870 4 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 170 049 740 8;
- 22) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 170 049 740 8 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 340 099 481 6;
- 23) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 340 099 481 6 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 680 198 963 2;
- 24) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 680 198 963 2 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 360 397 926 4;
- 25) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 360 397 926 4 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 720 795 852 8;
- 26) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 554 720 795 852 8 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 109 441 591 705 6;
- 27) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 109 441 591 705 6 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 218 883 183 411 2;
- 28) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 218 883 183 411 2 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 437 766 366 822 4;
- 29) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 437 766 366 822 4 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 875 532 733 644 8;
- 30) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 875 532 733 644 8 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 751 065 467 289 6;
- 31) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 751 065 467 289 6 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 502 130 934 579 2;
- 32) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 502 130 934 579 2 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 004 261 869 158 4;
- 33) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 004 261 869 158 4 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 008 523 738 316 8;
- 34) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 008 523 738 316 8 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 017 047 476 633 6;
- 35) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 017 047 476 633 6 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 034 094 953 267 2;
- 36) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 034 094 953 267 2 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 068 189 906 534 4;
- 37) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 776 068 189 906 534 4 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 552 136 379 813 068 8;
- 38) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 552 136 379 813 068 8 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 104 272 759 626 137 6;
- 39) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 104 272 759 626 137 6 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 208 545 519 252 275 2;
- 40) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 208 545 519 252 275 2 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 417 091 038 504 550 4;
- 41) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 417 091 038 504 550 4 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 834 182 077 009 100 8;
- 42) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 834 182 077 009 100 8 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 668 364 154 018 201 6;
- 43) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 668 364 154 018 201 6 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 336 728 308 036 403 2;
- 44) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 336 728 308 036 403 2 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 673 456 616 072 806 4;
- 45) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 110 673 456 616 072 806 4 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 346 913 232 145 612 8;
- 46) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 221 346 913 232 145 612 8 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 693 826 464 291 225 6;
- 47) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 442 693 826 464 291 225 6 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 885 387 652 928 582 451 2;
- 48) 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 885 387 652 928 582 451 2 × 2 = 1 + 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 770 775 305 857 164 902 4;
- 49) 0,777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 777 770 775 305 857 164 902 4 × 2 = 1 + 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 541 550 611 714 329 804 8;
- 50) 0,555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 555 541 550 611 714 329 804 8 × 2 = 1 + 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 083 101 223 428 659 609 6;
- 51) 0,111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 111 083 101 223 428 659 609 6 × 2 = 0 + 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 166 202 446 857 319 219 2;
- 52) 0,222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 222 166 202 446 857 319 219 2 × 2 = 0 + 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 332 404 893 714 638 438 4;
- 53) 0,444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 444 332 404 893 714 638 438 4 × 2 = 0 + 0,888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 664 809 787 429 276 876 8;
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 752 9(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 752 9(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 752 9(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 752 9 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