11 000 000 111 110 000 000 000 000 000 746 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754

Scriere 11 000 000 111 110 000 000 000 000 000 746(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 000 000 111 110 000 000 000 000 000 746(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 000 000 111 110 000 000 000 000 000 746 : 2 = 5 500 000 055 555 000 000 000 000 000 373 + 0;
  • 5 500 000 055 555 000 000 000 000 000 373 : 2 = 2 750 000 027 777 500 000 000 000 000 186 + 1;
  • 2 750 000 027 777 500 000 000 000 000 186 : 2 = 1 375 000 013 888 750 000 000 000 000 093 + 0;
  • 1 375 000 013 888 750 000 000 000 000 093 : 2 = 687 500 006 944 375 000 000 000 000 046 + 1;
  • 687 500 006 944 375 000 000 000 000 046 : 2 = 343 750 003 472 187 500 000 000 000 023 + 0;
  • 343 750 003 472 187 500 000 000 000 023 : 2 = 171 875 001 736 093 750 000 000 000 011 + 1;
  • 171 875 001 736 093 750 000 000 000 011 : 2 = 85 937 500 868 046 875 000 000 000 005 + 1;
  • 85 937 500 868 046 875 000 000 000 005 : 2 = 42 968 750 434 023 437 500 000 000 002 + 1;
  • 42 968 750 434 023 437 500 000 000 002 : 2 = 21 484 375 217 011 718 750 000 000 001 + 0;
  • 21 484 375 217 011 718 750 000 000 001 : 2 = 10 742 187 608 505 859 375 000 000 000 + 1;
  • 10 742 187 608 505 859 375 000 000 000 : 2 = 5 371 093 804 252 929 687 500 000 000 + 0;
  • 5 371 093 804 252 929 687 500 000 000 : 2 = 2 685 546 902 126 464 843 750 000 000 + 0;
  • 2 685 546 902 126 464 843 750 000 000 : 2 = 1 342 773 451 063 232 421 875 000 000 + 0;
  • 1 342 773 451 063 232 421 875 000 000 : 2 = 671 386 725 531 616 210 937 500 000 + 0;
  • 671 386 725 531 616 210 937 500 000 : 2 = 335 693 362 765 808 105 468 750 000 + 0;
  • 335 693 362 765 808 105 468 750 000 : 2 = 167 846 681 382 904 052 734 375 000 + 0;
  • 167 846 681 382 904 052 734 375 000 : 2 = 83 923 340 691 452 026 367 187 500 + 0;
  • 83 923 340 691 452 026 367 187 500 : 2 = 41 961 670 345 726 013 183 593 750 + 0;
  • 41 961 670 345 726 013 183 593 750 : 2 = 20 980 835 172 863 006 591 796 875 + 0;
  • 20 980 835 172 863 006 591 796 875 : 2 = 10 490 417 586 431 503 295 898 437 + 1;
  • 10 490 417 586 431 503 295 898 437 : 2 = 5 245 208 793 215 751 647 949 218 + 1;
  • 5 245 208 793 215 751 647 949 218 : 2 = 2 622 604 396 607 875 823 974 609 + 0;
  • 2 622 604 396 607 875 823 974 609 : 2 = 1 311 302 198 303 937 911 987 304 + 1;
  • 1 311 302 198 303 937 911 987 304 : 2 = 655 651 099 151 968 955 993 652 + 0;
  • 655 651 099 151 968 955 993 652 : 2 = 327 825 549 575 984 477 996 826 + 0;
  • 327 825 549 575 984 477 996 826 : 2 = 163 912 774 787 992 238 998 413 + 0;
  • 163 912 774 787 992 238 998 413 : 2 = 81 956 387 393 996 119 499 206 + 1;
  • 81 956 387 393 996 119 499 206 : 2 = 40 978 193 696 998 059 749 603 + 0;
  • 40 978 193 696 998 059 749 603 : 2 = 20 489 096 848 499 029 874 801 + 1;
  • 20 489 096 848 499 029 874 801 : 2 = 10 244 548 424 249 514 937 400 + 1;
  • 10 244 548 424 249 514 937 400 : 2 = 5 122 274 212 124 757 468 700 + 0;
  • 5 122 274 212 124 757 468 700 : 2 = 2 561 137 106 062 378 734 350 + 0;
  • 2 561 137 106 062 378 734 350 : 2 = 1 280 568 553 031 189 367 175 + 0;
  • 1 280 568 553 031 189 367 175 : 2 = 640 284 276 515 594 683 587 + 1;
  • 640 284 276 515 594 683 587 : 2 = 320 142 138 257 797 341 793 + 1;
  • 320 142 138 257 797 341 793 : 2 = 160 071 069 128 898 670 896 + 1;
  • 160 071 069 128 898 670 896 : 2 = 80 035 534 564 449 335 448 + 0;
  • 80 035 534 564 449 335 448 : 2 = 40 017 767 282 224 667 724 + 0;
  • 40 017 767 282 224 667 724 : 2 = 20 008 883 641 112 333 862 + 0;
  • 20 008 883 641 112 333 862 : 2 = 10 004 441 820 556 166 931 + 0;
  • 10 004 441 820 556 166 931 : 2 = 5 002 220 910 278 083 465 + 1;
  • 5 002 220 910 278 083 465 : 2 = 2 501 110 455 139 041 732 + 1;
  • 2 501 110 455 139 041 732 : 2 = 1 250 555 227 569 520 866 + 0;
  • 1 250 555 227 569 520 866 : 2 = 625 277 613 784 760 433 + 0;
  • 625 277 613 784 760 433 : 2 = 312 638 806 892 380 216 + 1;
  • 312 638 806 892 380 216 : 2 = 156 319 403 446 190 108 + 0;
  • 156 319 403 446 190 108 : 2 = 78 159 701 723 095 054 + 0;
  • 78 159 701 723 095 054 : 2 = 39 079 850 861 547 527 + 0;
  • 39 079 850 861 547 527 : 2 = 19 539 925 430 773 763 + 1;
  • 19 539 925 430 773 763 : 2 = 9 769 962 715 386 881 + 1;
  • 9 769 962 715 386 881 : 2 = 4 884 981 357 693 440 + 1;
  • 4 884 981 357 693 440 : 2 = 2 442 490 678 846 720 + 0;
  • 2 442 490 678 846 720 : 2 = 1 221 245 339 423 360 + 0;
  • 1 221 245 339 423 360 : 2 = 610 622 669 711 680 + 0;
  • 610 622 669 711 680 : 2 = 305 311 334 855 840 + 0;
  • 305 311 334 855 840 : 2 = 152 655 667 427 920 + 0;
  • 152 655 667 427 920 : 2 = 76 327 833 713 960 + 0;
  • 76 327 833 713 960 : 2 = 38 163 916 856 980 + 0;
  • 38 163 916 856 980 : 2 = 19 081 958 428 490 + 0;
  • 19 081 958 428 490 : 2 = 9 540 979 214 245 + 0;
  • 9 540 979 214 245 : 2 = 4 770 489 607 122 + 1;
  • 4 770 489 607 122 : 2 = 2 385 244 803 561 + 0;
  • 2 385 244 803 561 : 2 = 1 192 622 401 780 + 1;
  • 1 192 622 401 780 : 2 = 596 311 200 890 + 0;
  • 596 311 200 890 : 2 = 298 155 600 445 + 0;
  • 298 155 600 445 : 2 = 149 077 800 222 + 1;
  • 149 077 800 222 : 2 = 74 538 900 111 + 0;
  • 74 538 900 111 : 2 = 37 269 450 055 + 1;
  • 37 269 450 055 : 2 = 18 634 725 027 + 1;
  • 18 634 725 027 : 2 = 9 317 362 513 + 1;
  • 9 317 362 513 : 2 = 4 658 681 256 + 1;
  • 4 658 681 256 : 2 = 2 329 340 628 + 0;
  • 2 329 340 628 : 2 = 1 164 670 314 + 0;
  • 1 164 670 314 : 2 = 582 335 157 + 0;
  • 582 335 157 : 2 = 291 167 578 + 1;
  • 291 167 578 : 2 = 145 583 789 + 0;
  • 145 583 789 : 2 = 72 791 894 + 1;
  • 72 791 894 : 2 = 36 395 947 + 0;
  • 36 395 947 : 2 = 18 197 973 + 1;
  • 18 197 973 : 2 = 9 098 986 + 1;
  • 9 098 986 : 2 = 4 549 493 + 0;
  • 4 549 493 : 2 = 2 274 746 + 1;
  • 2 274 746 : 2 = 1 137 373 + 0;
  • 1 137 373 : 2 = 568 686 + 1;
  • 568 686 : 2 = 284 343 + 0;
  • 284 343 : 2 = 142 171 + 1;
  • 142 171 : 2 = 71 085 + 1;
  • 71 085 : 2 = 35 542 + 1;
  • 35 542 : 2 = 17 771 + 0;
  • 17 771 : 2 = 8 885 + 1;
  • 8 885 : 2 = 4 442 + 1;
  • 4 442 : 2 = 2 221 + 0;
  • 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 000 000 111 110 000 000 000 000 000 746(10) =


1000 1010 1101 0110 1110 1010 1101 0100 0111 1010 0101 0000 0000 0111 0001 0011 0000 1110 0011 0100 0101 1000 0000 0010 1110 1010(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 000 000 111 110 000 000 000 000 000 746(10) =


1000 1010 1101 0110 1110 1010 1101 0100 0111 1010 0101 0000 0000 0111 0001 0011 0000 1110 0011 0100 0101 1000 0000 0010 1110 1010(2) =


1000 1010 1101 0110 1110 1010 1101 0100 0111 1010 0101 0000 0000 0111 0001 0011 0000 1110 0011 0100 0101 1000 0000 0010 1110 1010(2) × 20 =


1,0001 0101 1010 1101 1101 0101 1010 1000 1111 0100 1010 0000 0000 1110 0010 0110 0001 1100 0110 1000 1011 0000 0000 0101 1101 010(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 1010 1101 1101 0101 1010 1000 1111 0100 1010 0000 0000 1110 0010 0110 0001 1100 0110 1000 1011 0000 0000 0101 1101 010


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 0110 1110 1010 1101 0100 0111 1010 0101 0000 0000 0111 0001 0011 0000 1110 0011 0100 0101 1000 0000 0010 1110 1010 =


000 1010 1101 0110 1110 1010


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 0110 1110 1010


Numărul zecimal 11 000 000 111 110 000 000 000 000 000 746 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:

0 - 1110 0110 - 000 1010 1101 0110 1110 1010


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