Cum să convertești întregi cu semn din sistem zecimal (baza zece) în sistem binar cu semn în reprezentarea în complement față de unu
Urmează pașii de mai jos pentru a converti un număr întreg cu semn din baza zece în sistem binar cu semn în reprezentarea în complement față de unu:
- 1. Dacă numărul de convertit e negativ, se începe cu versiunea pozitivă a numărului.
- 2. Î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, până se obține un CÂT care e egal cu ZERO.
- 3. Construiește reprezentarea numărului pozitiv în baza 2, 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. Numerele binare reprezentate în limbaj calculator trebuie să aibă 4, 8, 16, 32, 64, ... de biți lungime (o putere a lui 2) - dacă e nevoie, se completează cu extra biți de valoare '0' în fața numărului pozitiv în baza 2 (la stânga lui) obținut mai sus, până la lungimea cerută, astfel încât primul bit (cel mai din stânga) va fi întotdeauna '0', reprezentând în mod corect un număr pozitiv.
- 5. Pentru a obține reprezentarea numărului întreg negativ binar în complement față de unu, se înlocuiesc apoi toți biții '0' cu '1' și toți biții '1' cu '0'.
Exemplu: convertește numărul negativ -49 din sistem zecimal (baza zece) în binar în reprezentarea în complement față de unu:
- 1. Se începe cu versiunea pozitivă a numărului: |-49| = 49
- 2. Împarte 49 în mod repetat la 2, ținând minte fiecare rest al împărțirilor:
- împărțire = cât + rest
- 49 : 2 = 24 + 1
- 24 : 2 = 12 + 0
- 12 : 2 = 6 + 0
- 6 : 2 = 3 + 0
- 3 : 2 = 1 + 1
- 1 : 2 = 0 + 1
- 3. Construiește reprezentarea numărului pozitiv în baza 2, luând fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus:
49(10) = 11 0001(2) - 4. Numărul (pozitiv) în baza 2 are o lungime actuală de 6 biți, iar numărul binar pozitiv reprezentat în limbaj calculator va avea o lungime, în acest caz, de 8 biți (cea mai mică putere a lui 2 mai mare decât 6) - se completează cu '0' în fața numărului în baza 2, până la lungimea cerută:
49(10) = 0011 0001(2) - 5. Pentru a obține numărul întreg negativ se înlocuiesc toți biții '0' cu '1' și toți biții '1' cu '0':
-49(10) = 1100 1110 - Numărul -4910, întreg cu semn, convertit din sistem zecimal (baza 10) în binar cu semn în reprezentarea în complement față de unu = 1100 1110