2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684 scris ca binar pe 64 biți, precizie dublă, virgulă mobilă în standard IEEE 754
Scriere 2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684(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
2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684(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ă: 2.
Î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;
- 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.
2(10) =
10(2)
3. Convertește în binar (baza 2) partea fracționară: 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684.
Î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,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 368;
- 2) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 368 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 736;
- 3) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 736 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 472;
- 4) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 472 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 338 944;
- 5) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 338 944 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 677 888;
- 6) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 677 888 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 355 776;
- 7) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 355 776 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 711 552;
- 8) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 711 552 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 423 104;
- 9) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 423 104 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 846 208;
- 10) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 846 208 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 692 416;
- 11) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 692 416 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 384 832;
- 12) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 384 832 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 769 664;
- 13) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 769 664 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 539 328;
- 14) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 539 328 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 078 656;
- 15) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 078 656 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 157 312;
- 16) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 157 312 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 356 314 624;
- 17) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 356 314 624 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 712 629 248;
- 18) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 712 629 248 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 425 258 496;
- 19) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 425 258 496 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 850 516 992;
- 20) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 850 516 992 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 701 033 984;
- 21) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 701 033 984 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 402 067 968;
- 22) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 402 067 968 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 804 135 936;
- 23) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 804 135 936 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 608 271 872;
- 24) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 608 271 872 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 216 543 744;
- 25) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 216 543 744 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 433 087 488;
- 26) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 433 087 488 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 356 866 174 976;
- 27) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 356 866 174 976 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 713 732 349 952;
- 28) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 713 732 349 952 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 427 464 699 904;
- 29) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 427 464 699 904 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 854 929 399 808;
- 30) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 854 929 399 808 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 709 858 799 616;
- 31) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 709 858 799 616 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 419 717 599 232;
- 32) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 419 717 599 232 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 839 435 198 464;
- 33) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 839 435 198 464 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 678 870 396 928;
- 34) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 678 870 396 928 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 357 740 793 856;
- 35) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 357 740 793 856 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 715 481 587 712;
- 36) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 678 715 481 587 712 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 357 430 963 175 424;
- 37) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 357 430 963 175 424 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 714 861 926 350 848;
- 38) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 714 861 926 350 848 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 429 723 852 701 696;
- 39) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 429 723 852 701 696 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 859 447 705 403 392;
- 40) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 859 447 705 403 392 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 718 895 410 806 784;
- 41) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 718 895 410 806 784 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 437 790 821 613 568;
- 42) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 437 790 821 613 568 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 875 581 643 227 136;
- 43) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 875 581 643 227 136 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 751 163 286 454 272;
- 44) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 751 163 286 454 272 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 502 326 572 908 544;
- 45) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 339 502 326 572 908 544 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 679 004 653 145 817 088;
- 46) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 679 004 653 145 817 088 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 358 009 306 291 634 176;
- 47) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 358 009 306 291 634 176 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 716 018 612 583 268 352;
- 48) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 716 018 612 583 268 352 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 432 037 225 166 536 704;
- 49) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 432 037 225 166 536 704 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 864 074 450 333 073 408;
- 50) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 864 074 450 333 073 408 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 728 148 900 666 146 816;
- 51) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 728 148 900 666 146 816 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 456 297 801 332 293 632;
- 52) 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 667 456 297 801 332 293 632 × 2 = 1 + 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 912 595 602 664 587 264;
- 53) 0,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 334 912 595 602 664 587 264 × 2 = 0 + 0,666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 666 669 825 191 205 329 174 528;
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,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684(10) =
0,0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0(2)
5. Numărul pozitiv înainte de normalizare:
2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684(10) =
10,0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0(2)
6. Normalizează reprezentarea binară a numărului.
Mută virgula cu 1 poziții la stânga, astfel încât partea întreagă a acestuia să aibă un singur bit, diferit de 0:
2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684(10) =
10,0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0(2) =
10,0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0101 0(2) × 20 =
1,0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 10(2) × 21
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): 1
Mantisă (nenormalizată):
1,0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 10
8. Ajustează exponentul.
Folosește reprezentarea deplasată pe 11 biți:
Exponent (ajustat) =
Exponent (neajustat) + 2(11-1) - 1 =
1 + 2(11-1) - 1 =
(1 + 1 023)(10) =
1 024(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 024 : 2 = 512 + 0;
- 512 : 2 = 256 + 0;
- 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) =
1024(10) =
100 0000 0000(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. 0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 10 =
0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010
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 0000
Mantisă (52 biți) =
0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010
Numărul zecimal 2,333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 333 684 scris în binar în representarea pe 64 biți, precizie dublă, în virgulă mobilă în standard IEEE 754:
0 - 100 0000 0000 - 0010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010