1 001 111 110 765 611 112 342 342 340 012 298 789 scris ca binar pe 32 biți, precizie simplă, virgulă mobilă în standard IEEE 754

Scriere 1 001 111 110 765 611 112 342 342 340 012 298 789(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
1 001 111 110 765 611 112 342 342 340 012 298 789(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;
  • 1 001 111 110 765 611 112 342 342 340 012 298 789 : 2 = 500 555 555 382 805 556 171 171 170 006 149 394 + 1;
  • 500 555 555 382 805 556 171 171 170 006 149 394 : 2 = 250 277 777 691 402 778 085 585 585 003 074 697 + 0;
  • 250 277 777 691 402 778 085 585 585 003 074 697 : 2 = 125 138 888 845 701 389 042 792 792 501 537 348 + 1;
  • 125 138 888 845 701 389 042 792 792 501 537 348 : 2 = 62 569 444 422 850 694 521 396 396 250 768 674 + 0;
  • 62 569 444 422 850 694 521 396 396 250 768 674 : 2 = 31 284 722 211 425 347 260 698 198 125 384 337 + 0;
  • 31 284 722 211 425 347 260 698 198 125 384 337 : 2 = 15 642 361 105 712 673 630 349 099 062 692 168 + 1;
  • 15 642 361 105 712 673 630 349 099 062 692 168 : 2 = 7 821 180 552 856 336 815 174 549 531 346 084 + 0;
  • 7 821 180 552 856 336 815 174 549 531 346 084 : 2 = 3 910 590 276 428 168 407 587 274 765 673 042 + 0;
  • 3 910 590 276 428 168 407 587 274 765 673 042 : 2 = 1 955 295 138 214 084 203 793 637 382 836 521 + 0;
  • 1 955 295 138 214 084 203 793 637 382 836 521 : 2 = 977 647 569 107 042 101 896 818 691 418 260 + 1;
  • 977 647 569 107 042 101 896 818 691 418 260 : 2 = 488 823 784 553 521 050 948 409 345 709 130 + 0;
  • 488 823 784 553 521 050 948 409 345 709 130 : 2 = 244 411 892 276 760 525 474 204 672 854 565 + 0;
  • 244 411 892 276 760 525 474 204 672 854 565 : 2 = 122 205 946 138 380 262 737 102 336 427 282 + 1;
  • 122 205 946 138 380 262 737 102 336 427 282 : 2 = 61 102 973 069 190 131 368 551 168 213 641 + 0;
  • 61 102 973 069 190 131 368 551 168 213 641 : 2 = 30 551 486 534 595 065 684 275 584 106 820 + 1;
  • 30 551 486 534 595 065 684 275 584 106 820 : 2 = 15 275 743 267 297 532 842 137 792 053 410 + 0;
  • 15 275 743 267 297 532 842 137 792 053 410 : 2 = 7 637 871 633 648 766 421 068 896 026 705 + 0;
  • 7 637 871 633 648 766 421 068 896 026 705 : 2 = 3 818 935 816 824 383 210 534 448 013 352 + 1;
  • 3 818 935 816 824 383 210 534 448 013 352 : 2 = 1 909 467 908 412 191 605 267 224 006 676 + 0;
  • 1 909 467 908 412 191 605 267 224 006 676 : 2 = 954 733 954 206 095 802 633 612 003 338 + 0;
  • 954 733 954 206 095 802 633 612 003 338 : 2 = 477 366 977 103 047 901 316 806 001 669 + 0;
  • 477 366 977 103 047 901 316 806 001 669 : 2 = 238 683 488 551 523 950 658 403 000 834 + 1;
  • 238 683 488 551 523 950 658 403 000 834 : 2 = 119 341 744 275 761 975 329 201 500 417 + 0;
  • 119 341 744 275 761 975 329 201 500 417 : 2 = 59 670 872 137 880 987 664 600 750 208 + 1;
  • 59 670 872 137 880 987 664 600 750 208 : 2 = 29 835 436 068 940 493 832 300 375 104 + 0;
  • 29 835 436 068 940 493 832 300 375 104 : 2 = 14 917 718 034 470 246 916 150 187 552 + 0;
  • 14 917 718 034 470 246 916 150 187 552 : 2 = 7 458 859 017 235 123 458 075 093 776 + 0;
  • 7 458 859 017 235 123 458 075 093 776 : 2 = 3 729 429 508 617 561 729 037 546 888 + 0;
  • 3 729 429 508 617 561 729 037 546 888 : 2 = 1 864 714 754 308 780 864 518 773 444 + 0;
  • 1 864 714 754 308 780 864 518 773 444 : 2 = 932 357 377 154 390 432 259 386 722 + 0;
  • 932 357 377 154 390 432 259 386 722 : 2 = 466 178 688 577 195 216 129 693 361 + 0;
  • 466 178 688 577 195 216 129 693 361 : 2 = 233 089 344 288 597 608 064 846 680 + 1;
  • 233 089 344 288 597 608 064 846 680 : 2 = 116 544 672 144 298 804 032 423 340 + 0;
  • 116 544 672 144 298 804 032 423 340 : 2 = 58 272 336 072 149 402 016 211 670 + 0;
  • 58 272 336 072 149 402 016 211 670 : 2 = 29 136 168 036 074 701 008 105 835 + 0;
  • 29 136 168 036 074 701 008 105 835 : 2 = 14 568 084 018 037 350 504 052 917 + 1;
  • 14 568 084 018 037 350 504 052 917 : 2 = 7 284 042 009 018 675 252 026 458 + 1;
  • 7 284 042 009 018 675 252 026 458 : 2 = 3 642 021 004 509 337 626 013 229 + 0;
  • 3 642 021 004 509 337 626 013 229 : 2 = 1 821 010 502 254 668 813 006 614 + 1;
  • 1 821 010 502 254 668 813 006 614 : 2 = 910 505 251 127 334 406 503 307 + 0;
  • 910 505 251 127 334 406 503 307 : 2 = 455 252 625 563 667 203 251 653 + 1;
  • 455 252 625 563 667 203 251 653 : 2 = 227 626 312 781 833 601 625 826 + 1;
  • 227 626 312 781 833 601 625 826 : 2 = 113 813 156 390 916 800 812 913 + 0;
  • 113 813 156 390 916 800 812 913 : 2 = 56 906 578 195 458 400 406 456 + 1;
  • 56 906 578 195 458 400 406 456 : 2 = 28 453 289 097 729 200 203 228 + 0;
  • 28 453 289 097 729 200 203 228 : 2 = 14 226 644 548 864 600 101 614 + 0;
  • 14 226 644 548 864 600 101 614 : 2 = 7 113 322 274 432 300 050 807 + 0;
  • 7 113 322 274 432 300 050 807 : 2 = 3 556 661 137 216 150 025 403 + 1;
  • 3 556 661 137 216 150 025 403 : 2 = 1 778 330 568 608 075 012 701 + 1;
  • 1 778 330 568 608 075 012 701 : 2 = 889 165 284 304 037 506 350 + 1;
  • 889 165 284 304 037 506 350 : 2 = 444 582 642 152 018 753 175 + 0;
  • 444 582 642 152 018 753 175 : 2 = 222 291 321 076 009 376 587 + 1;
  • 222 291 321 076 009 376 587 : 2 = 111 145 660 538 004 688 293 + 1;
  • 111 145 660 538 004 688 293 : 2 = 55 572 830 269 002 344 146 + 1;
  • 55 572 830 269 002 344 146 : 2 = 27 786 415 134 501 172 073 + 0;
  • 27 786 415 134 501 172 073 : 2 = 13 893 207 567 250 586 036 + 1;
  • 13 893 207 567 250 586 036 : 2 = 6 946 603 783 625 293 018 + 0;
  • 6 946 603 783 625 293 018 : 2 = 3 473 301 891 812 646 509 + 0;
  • 3 473 301 891 812 646 509 : 2 = 1 736 650 945 906 323 254 + 1;
  • 1 736 650 945 906 323 254 : 2 = 868 325 472 953 161 627 + 0;
  • 868 325 472 953 161 627 : 2 = 434 162 736 476 580 813 + 1;
  • 434 162 736 476 580 813 : 2 = 217 081 368 238 290 406 + 1;
  • 217 081 368 238 290 406 : 2 = 108 540 684 119 145 203 + 0;
  • 108 540 684 119 145 203 : 2 = 54 270 342 059 572 601 + 1;
  • 54 270 342 059 572 601 : 2 = 27 135 171 029 786 300 + 1;
  • 27 135 171 029 786 300 : 2 = 13 567 585 514 893 150 + 0;
  • 13 567 585 514 893 150 : 2 = 6 783 792 757 446 575 + 0;
  • 6 783 792 757 446 575 : 2 = 3 391 896 378 723 287 + 1;
  • 3 391 896 378 723 287 : 2 = 1 695 948 189 361 643 + 1;
  • 1 695 948 189 361 643 : 2 = 847 974 094 680 821 + 1;
  • 847 974 094 680 821 : 2 = 423 987 047 340 410 + 1;
  • 423 987 047 340 410 : 2 = 211 993 523 670 205 + 0;
  • 211 993 523 670 205 : 2 = 105 996 761 835 102 + 1;
  • 105 996 761 835 102 : 2 = 52 998 380 917 551 + 0;
  • 52 998 380 917 551 : 2 = 26 499 190 458 775 + 1;
  • 26 499 190 458 775 : 2 = 13 249 595 229 387 + 1;
  • 13 249 595 229 387 : 2 = 6 624 797 614 693 + 1;
  • 6 624 797 614 693 : 2 = 3 312 398 807 346 + 1;
  • 3 312 398 807 346 : 2 = 1 656 199 403 673 + 0;
  • 1 656 199 403 673 : 2 = 828 099 701 836 + 1;
  • 828 099 701 836 : 2 = 414 049 850 918 + 0;
  • 414 049 850 918 : 2 = 207 024 925 459 + 0;
  • 207 024 925 459 : 2 = 103 512 462 729 + 1;
  • 103 512 462 729 : 2 = 51 756 231 364 + 1;
  • 51 756 231 364 : 2 = 25 878 115 682 + 0;
  • 25 878 115 682 : 2 = 12 939 057 841 + 0;
  • 12 939 057 841 : 2 = 6 469 528 920 + 1;
  • 6 469 528 920 : 2 = 3 234 764 460 + 0;
  • 3 234 764 460 : 2 = 1 617 382 230 + 0;
  • 1 617 382 230 : 2 = 808 691 115 + 0;
  • 808 691 115 : 2 = 404 345 557 + 1;
  • 404 345 557 : 2 = 202 172 778 + 1;
  • 202 172 778 : 2 = 101 086 389 + 0;
  • 101 086 389 : 2 = 50 543 194 + 1;
  • 50 543 194 : 2 = 25 271 597 + 0;
  • 25 271 597 : 2 = 12 635 798 + 1;
  • 12 635 798 : 2 = 6 317 899 + 0;
  • 6 317 899 : 2 = 3 158 949 + 1;
  • 3 158 949 : 2 = 1 579 474 + 1;
  • 1 579 474 : 2 = 789 737 + 0;
  • 789 737 : 2 = 394 868 + 1;
  • 394 868 : 2 = 197 434 + 0;
  • 197 434 : 2 = 98 717 + 0;
  • 98 717 : 2 = 49 358 + 1;
  • 49 358 : 2 = 24 679 + 0;
  • 24 679 : 2 = 12 339 + 1;
  • 12 339 : 2 = 6 169 + 1;
  • 6 169 : 2 = 3 084 + 1;
  • 3 084 : 2 = 1 542 + 0;
  • 1 542 : 2 = 771 + 0;
  • 771 : 2 = 385 + 1;
  • 385 : 2 = 192 + 1;
  • 192 : 2 = 96 + 0;
  • 96 : 2 = 48 + 0;
  • 48 : 2 = 24 + 0;
  • 24 : 2 = 12 + 0;
  • 12 : 2 = 6 + 0;
  • 6 : 2 = 3 + 0;
  • 3 : 2 = 1 + 1;
  • 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.

1 001 111 110 765 611 112 342 342 340 012 298 789(10) =


1100 0000 1100 1110 1001 0110 1010 1100 0100 1100 1011 1101 0111 1001 1011 0100 1011 1011 1000 1011 0101 1000 1000 0000 1010 0010 0101 0010 0010 0101(2)


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

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


1 001 111 110 765 611 112 342 342 340 012 298 789(10) =


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


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


1,1000 0001 1001 1101 0010 1101 0101 1000 1001 1001 0111 1010 1111 0011 0110 1001 0111 0111 0001 0110 1011 0001 0000 0001 0100 0100 1010 0100 0100 101(2) × 2119


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): 119


Mantisă (nenormalizată):
1,1000 0001 1001 1101 0010 1101 0101 1000 1001 1001 0111 1010 1111 0011 0110 1001 0111 0111 0001 0110 1011 0001 0000 0001 0100 0100 1010 0100 0100 101


5. Ajustează exponentul.

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


Exponent (ajustat) =


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


119 + 2(8-1) - 1 =


(119 + 127)(10) =


246(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;
  • 246 : 2 = 123 + 0;
  • 123 : 2 = 61 + 1;
  • 61 : 2 = 30 + 1;
  • 30 : 2 = 15 + 0;
  • 15 : 2 = 7 + 1;
  • 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) =


246(10) =


1111 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. 100 0000 1100 1110 1001 0110 1010 1100 0100 1100 1011 1101 0111 1001 1011 0100 1011 1011 1000 1011 0101 1000 1000 0000 1010 0010 0101 0010 0010 0101 =


100 0000 1100 1110 1001 0110


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) =
1111 0110


Mantisă (23 biți) =
100 0000 1100 1110 1001 0110


Numărul zecimal 1 001 111 110 765 611 112 342 342 340 012 298 789 scris în binar în representarea pe 32 biți, precizie simplă, în virgulă mobilă în standard IEEE 754:

0 - 1111 0110 - 100 0000 1100 1110 1001 0110


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