Scrie -36 028 797 010 575 381 ca binar cu semn în reprezentarea în complement față de doi (2)
Cum face calculatorul scrierea numărului -36 028 797 010 575 381(10) din zecimal în binar cu semn în reprezentarea în complement față de doi (2)
Care sunt pașii pentru scrierea numărului
-36 028 797 010 575 381 din zecimal în binar cu semn în reprezentarea în complement față de doi (2)?
- Un număr întreg cu semn, scris în baza zece, sau în sistem zecimal, este un număr scris folosind cifrele de la 0 la 9 și semnul, care poate fi pozitiv (+) sau negativ (-). Dacă e pozitiv de obicei semnul nu se scrie. Un număr scris în baza doi, sau în sistem binar, este un număr scris folosind întotdeauna doar cifrele 0 și 1.
1. Începe cu versiunea pozitivă a numărului:
|-36 028 797 010 575 381| = 36 028 797 010 575 381
2. Împarte numărul în mod repetat la 2:
Ținem minte fiecare rest al împărțirilor.
Ne oprim când obținem un cât egal cu zero.
- împărțire = cât + rest;
- 36 028 797 010 575 381 : 2 = 18 014 398 505 287 690 + 1;
- 18 014 398 505 287 690 : 2 = 9 007 199 252 643 845 + 0;
- 9 007 199 252 643 845 : 2 = 4 503 599 626 321 922 + 1;
- 4 503 599 626 321 922 : 2 = 2 251 799 813 160 961 + 0;
- 2 251 799 813 160 961 : 2 = 1 125 899 906 580 480 + 1;
- 1 125 899 906 580 480 : 2 = 562 949 953 290 240 + 0;
- 562 949 953 290 240 : 2 = 281 474 976 645 120 + 0;
- 281 474 976 645 120 : 2 = 140 737 488 322 560 + 0;
- 140 737 488 322 560 : 2 = 70 368 744 161 280 + 0;
- 70 368 744 161 280 : 2 = 35 184 372 080 640 + 0;
- 35 184 372 080 640 : 2 = 17 592 186 040 320 + 0;
- 17 592 186 040 320 : 2 = 8 796 093 020 160 + 0;
- 8 796 093 020 160 : 2 = 4 398 046 510 080 + 0;
- 4 398 046 510 080 : 2 = 2 199 023 255 040 + 0;
- 2 199 023 255 040 : 2 = 1 099 511 627 520 + 0;
- 1 099 511 627 520 : 2 = 549 755 813 760 + 0;
- 549 755 813 760 : 2 = 274 877 906 880 + 0;
- 274 877 906 880 : 2 = 137 438 953 440 + 0;
- 137 438 953 440 : 2 = 68 719 476 720 + 0;
- 68 719 476 720 : 2 = 34 359 738 360 + 0;
- 34 359 738 360 : 2 = 17 179 869 180 + 0;
- 17 179 869 180 : 2 = 8 589 934 590 + 0;
- 8 589 934 590 : 2 = 4 294 967 295 + 0;
- 4 294 967 295 : 2 = 2 147 483 647 + 1;
- 2 147 483 647 : 2 = 1 073 741 823 + 1;
- 1 073 741 823 : 2 = 536 870 911 + 1;
- 536 870 911 : 2 = 268 435 455 + 1;
- 268 435 455 : 2 = 134 217 727 + 1;
- 134 217 727 : 2 = 67 108 863 + 1;
- 67 108 863 : 2 = 33 554 431 + 1;
- 33 554 431 : 2 = 16 777 215 + 1;
- 16 777 215 : 2 = 8 388 607 + 1;
- 8 388 607 : 2 = 4 194 303 + 1;
- 4 194 303 : 2 = 2 097 151 + 1;
- 2 097 151 : 2 = 1 048 575 + 1;
- 1 048 575 : 2 = 524 287 + 1;
- 524 287 : 2 = 262 143 + 1;
- 262 143 : 2 = 131 071 + 1;
- 131 071 : 2 = 65 535 + 1;
- 65 535 : 2 = 32 767 + 1;
- 32 767 : 2 = 16 383 + 1;
- 16 383 : 2 = 8 191 + 1;
- 8 191 : 2 = 4 095 + 1;
- 4 095 : 2 = 2 047 + 1;
- 2 047 : 2 = 1 023 + 1;
- 1 023 : 2 = 511 + 1;
- 511 : 2 = 255 + 1;
- 255 : 2 = 127 + 1;
- 127 : 2 = 63 + 1;
- 63 : 2 = 31 + 1;
- 31 : 2 = 15 + 1;
- 15 : 2 = 7 + 1;
- 7 : 2 = 3 + 1;
- 3 : 2 = 1 + 1;
- 1 : 2 = 0 + 1;
3. Construiește reprezentarea numărului pozitiv în baza 2:
Luăm fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus.
36 028 797 010 575 381(10) = 111 1111 1111 1111 1111 1111 1111 1111 1000 0000 0000 0000 0001 0101(2)
4. Determinăm lungimea în biți a numărului binar cu semn:
Lungimea actuală a numărului în baza 2, în biți: 55.
- Lungimea în biți a unui număr binar cu semn trebuie să fie egală cu o putere a lui 2:
- 21 = 2; 22 = 4; 23 = 8; 24 = 16; 25 = 32; 26 = 64; ...
- Primul bit (cel mai din stânga) indică semnul:
- 0 = număr întreg pozitiv, 1 = număr întreg negativ
Cel mai mic număr care este:
1) o putere a lui 2
2) și e mai mare decât lungimea actuală, 55,
3) astfel încât primul bit (cel mai din stânga) să fie zero
(avem de a face la acest moment cu un număr pozitiv)
=== este: 64.
5. Determină numărul binar pozitiv reprezentat în limbaj calculator, pe 64 biți (8 Octeți):
Dacă e nevoie, completează cu 0 în fața numărului în baza 2, până la lungimea cerută, 64.
36 028 797 010 575 381(10) = 0000 0000 0111 1111 1111 1111 1111 1111 1111 1111 1000 0000 0000 0000 0001 0101
6. Obține reprezentarea numărului întreg negativ. Partea I:
- Pentru a scrie numărul întreg negativ pe 64 biți (8 Octeți), ca binar cu semn în reprezentarea în complement față de unu, schimbă toți biții setați pe 0 cu 1 și toți biții setați pe 1 cu 0.
Schimbă biții:
Înlocuiește toți biții setați pe 0 cu 1 și toți biții setați pe 1 cu 0.
!(0000 0000 0111 1111 1111 1111 1111 1111 1111 1111 1000 0000 0000 0000 0001 0101)
= 1111 1111 1000 0000 0000 0000 0000 0000 0000 0000 0111 1111 1111 1111 1110 1010
7. Obține reprezentarea numărului întreg negativ. Partea a II-a:
- Pentru a scrie numărul întreg negativ pe 64 biți (8 Octeți), ca binar cu semn în reprezentarea în complement față de doi, adună 1 la numărul obținut mai sus 1111 1111 1000 0000 0000 0000 0000 0000 0000 0000 0111 1111 1111 1111 1110 1010 (la nr. binar cu semn în reprezentarea în complement față de unu).
La adunarea numerelor binare trecerea peste ordin se face la 2:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 1 = 10
- 1 + 10 = 11
- 1 + 11 = 100
Adună 1 la numărul obținut mai sus
(la numărul binar cu semn în reprezentarea în complement față de unu):
-36 028 797 010 575 381 =
1111 1111 1000 0000 0000 0000 0000 0000 0000 0000 0111 1111 1111 1111 1110 1010 + 1
Numărul -36 028 797 010 575 381(10) scris din zecimal în binar cu semn în reprezentarea în complement față de doi (2):
-36 028 797 010 575 381(10) = 1111 1111 1000 0000 0000 0000 0000 0000 0000 0000 0111 1111 1111 1111 1110 1011
Spații au fost folosite pentru a grupa digiți, în binar câte 4, în zecimal câte 3.