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;
- 19 531 235 312 : 2 = 9 765 617 656 + 0;
- 9 765 617 656 : 2 = 4 882 808 828 + 0;
- 4 882 808 828 : 2 = 2 441 404 414 + 0;
- 2 441 404 414 : 2 = 1 220 702 207 + 0;
- 1 220 702 207 : 2 = 610 351 103 + 1;
- 610 351 103 : 2 = 305 175 551 + 1;
- 305 175 551 : 2 = 152 587 775 + 1;
- 152 587 775 : 2 = 76 293 887 + 1;
- 76 293 887 : 2 = 38 146 943 + 1;
- 38 146 943 : 2 = 19 073 471 + 1;
- 19 073 471 : 2 = 9 536 735 + 1;
- 9 536 735 : 2 = 4 768 367 + 1;
- 4 768 367 : 2 = 2 384 183 + 1;
- 2 384 183 : 2 = 1 192 091 + 1;
- 1 192 091 : 2 = 596 045 + 1;
- 596 045 : 2 = 298 022 + 1;
- 298 022 : 2 = 149 011 + 0;
- 149 011 : 2 = 74 505 + 1;
- 74 505 : 2 = 37 252 + 1;
- 37 252 : 2 = 18 626 + 0;
- 18 626 : 2 = 9 313 + 0;
- 9 313 : 2 = 4 656 + 1;
- 4 656 : 2 = 2 328 + 0;
- 2 328 : 2 = 1 164 + 0;
- 1 164 : 2 = 582 + 0;
- 582 : 2 = 291 + 0;
- 291 : 2 = 145 + 1;
- 145 : 2 = 72 + 1;
- 72 : 2 = 36 + 0;
- 36 : 2 = 18 + 0;
- 18 : 2 = 9 + 0;
- 9 : 2 = 4 + 1;
- 4 : 2 = 2 + 0;
- 2 : 2 = 1 + 0;
- 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.
19 531 235 312(10) = 100 1000 1100 0010 0110 1111 1111 1111 0000(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: 35.
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ă, 35,
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.
19 531 235 312(10) = 0000 0000 0000 0000 0000 0000 0000 0100 1000 1100 0010 0110 1111 1111 1111 0000
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,
înlocuiește toți biții setați pe 0 cu 1 și toți biții setați pe 1 cu 0.
Înlocuiește 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 0000 0000 0000 0000 0000 0100 1000 1100 0010 0110 1111 1111 1111 0000)
= 1111 1111 1111 1111 1111 1111 1111 1011 0111 0011 1101 1001 0000 0000 0000 1111
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 1111 1111 1111 1111 1111 1011 0111 0011 1101 1001 0000 0000 0000 1111
(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):
-19 531 235 312 =
1111 1111 1111 1111 1111 1111 1111 1011 0111 0011 1101 1001 0000 0000 0000 1111 + 1