1. Începe cu versiunea pozitivă a numărului:
|-16 777 229| = 16 777 229
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;
- 16 777 229 : 2 = 8 388 614 + 1;
- 8 388 614 : 2 = 4 194 307 + 0;
- 4 194 307 : 2 = 2 097 153 + 1;
- 2 097 153 : 2 = 1 048 576 + 1;
- 1 048 576 : 2 = 524 288 + 0;
- 524 288 : 2 = 262 144 + 0;
- 262 144 : 2 = 131 072 + 0;
- 131 072 : 2 = 65 536 + 0;
- 65 536 : 2 = 32 768 + 0;
- 32 768 : 2 = 16 384 + 0;
- 16 384 : 2 = 8 192 + 0;
- 8 192 : 2 = 4 096 + 0;
- 4 096 : 2 = 2 048 + 0;
- 2 048 : 2 = 1 024 + 0;
- 1 024 : 2 = 512 + 0;
- 512 : 2 = 256 + 0;
- 256 : 2 = 128 + 0;
- 128 : 2 = 64 + 0;
- 64 : 2 = 32 + 0;
- 32 : 2 = 16 + 0;
- 16 : 2 = 8 + 0;
- 8 : 2 = 4 + 0;
- 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.
16 777 229(10) = 1 0000 0000 0000 0000 0000 1101(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: 25.
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) e rezervat pentru semn:
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ă, 25,
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: 32.
5. Determină numărul binar pozitiv reprezentat în limbaj calculator, pe 32 biți (4 Octeți):
Dacă e nevoie, completează cu 0 în fața numărului în baza 2, până la lungimea cerută, 32:
16 777 229(10) = 0000 0001 0000 0000 0000 0000 0000 1101
6. Obține reprezentarea numărului întreg negativ:
Pentru a obține reprezentarea numărului întreg negativ pe 32 biți (4 Octeți),
... modifică primul bit (cel mai din stânga), din 0 în 1...