11 010 011 010 111 011 101 001 011 008 496 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754

Scriere 11 010 011 010 111 011 101 001 011 008 496(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 010 011 010 111 011 101 001 011 008 496(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 010 011 010 111 011 101 001 011 008 496 : 2 = 5 505 005 505 055 505 550 500 505 504 248 + 0;
  • 5 505 005 505 055 505 550 500 505 504 248 : 2 = 2 752 502 752 527 752 775 250 252 752 124 + 0;
  • 2 752 502 752 527 752 775 250 252 752 124 : 2 = 1 376 251 376 263 876 387 625 126 376 062 + 0;
  • 1 376 251 376 263 876 387 625 126 376 062 : 2 = 688 125 688 131 938 193 812 563 188 031 + 0;
  • 688 125 688 131 938 193 812 563 188 031 : 2 = 344 062 844 065 969 096 906 281 594 015 + 1;
  • 344 062 844 065 969 096 906 281 594 015 : 2 = 172 031 422 032 984 548 453 140 797 007 + 1;
  • 172 031 422 032 984 548 453 140 797 007 : 2 = 86 015 711 016 492 274 226 570 398 503 + 1;
  • 86 015 711 016 492 274 226 570 398 503 : 2 = 43 007 855 508 246 137 113 285 199 251 + 1;
  • 43 007 855 508 246 137 113 285 199 251 : 2 = 21 503 927 754 123 068 556 642 599 625 + 1;
  • 21 503 927 754 123 068 556 642 599 625 : 2 = 10 751 963 877 061 534 278 321 299 812 + 1;
  • 10 751 963 877 061 534 278 321 299 812 : 2 = 5 375 981 938 530 767 139 160 649 906 + 0;
  • 5 375 981 938 530 767 139 160 649 906 : 2 = 2 687 990 969 265 383 569 580 324 953 + 0;
  • 2 687 990 969 265 383 569 580 324 953 : 2 = 1 343 995 484 632 691 784 790 162 476 + 1;
  • 1 343 995 484 632 691 784 790 162 476 : 2 = 671 997 742 316 345 892 395 081 238 + 0;
  • 671 997 742 316 345 892 395 081 238 : 2 = 335 998 871 158 172 946 197 540 619 + 0;
  • 335 998 871 158 172 946 197 540 619 : 2 = 167 999 435 579 086 473 098 770 309 + 1;
  • 167 999 435 579 086 473 098 770 309 : 2 = 83 999 717 789 543 236 549 385 154 + 1;
  • 83 999 717 789 543 236 549 385 154 : 2 = 41 999 858 894 771 618 274 692 577 + 0;
  • 41 999 858 894 771 618 274 692 577 : 2 = 20 999 929 447 385 809 137 346 288 + 1;
  • 20 999 929 447 385 809 137 346 288 : 2 = 10 499 964 723 692 904 568 673 144 + 0;
  • 10 499 964 723 692 904 568 673 144 : 2 = 5 249 982 361 846 452 284 336 572 + 0;
  • 5 249 982 361 846 452 284 336 572 : 2 = 2 624 991 180 923 226 142 168 286 + 0;
  • 2 624 991 180 923 226 142 168 286 : 2 = 1 312 495 590 461 613 071 084 143 + 0;
  • 1 312 495 590 461 613 071 084 143 : 2 = 656 247 795 230 806 535 542 071 + 1;
  • 656 247 795 230 806 535 542 071 : 2 = 328 123 897 615 403 267 771 035 + 1;
  • 328 123 897 615 403 267 771 035 : 2 = 164 061 948 807 701 633 885 517 + 1;
  • 164 061 948 807 701 633 885 517 : 2 = 82 030 974 403 850 816 942 758 + 1;
  • 82 030 974 403 850 816 942 758 : 2 = 41 015 487 201 925 408 471 379 + 0;
  • 41 015 487 201 925 408 471 379 : 2 = 20 507 743 600 962 704 235 689 + 1;
  • 20 507 743 600 962 704 235 689 : 2 = 10 253 871 800 481 352 117 844 + 1;
  • 10 253 871 800 481 352 117 844 : 2 = 5 126 935 900 240 676 058 922 + 0;
  • 5 126 935 900 240 676 058 922 : 2 = 2 563 467 950 120 338 029 461 + 0;
  • 2 563 467 950 120 338 029 461 : 2 = 1 281 733 975 060 169 014 730 + 1;
  • 1 281 733 975 060 169 014 730 : 2 = 640 866 987 530 084 507 365 + 0;
  • 640 866 987 530 084 507 365 : 2 = 320 433 493 765 042 253 682 + 1;
  • 320 433 493 765 042 253 682 : 2 = 160 216 746 882 521 126 841 + 0;
  • 160 216 746 882 521 126 841 : 2 = 80 108 373 441 260 563 420 + 1;
  • 80 108 373 441 260 563 420 : 2 = 40 054 186 720 630 281 710 + 0;
  • 40 054 186 720 630 281 710 : 2 = 20 027 093 360 315 140 855 + 0;
  • 20 027 093 360 315 140 855 : 2 = 10 013 546 680 157 570 427 + 1;
  • 10 013 546 680 157 570 427 : 2 = 5 006 773 340 078 785 213 + 1;
  • 5 006 773 340 078 785 213 : 2 = 2 503 386 670 039 392 606 + 1;
  • 2 503 386 670 039 392 606 : 2 = 1 251 693 335 019 696 303 + 0;
  • 1 251 693 335 019 696 303 : 2 = 625 846 667 509 848 151 + 1;
  • 625 846 667 509 848 151 : 2 = 312 923 333 754 924 075 + 1;
  • 312 923 333 754 924 075 : 2 = 156 461 666 877 462 037 + 1;
  • 156 461 666 877 462 037 : 2 = 78 230 833 438 731 018 + 1;
  • 78 230 833 438 731 018 : 2 = 39 115 416 719 365 509 + 0;
  • 39 115 416 719 365 509 : 2 = 19 557 708 359 682 754 + 1;
  • 19 557 708 359 682 754 : 2 = 9 778 854 179 841 377 + 0;
  • 9 778 854 179 841 377 : 2 = 4 889 427 089 920 688 + 1;
  • 4 889 427 089 920 688 : 2 = 2 444 713 544 960 344 + 0;
  • 2 444 713 544 960 344 : 2 = 1 222 356 772 480 172 + 0;
  • 1 222 356 772 480 172 : 2 = 611 178 386 240 086 + 0;
  • 611 178 386 240 086 : 2 = 305 589 193 120 043 + 0;
  • 305 589 193 120 043 : 2 = 152 794 596 560 021 + 1;
  • 152 794 596 560 021 : 2 = 76 397 298 280 010 + 1;
  • 76 397 298 280 010 : 2 = 38 198 649 140 005 + 0;
  • 38 198 649 140 005 : 2 = 19 099 324 570 002 + 1;
  • 19 099 324 570 002 : 2 = 9 549 662 285 001 + 0;
  • 9 549 662 285 001 : 2 = 4 774 831 142 500 + 1;
  • 4 774 831 142 500 : 2 = 2 387 415 571 250 + 0;
  • 2 387 415 571 250 : 2 = 1 193 707 785 625 + 0;
  • 1 193 707 785 625 : 2 = 596 853 892 812 + 1;
  • 596 853 892 812 : 2 = 298 426 946 406 + 0;
  • 298 426 946 406 : 2 = 149 213 473 203 + 0;
  • 149 213 473 203 : 2 = 74 606 736 601 + 1;
  • 74 606 736 601 : 2 = 37 303 368 300 + 1;
  • 37 303 368 300 : 2 = 18 651 684 150 + 0;
  • 18 651 684 150 : 2 = 9 325 842 075 + 0;
  • 9 325 842 075 : 2 = 4 662 921 037 + 1;
  • 4 662 921 037 : 2 = 2 331 460 518 + 1;
  • 2 331 460 518 : 2 = 1 165 730 259 + 0;
  • 1 165 730 259 : 2 = 582 865 129 + 1;
  • 582 865 129 : 2 = 291 432 564 + 1;
  • 291 432 564 : 2 = 145 716 282 + 0;
  • 145 716 282 : 2 = 72 858 141 + 0;
  • 72 858 141 : 2 = 36 429 070 + 1;
  • 36 429 070 : 2 = 18 214 535 + 0;
  • 18 214 535 : 2 = 9 107 267 + 1;
  • 9 107 267 : 2 = 4 553 633 + 1;
  • 4 553 633 : 2 = 2 276 816 + 1;
  • 2 276 816 : 2 = 1 138 408 + 0;
  • 1 138 408 : 2 = 569 204 + 0;
  • 569 204 : 2 = 284 602 + 0;
  • 284 602 : 2 = 142 301 + 0;
  • 142 301 : 2 = 71 150 + 1;
  • 71 150 : 2 = 35 575 + 0;
  • 35 575 : 2 = 17 787 + 1;
  • 17 787 : 2 = 8 893 + 1;
  • 8 893 : 2 = 4 446 + 1;
  • 4 446 : 2 = 2 223 + 0;
  • 2 223 : 2 = 1 111 + 1;
  • 1 111 : 2 = 555 + 1;
  • 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 010 011 010 111 011 101 001 011 008 496(10) =


1000 1010 1111 0111 0100 0011 1010 0110 1100 1100 1001 0101 1000 0101 0111 1011 1001 0101 0011 0111 1000 0101 1001 0011 1111 0000(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 010 011 010 111 011 101 001 011 008 496(10) =


1000 1010 1111 0111 0100 0011 1010 0110 1100 1100 1001 0101 1000 0101 0111 1011 1001 0101 0011 0111 1000 0101 1001 0011 1111 0000(2) =


1000 1010 1111 0111 0100 0011 1010 0110 1100 1100 1001 0101 1000 0101 0111 1011 1001 0101 0011 0111 1000 0101 1001 0011 1111 0000(2) × 20 =


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


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 1111 0111 0100 0011 1010 0110 1100 1100 1001 0101 1000 0101 0111 1011 1001 0101 0011 0111 1000 0101 1001 0011 1111 0000 =


000 1010 1111 0111 0100 0011


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 1111 0111 0100 0011


Numărul zecimal 11 010 011 010 111 011 101 001 011 008 496 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:

0 - 1110 0110 - 000 1010 1111 0111 0100 0011

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