11 001 101 111 099 999 999 999 999 999 830 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754

Scriere 11 001 101 111 099 999 999 999 999 999 830(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
11 001 101 111 099 999 999 999 999 999 830(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. Î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;
  • 11 001 101 111 099 999 999 999 999 999 830 : 2 = 5 500 550 555 549 999 999 999 999 999 915 + 0;
  • 5 500 550 555 549 999 999 999 999 999 915 : 2 = 2 750 275 277 774 999 999 999 999 999 957 + 1;
  • 2 750 275 277 774 999 999 999 999 999 957 : 2 = 1 375 137 638 887 499 999 999 999 999 978 + 1;
  • 1 375 137 638 887 499 999 999 999 999 978 : 2 = 687 568 819 443 749 999 999 999 999 989 + 0;
  • 687 568 819 443 749 999 999 999 999 989 : 2 = 343 784 409 721 874 999 999 999 999 994 + 1;
  • 343 784 409 721 874 999 999 999 999 994 : 2 = 171 892 204 860 937 499 999 999 999 997 + 0;
  • 171 892 204 860 937 499 999 999 999 997 : 2 = 85 946 102 430 468 749 999 999 999 998 + 1;
  • 85 946 102 430 468 749 999 999 999 998 : 2 = 42 973 051 215 234 374 999 999 999 999 + 0;
  • 42 973 051 215 234 374 999 999 999 999 : 2 = 21 486 525 607 617 187 499 999 999 999 + 1;
  • 21 486 525 607 617 187 499 999 999 999 : 2 = 10 743 262 803 808 593 749 999 999 999 + 1;
  • 10 743 262 803 808 593 749 999 999 999 : 2 = 5 371 631 401 904 296 874 999 999 999 + 1;
  • 5 371 631 401 904 296 874 999 999 999 : 2 = 2 685 815 700 952 148 437 499 999 999 + 1;
  • 2 685 815 700 952 148 437 499 999 999 : 2 = 1 342 907 850 476 074 218 749 999 999 + 1;
  • 1 342 907 850 476 074 218 749 999 999 : 2 = 671 453 925 238 037 109 374 999 999 + 1;
  • 671 453 925 238 037 109 374 999 999 : 2 = 335 726 962 619 018 554 687 499 999 + 1;
  • 335 726 962 619 018 554 687 499 999 : 2 = 167 863 481 309 509 277 343 749 999 + 1;
  • 167 863 481 309 509 277 343 749 999 : 2 = 83 931 740 654 754 638 671 874 999 + 1;
  • 83 931 740 654 754 638 671 874 999 : 2 = 41 965 870 327 377 319 335 937 499 + 1;
  • 41 965 870 327 377 319 335 937 499 : 2 = 20 982 935 163 688 659 667 968 749 + 1;
  • 20 982 935 163 688 659 667 968 749 : 2 = 10 491 467 581 844 329 833 984 374 + 1;
  • 10 491 467 581 844 329 833 984 374 : 2 = 5 245 733 790 922 164 916 992 187 + 0;
  • 5 245 733 790 922 164 916 992 187 : 2 = 2 622 866 895 461 082 458 496 093 + 1;
  • 2 622 866 895 461 082 458 496 093 : 2 = 1 311 433 447 730 541 229 248 046 + 1;
  • 1 311 433 447 730 541 229 248 046 : 2 = 655 716 723 865 270 614 624 023 + 0;
  • 655 716 723 865 270 614 624 023 : 2 = 327 858 361 932 635 307 312 011 + 1;
  • 327 858 361 932 635 307 312 011 : 2 = 163 929 180 966 317 653 656 005 + 1;
  • 163 929 180 966 317 653 656 005 : 2 = 81 964 590 483 158 826 828 002 + 1;
  • 81 964 590 483 158 826 828 002 : 2 = 40 982 295 241 579 413 414 001 + 0;
  • 40 982 295 241 579 413 414 001 : 2 = 20 491 147 620 789 706 707 000 + 1;
  • 20 491 147 620 789 706 707 000 : 2 = 10 245 573 810 394 853 353 500 + 0;
  • 10 245 573 810 394 853 353 500 : 2 = 5 122 786 905 197 426 676 750 + 0;
  • 5 122 786 905 197 426 676 750 : 2 = 2 561 393 452 598 713 338 375 + 0;
  • 2 561 393 452 598 713 338 375 : 2 = 1 280 696 726 299 356 669 187 + 1;
  • 1 280 696 726 299 356 669 187 : 2 = 640 348 363 149 678 334 593 + 1;
  • 640 348 363 149 678 334 593 : 2 = 320 174 181 574 839 167 296 + 1;
  • 320 174 181 574 839 167 296 : 2 = 160 087 090 787 419 583 648 + 0;
  • 160 087 090 787 419 583 648 : 2 = 80 043 545 393 709 791 824 + 0;
  • 80 043 545 393 709 791 824 : 2 = 40 021 772 696 854 895 912 + 0;
  • 40 021 772 696 854 895 912 : 2 = 20 010 886 348 427 447 956 + 0;
  • 20 010 886 348 427 447 956 : 2 = 10 005 443 174 213 723 978 + 0;
  • 10 005 443 174 213 723 978 : 2 = 5 002 721 587 106 861 989 + 0;
  • 5 002 721 587 106 861 989 : 2 = 2 501 360 793 553 430 994 + 1;
  • 2 501 360 793 553 430 994 : 2 = 1 250 680 396 776 715 497 + 0;
  • 1 250 680 396 776 715 497 : 2 = 625 340 198 388 357 748 + 1;
  • 625 340 198 388 357 748 : 2 = 312 670 099 194 178 874 + 0;
  • 312 670 099 194 178 874 : 2 = 156 335 049 597 089 437 + 0;
  • 156 335 049 597 089 437 : 2 = 78 167 524 798 544 718 + 1;
  • 78 167 524 798 544 718 : 2 = 39 083 762 399 272 359 + 0;
  • 39 083 762 399 272 359 : 2 = 19 541 881 199 636 179 + 1;
  • 19 541 881 199 636 179 : 2 = 9 770 940 599 818 089 + 1;
  • 9 770 940 599 818 089 : 2 = 4 885 470 299 909 044 + 1;
  • 4 885 470 299 909 044 : 2 = 2 442 735 149 954 522 + 0;
  • 2 442 735 149 954 522 : 2 = 1 221 367 574 977 261 + 0;
  • 1 221 367 574 977 261 : 2 = 610 683 787 488 630 + 1;
  • 610 683 787 488 630 : 2 = 305 341 893 744 315 + 0;
  • 305 341 893 744 315 : 2 = 152 670 946 872 157 + 1;
  • 152 670 946 872 157 : 2 = 76 335 473 436 078 + 1;
  • 76 335 473 436 078 : 2 = 38 167 736 718 039 + 0;
  • 38 167 736 718 039 : 2 = 19 083 868 359 019 + 1;
  • 19 083 868 359 019 : 2 = 9 541 934 179 509 + 1;
  • 9 541 934 179 509 : 2 = 4 770 967 089 754 + 1;
  • 4 770 967 089 754 : 2 = 2 385 483 544 877 + 0;
  • 2 385 483 544 877 : 2 = 1 192 741 772 438 + 1;
  • 1 192 741 772 438 : 2 = 596 370 886 219 + 0;
  • 596 370 886 219 : 2 = 298 185 443 109 + 1;
  • 298 185 443 109 : 2 = 149 092 721 554 + 1;
  • 149 092 721 554 : 2 = 74 546 360 777 + 0;
  • 74 546 360 777 : 2 = 37 273 180 388 + 1;
  • 37 273 180 388 : 2 = 18 636 590 194 + 0;
  • 18 636 590 194 : 2 = 9 318 295 097 + 0;
  • 9 318 295 097 : 2 = 4 659 147 548 + 1;
  • 4 659 147 548 : 2 = 2 329 573 774 + 0;
  • 2 329 573 774 : 2 = 1 164 786 887 + 0;
  • 1 164 786 887 : 2 = 582 393 443 + 1;
  • 582 393 443 : 2 = 291 196 721 + 1;
  • 291 196 721 : 2 = 145 598 360 + 1;
  • 145 598 360 : 2 = 72 799 180 + 0;
  • 72 799 180 : 2 = 36 399 590 + 0;
  • 36 399 590 : 2 = 18 199 795 + 0;
  • 18 199 795 : 2 = 9 099 897 + 1;
  • 9 099 897 : 2 = 4 549 948 + 1;
  • 4 549 948 : 2 = 2 274 974 + 0;
  • 2 274 974 : 2 = 1 137 487 + 0;
  • 1 137 487 : 2 = 568 743 + 1;
  • 568 743 : 2 = 284 371 + 1;
  • 284 371 : 2 = 142 185 + 1;
  • 142 185 : 2 = 71 092 + 1;
  • 71 092 : 2 = 35 546 + 0;
  • 35 546 : 2 = 17 773 + 0;
  • 17 773 : 2 = 8 886 + 1;
  • 8 886 : 2 = 4 443 + 0;
  • 4 443 : 2 = 2 221 + 1;
  • 2 221 : 2 = 1 110 + 1;
  • 1 110 : 2 = 555 + 0;
  • 555 : 2 = 277 + 1;
  • 277 : 2 = 138 + 1;
  • 138 : 2 = 69 + 0;
  • 69 : 2 = 34 + 1;
  • 34 : 2 = 17 + 0;
  • 17 : 2 = 8 + 1;
  • 8 : 2 = 4 + 0;
  • 4 : 2 = 2 + 0;
  • 2 : 2 = 1 + 0;
  • 1 : 2 = 0 + 1;

2. Construiește reprezentarea numărului pozitiv în baza 2.

Ia fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus.

11 001 101 111 099 999 999 999 999 999 830(10) =


1000 1010 1101 1010 0111 1001 1000 1110 0100 1011 0101 1101 1010 0111 0100 1010 0000 0111 0001 0111 0110 1111 1111 1111 0101 0110(2)


3. Normalizează reprezentarea binară a numărului.

Mută virgula cu 103 poziții la stânga, astfel încât partea întreagă a acestuia să aibă un singur bit, diferit de 0:


11 001 101 111 099 999 999 999 999 999 830(10) =


1000 1010 1101 1010 0111 1001 1000 1110 0100 1011 0101 1101 1010 0111 0100 1010 0000 0111 0001 0111 0110 1111 1111 1111 0101 0110(2) =


1000 1010 1101 1010 0111 1001 1000 1110 0100 1011 0101 1101 1010 0111 0100 1010 0000 0111 0001 0111 0110 1111 1111 1111 0101 0110(2) × 20 =


1,0001 0101 1011 0100 1111 0011 0001 1100 1001 0110 1011 1011 0100 1110 1001 0100 0000 1110 0010 1110 1101 1111 1111 1110 1010 110(2) × 2103


4. 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): 103


Mantisă (nenormalizată):
1,0001 0101 1011 0100 1111 0011 0001 1100 1001 0110 1011 1011 0100 1110 1001 0100 0000 1110 0010 1110 1101 1111 1111 1110 1010 110


5. Ajustează exponentul.

Folosește reprezentarea deplasată pe 8 biți:


Exponent (ajustat) =


Exponent (neajustat) + 2(8-1) - 1 =


103 + 2(8-1) - 1 =


(103 + 127)(10) =


230(10)


6. 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;
  • 230 : 2 = 115 + 0;
  • 115 : 2 = 57 + 1;
  • 57 : 2 = 28 + 1;
  • 28 : 2 = 14 + 0;
  • 14 : 2 = 7 + 0;
  • 7 : 2 = 3 + 1;
  • 3 : 2 = 1 + 1;
  • 1 : 2 = 0 + 1;

7. 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) =


230(10) =


1110 0110(2)


8. 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, 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. 000 1010 1101 1010 0111 1001 1000 1110 0100 1011 0101 1101 1010 0111 0100 1010 0000 0111 0001 0111 0110 1111 1111 1111 0101 0110 =


000 1010 1101 1010 0111 1001


9. 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) =
1110 0110


Mantisă (23 biți) =
000 1010 1101 1010 0111 1001


Numărul zecimal 11 001 101 111 099 999 999 999 999 999 830 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:

0 - 1110 0110 - 000 1010 1101 1010 0111 1001


Cum să convertești numere zecimale din sistem zecimal (baza 10) în sistem binar în virgulă mobilă în reprezentarea IEEE 754, precizie simplă pe 32 de biți

Urmează pașii de mai jos pentru a converti un număr zecimal (cu virgulă) din baza zece în sistem binar în virgulă mobilă în reprezentarea IEEE 754, precizie simplă pe 32 de biți:

  • 1. Dacă numărul de convertit este negativ, se începe cu versiunea pozitivă a numărului.
  • 2. Se convertește întâi partea întreagă; împarte în mod repetat la 2 reprezentarea pozitivă a numărului întreg cu semn care trebuie convertit în sistem binar, ținând minte fiecare rest al împărțirilor. Atunci când găsim un CÂT care e egal cu ZERO => STOP
  • 3. Construiește reprezentarea în baza 2 a părții întregi a numărului, luând fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus. Astfel, ultimul rest al împărțirilor de la punctul de mai sus devine primul simbol (situat cel mai la stânga) al numărului în baza doi, în timp ce primul rest devine ultimul simbol (situat cel mai la dreapta).
  • 4. Convertește apoi partea fracționară. Înmulțește în mod repetat cu 2, până se obține o parte fracționară egală cu zero, ținând minte fiecare parte întreagă a înmulțirilor.
  • 5. Construiește reprezentarea în baza 2 a părții fracționare a numărului, luând fiecare parte întreagă a rezultatelor înmulțirilor de mai sus, începând din partea de sus a listei construite (se iau părțile întregi în ordinea în care au fost obținute).
  • 6. Normalizează reprezentarea binară a numărului, mutând virgula cu "n" poziții la stânga (sau, dacă e cazul, la dreapta) astfel încât partea întreagă a acestuia să mai conțină un singur bit, diferit de '0'.
  • 7. Ajustează exponentul folosind reprezentarea deplasată pe 8 biți apoi convertește-l din zecimal (baza 10) în binar pe 8 biți, folosind tehnica împărțirii repetate la 2, așa cum am mai arătat mai sus:
    Exponent (ajustat) = Exponent (neajustat) + 2(8-1) - 1;
  • 8. Normalizează mantisa, renunțând la primul bit (cel mai din stânga), care este întotdeauna '1' (și la semnul zecimal, dacă e cazul) și ajustându-i lungimea, la 23 biți, fie renunțând la biții în exces, din dreapta (pierzând precizie...) fie adaugând tot la dreapta biți setați pe '0'.
  • 9. Semnul (ocupă 1 bit) este egal fie cu 1, dacă este un număr negativ, fie cu 0, dacă e un număr pozitiv.

Exemplu: convertește numărul negativ -25,347 din sistem zecimal (baza zece) în sistem binar în virgulă mobilă în reprezentarea IEEE 754, precizie simplă pe 32 de biți:

  • 1. Se începe cu versiunea pozitivă a numărului:

    |-25,347| = 25,347;

  • 2. Convertește întâi partea întreagă, 25. Împarte în mod repetat la 2, ținând minte fiecare rest al împărțirilor, până obținem un cât care este egal cu zero:
    • împărțire = cât + rest;
    • 25 : 2 = 12 + 1;
    • 12 : 2 = 6 + 0;
    • 6 : 2 = 3 + 0;
    • 3 : 2 = 1 + 1;
    • 1 : 2 = 0 + 1;
    • Am obținut un cât care este egal cu ZERO => STOP
  • 3. Construiește reprezentarea în baza 2 a părții întregi a numărului, luând fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus:

    25(10) = 1 1001(2)

  • 4. Convertește apoi partea fracționară 0,347. Înmulțește în mod repetat cu 2, ținând minte fiecare parte întreagă a înmulțirilor, până obținem o parte fracționară egală cu zero:
    • #) înmulțire = întreg + fracționar;
    • 1) 0,347 × 2 = 0 + 0,694;
    • 2) 0,694 × 2 = 1 + 0,388;
    • 3) 0,388 × 2 = 0 + 0,776;
    • 4) 0,776 × 2 = 1 + 0,552;
    • 5) 0,552 × 2 = 1 + 0,104;
    • 6) 0,104 × 2 = 0 + 0,208
    • 7) 0,208 × 2 = 0 + 0,416;
    • 8) 0,416 × 2 = 0 + 0,832;
    • 9) 0,832 × 2 = 1 + 0,664;
    • 10) 0,664 × 2 = 1 + 0,328;
    • 11) 0,328 × 2 = 0 + 0,656;
    • 12) 0,656 × 2 = 1 + 0,312;
    • 13) 0,312 × 2 = 0 + 0,624;
    • 14) 0,624 × 2 = 1 + 0,248;
    • 15) 0,248 × 2 = 0 + 0,496;
    • 16) 0,496 × 2 = 0 + 0,992;
    • 17) 0,992 × 2 = 1 + 0,984;
    • 18) 0,984 × 2 = 1 + 0,968;
    • 19) 0,968 × 2 = 1 + 0,936;
    • 20) 0,936 × 2 = 1 + 0,872;
    • 21) 0,872 × 2 = 1 + 0,744;
    • 22) 0,744 × 2 = 1 + 0,488;
    • 23) 0,488 × 2 = 0 + 0,976;
    • 24) 0,976 × 2 = 1 + 0,952;
    • Nicio parte fracționară egală cu zero n-a fost obținută prin calcule. Însă am efectuat un număr suficient de iterații (peste limita de Mantisă = 23) și a fost găsită prin calcule măcar o parte întreagă diferită de zero => STOP (pierzând precizie...).
  • 5. Construiește reprezentarea în baza 2 a părții fracționare a numărului, luând fiecare parte întreagă a rezultatelor înmulțirilor efectuate anterior, începând din partea de sus a listei construite:

    0,347(10) = 0,0101 1000 1101 0100 1111 1101(2)

  • 6. Recapitulare - numărul pozitiv înainte de normalizare:

    25,347(10) = 1 1001,0101 1000 1101 0100 1111 1101(2)

  • 7. Normalizează reprezentarea binară a numărului, mutând virgula cu 4 poziții la stânga astfel încât partea întreagă a acestuia să aibă un singur bit, diferit de '0':

    25,347(10) =
    1 1001,0101 1000 1101 0100 1111 1101(2) =
    1 1001,0101 1000 1101 0100 1111 1101(2) × 20 =
    1,1001 0101 1000 1101 0100 1111 1101(2) × 24

  • 8. Până în acest moment avem următoarele elemente ce vor alcătui numărul binar în reprezentare IEEE 754, precizie simplă (32 biți):

    Semn: 1 (număr negativ);

    Exponent (neajustat): 4;

    Mantisă (nenormalizată): 1,1001 0101 1000 1101 0100 1111 1101;

  • 9. Ajustează exponentul folosind reprezentarea deplasată pe 8 biți apoi convertește-l din zecimal (baza 10) în binar (baza 2) pe 8 biți, folosind tehnica împărțirii repetate la 2, așa cum am mai arătat mai sus, ținând minte toate resturile, ce vor alcătui numărul în binar:

    Exponent (ajustat) = Exponent (neajustat) + 2(8-1) - 1 = (4 + 127)(10) = 131(10) =
    1000 0011(2)

  • 10. Normalizează mantisa, renunțând la primul bit (cel mai din stânga), care este întotdeauna '1' (și la semnul zecimal) și ajustându-i lungimea la 23 biți, prin renunțarea la biții în exces, cei din dreapta (pierzând precizie...):

    Mantisă (nenormalizată): 1,1001 0101 1000 1101 0100 1111 1101

    Mantisă (normalizată): 100 1010 1100 0110 1010 0111

  • Concluzia:

    Semn (1 bit) = 1 (un număr negativ)

    Exponent (8 biți) = 1000 0011

    Mantisă (23 biți) = 100 1010 1100 0110 1010 0111

  • Numărul -25,347 convertit din sistem zecimal (baza 10) în binar pe 32 de biți, precizie simplă, în virgulă mobilă în standard IEEE 754 este:
    1 - 1000 0011 - 100 1010 1100 0110 1010 0111