Complement față de doi: Întreg -> Binar: -94 999 Convertește (transformă) numărul întreg în sistem binar cu semn în reprezentarea în complement față de doi. Scrie numărul din sistem zecimal (baza 10) în cod binar (scris în baza doi)
Numărul întreg cu semn -94 999(10) convertit și scris ca binar cu semn în reprezentarea în complement față de doi (baza 2) = ?
1. Începe cu versiunea pozitivă a numărului:
|-94 999| = 94 999
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;
- 94 999 : 2 = 47 499 + 1;
- 47 499 : 2 = 23 749 + 1;
- 23 749 : 2 = 11 874 + 1;
- 11 874 : 2 = 5 937 + 0;
- 5 937 : 2 = 2 968 + 1;
- 2 968 : 2 = 1 484 + 0;
- 1 484 : 2 = 742 + 0;
- 742 : 2 = 371 + 0;
- 371 : 2 = 185 + 1;
- 185 : 2 = 92 + 1;
- 92 : 2 = 46 + 0;
- 46 : 2 = 23 + 0;
- 23 : 2 = 11 + 1;
- 11 : 2 = 5 + 1;
- 5 : 2 = 2 + 1;
- 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.
94 999(10) = 1 0111 0011 0001 0111(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: 17.
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ă, 17,
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.
94 999(10) = 0000 0000 0000 0001 0111 0011 0001 0111
6. Obține reprezentarea numărului întreg negativ. Partea I:
Pentru a scrie numărul întreg negativ pe 32 biți (4 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 0001 0111 0011 0001 0111)
= 1111 1111 1111 1110 1000 1100 1110 1000
7. Obține reprezentarea numărului întreg negativ. Partea a II-a:
Pentru a scrie numărul întreg negativ pe 32 biți (4 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 1110 1000 1100 1110 1000
(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):
-94 999 =
1111 1111 1111 1110 1000 1100 1110 1000 + 1
Numărul -94 999(10), întreg cu semn, convertit din sistem zecimal (din baza 10) și scris ca binar cu semn în reprezentarea în complement față de doi:
-94 999(10) = 1111 1111 1111 1110 1000 1100 1110 1001
Spații au fost folosite pentru a grupa digiți, în binar câte 4, în zecimal câte 3.
Convertește numere întregi cu semn din sistemul zecimal (baza zece) în binar cu semn în reprezentarea în complement față de doi
Cum convertești un număr întreg cu semn din baza 10 în binar cu semn în reprezentarea în complement față de doi:
1) Împarte versiunea pozitivă a numărului în mod repetat la 2, ținând minte resturile operațiilor, până obții un cât egal cu 0.
2) Construiește reprezentarea în baza 2 folosind resturile obținute, începând cu ultimul rest până la primul, în această ordine.
3) Construiește reprezentarea pozitivă pentru calculator în binar cu semn astfel încât primul bit să fie 0.
4) Doar dacă numărul inițial e negativ, schimbă toți biții de pe 0 pe 1 și de pe 1 pe 0.
5) Doar dacă numărul inițial e negativ, adaugă 1 la numărul obținut la pasul anterior.