11 000 101 011 101 001 110 999 999 999 009 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754

Scriere 11 000 101 011 101 001 110 999 999 999 009(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 101 011 101 001 110 999 999 999 009(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 101 011 101 001 110 999 999 999 009 : 2 = 5 500 050 505 550 500 555 499 999 999 504 + 1;
  • 5 500 050 505 550 500 555 499 999 999 504 : 2 = 2 750 025 252 775 250 277 749 999 999 752 + 0;
  • 2 750 025 252 775 250 277 749 999 999 752 : 2 = 1 375 012 626 387 625 138 874 999 999 876 + 0;
  • 1 375 012 626 387 625 138 874 999 999 876 : 2 = 687 506 313 193 812 569 437 499 999 938 + 0;
  • 687 506 313 193 812 569 437 499 999 938 : 2 = 343 753 156 596 906 284 718 749 999 969 + 0;
  • 343 753 156 596 906 284 718 749 999 969 : 2 = 171 876 578 298 453 142 359 374 999 984 + 1;
  • 171 876 578 298 453 142 359 374 999 984 : 2 = 85 938 289 149 226 571 179 687 499 992 + 0;
  • 85 938 289 149 226 571 179 687 499 992 : 2 = 42 969 144 574 613 285 589 843 749 996 + 0;
  • 42 969 144 574 613 285 589 843 749 996 : 2 = 21 484 572 287 306 642 794 921 874 998 + 0;
  • 21 484 572 287 306 642 794 921 874 998 : 2 = 10 742 286 143 653 321 397 460 937 499 + 0;
  • 10 742 286 143 653 321 397 460 937 499 : 2 = 5 371 143 071 826 660 698 730 468 749 + 1;
  • 5 371 143 071 826 660 698 730 468 749 : 2 = 2 685 571 535 913 330 349 365 234 374 + 1;
  • 2 685 571 535 913 330 349 365 234 374 : 2 = 1 342 785 767 956 665 174 682 617 187 + 0;
  • 1 342 785 767 956 665 174 682 617 187 : 2 = 671 392 883 978 332 587 341 308 593 + 1;
  • 671 392 883 978 332 587 341 308 593 : 2 = 335 696 441 989 166 293 670 654 296 + 1;
  • 335 696 441 989 166 293 670 654 296 : 2 = 167 848 220 994 583 146 835 327 148 + 0;
  • 167 848 220 994 583 146 835 327 148 : 2 = 83 924 110 497 291 573 417 663 574 + 0;
  • 83 924 110 497 291 573 417 663 574 : 2 = 41 962 055 248 645 786 708 831 787 + 0;
  • 41 962 055 248 645 786 708 831 787 : 2 = 20 981 027 624 322 893 354 415 893 + 1;
  • 20 981 027 624 322 893 354 415 893 : 2 = 10 490 513 812 161 446 677 207 946 + 1;
  • 10 490 513 812 161 446 677 207 946 : 2 = 5 245 256 906 080 723 338 603 973 + 0;
  • 5 245 256 906 080 723 338 603 973 : 2 = 2 622 628 453 040 361 669 301 986 + 1;
  • 2 622 628 453 040 361 669 301 986 : 2 = 1 311 314 226 520 180 834 650 993 + 0;
  • 1 311 314 226 520 180 834 650 993 : 2 = 655 657 113 260 090 417 325 496 + 1;
  • 655 657 113 260 090 417 325 496 : 2 = 327 828 556 630 045 208 662 748 + 0;
  • 327 828 556 630 045 208 662 748 : 2 = 163 914 278 315 022 604 331 374 + 0;
  • 163 914 278 315 022 604 331 374 : 2 = 81 957 139 157 511 302 165 687 + 0;
  • 81 957 139 157 511 302 165 687 : 2 = 40 978 569 578 755 651 082 843 + 1;
  • 40 978 569 578 755 651 082 843 : 2 = 20 489 284 789 377 825 541 421 + 1;
  • 20 489 284 789 377 825 541 421 : 2 = 10 244 642 394 688 912 770 710 + 1;
  • 10 244 642 394 688 912 770 710 : 2 = 5 122 321 197 344 456 385 355 + 0;
  • 5 122 321 197 344 456 385 355 : 2 = 2 561 160 598 672 228 192 677 + 1;
  • 2 561 160 598 672 228 192 677 : 2 = 1 280 580 299 336 114 096 338 + 1;
  • 1 280 580 299 336 114 096 338 : 2 = 640 290 149 668 057 048 169 + 0;
  • 640 290 149 668 057 048 169 : 2 = 320 145 074 834 028 524 084 + 1;
  • 320 145 074 834 028 524 084 : 2 = 160 072 537 417 014 262 042 + 0;
  • 160 072 537 417 014 262 042 : 2 = 80 036 268 708 507 131 021 + 0;
  • 80 036 268 708 507 131 021 : 2 = 40 018 134 354 253 565 510 + 1;
  • 40 018 134 354 253 565 510 : 2 = 20 009 067 177 126 782 755 + 0;
  • 20 009 067 177 126 782 755 : 2 = 10 004 533 588 563 391 377 + 1;
  • 10 004 533 588 563 391 377 : 2 = 5 002 266 794 281 695 688 + 1;
  • 5 002 266 794 281 695 688 : 2 = 2 501 133 397 140 847 844 + 0;
  • 2 501 133 397 140 847 844 : 2 = 1 250 566 698 570 423 922 + 0;
  • 1 250 566 698 570 423 922 : 2 = 625 283 349 285 211 961 + 0;
  • 625 283 349 285 211 961 : 2 = 312 641 674 642 605 980 + 1;
  • 312 641 674 642 605 980 : 2 = 156 320 837 321 302 990 + 0;
  • 156 320 837 321 302 990 : 2 = 78 160 418 660 651 495 + 0;
  • 78 160 418 660 651 495 : 2 = 39 080 209 330 325 747 + 1;
  • 39 080 209 330 325 747 : 2 = 19 540 104 665 162 873 + 1;
  • 19 540 104 665 162 873 : 2 = 9 770 052 332 581 436 + 1;
  • 9 770 052 332 581 436 : 2 = 4 885 026 166 290 718 + 0;
  • 4 885 026 166 290 718 : 2 = 2 442 513 083 145 359 + 0;
  • 2 442 513 083 145 359 : 2 = 1 221 256 541 572 679 + 1;
  • 1 221 256 541 572 679 : 2 = 610 628 270 786 339 + 1;
  • 610 628 270 786 339 : 2 = 305 314 135 393 169 + 1;
  • 305 314 135 393 169 : 2 = 152 657 067 696 584 + 1;
  • 152 657 067 696 584 : 2 = 76 328 533 848 292 + 0;
  • 76 328 533 848 292 : 2 = 38 164 266 924 146 + 0;
  • 38 164 266 924 146 : 2 = 19 082 133 462 073 + 0;
  • 19 082 133 462 073 : 2 = 9 541 066 731 036 + 1;
  • 9 541 066 731 036 : 2 = 4 770 533 365 518 + 0;
  • 4 770 533 365 518 : 2 = 2 385 266 682 759 + 0;
  • 2 385 266 682 759 : 2 = 1 192 633 341 379 + 1;
  • 1 192 633 341 379 : 2 = 596 316 670 689 + 1;
  • 596 316 670 689 : 2 = 298 158 335 344 + 1;
  • 298 158 335 344 : 2 = 149 079 167 672 + 0;
  • 149 079 167 672 : 2 = 74 539 583 836 + 0;
  • 74 539 583 836 : 2 = 37 269 791 918 + 0;
  • 37 269 791 918 : 2 = 18 634 895 959 + 0;
  • 18 634 895 959 : 2 = 9 317 447 979 + 1;
  • 9 317 447 979 : 2 = 4 658 723 989 + 1;
  • 4 658 723 989 : 2 = 2 329 361 994 + 1;
  • 2 329 361 994 : 2 = 1 164 680 997 + 0;
  • 1 164 680 997 : 2 = 582 340 498 + 1;
  • 582 340 498 : 2 = 291 170 249 + 0;
  • 291 170 249 : 2 = 145 585 124 + 1;
  • 145 585 124 : 2 = 72 792 562 + 0;
  • 72 792 562 : 2 = 36 396 281 + 0;
  • 36 396 281 : 2 = 18 198 140 + 1;
  • 18 198 140 : 2 = 9 099 070 + 0;
  • 9 099 070 : 2 = 4 549 535 + 0;
  • 4 549 535 : 2 = 2 274 767 + 1;
  • 2 274 767 : 2 = 1 137 383 + 1;
  • 1 137 383 : 2 = 568 691 + 1;
  • 568 691 : 2 = 284 345 + 1;
  • 284 345 : 2 = 142 172 + 1;
  • 142 172 : 2 = 71 086 + 0;
  • 71 086 : 2 = 35 543 + 0;
  • 35 543 : 2 = 17 771 + 1;
  • 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 101 011 101 001 110 999 999 999 009(10) =


1000 1010 1101 0111 0011 1110 0100 1010 1110 0001 1100 1000 1111 0011 1001 0001 1010 0101 1011 1000 1010 1100 0110 1100 0010 0001(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 101 011 101 001 110 999 999 999 009(10) =


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


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


1,0001 0101 1010 1110 0111 1100 1001 0101 1100 0011 1001 0001 1110 0111 0010 0011 0100 1011 0111 0001 0101 1000 1101 1000 0100 001(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 1110 0111 1100 1001 0101 1100 0011 1001 0001 1110 0111 0010 0011 0100 1011 0111 0001 0101 1000 1101 1000 0100 001


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


000 1010 1101 0111 0011 1110


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 0111 0011 1110


Numărul zecimal 11 000 101 011 101 001 110 999 999 999 009 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:

0 - 1110 0110 - 000 1010 1101 0111 0011 1110


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