Sunteți pe pagina 1din 7

Operaii cu numere binare

1. Regulile operaiilor cu numere binare reprezentate fr semn


a) Adunarea
0+0=0
0+1=1
1+0=1
1 + 1 = 0 i 1 transport la rangul imediat superior (cu "depire")
Exemplu:
1 1 1 1 1 (transport)
01101
+ 10111
------------=100100
b) Scderea
000
0 1 1, cu mprumut 1 de la rangul imediat superior
101
110
Exemplu
* * * * (stelua marcheaz bitul de unde exist mprumut)
1101110

10111
---------------=1010111
c) nmulirea
0x0=0
0x1=0
1x0=0
1x1=1
Exemplu
1 0 1 1 (x)
1 0 1 0 (y)
--------0 0 0 0 Corespunde unei nmuliri cu un 0 din y
+
1011
Corespunde unei nmuliri cu un 1 din y
+ 0000
+1011
--------------=1101110

2. Reprezentarea numerelor binare


a) Reprezentarea numerelor binare n valoare absolut i semn
Fie numrul binar x, atunci reprezentarea lui n valoare absolut i semn va fi:
x sgn x x

unde:
sgn x este cel mai semnificativ bit al numrului binar i reprezint bitul de semn sgn x=0
nseamn un numr binar pozitiv, sgn x marcheaz un numr binar negativ
|x| este valoarea absolut a numrului binar, format din restul biilor
Exemplu
Fie numrul +10 n zecimal, reprezentat ca numr binar n valoare absolut i semn va fi 0/1010
Fie numrul -10 n zecimal, reprezentat ca numr binar n valoare absolut i semn va fi 1/1010
b) Reprezentarea numerelor binare n complement fa de 1
Complementul fa de 1 este o alternativ de reprezentare a numerelor binare negative, astfel
c numerele binare pozitive se vor reprezenta ca n binar cu valoare absolut i semn, iar numerele
binare negative se vor reprezenta n complement fa de 1.
Fie numrul binar x, pentru a obine reprezentarea numrului n complement fa de 1, se
complementeaz toi biii reprezentrii sale pozitive, ncepnd de la cel mai puin semnificativ bit,
inclusiv bitul de semn.
x compl1 x n x

Exemplu
Fie numrul +10 n zecimal, reprezentat ca numr binar n valoare absolut i semn va fi 0/1010,
iar reprezentat ca i complement fa de 1 va fi tot 0/1010
Fie numrul -10 n zecimal, reprezentarea sa pozitiv ca numr binar n valoare absolut i semn
va fi 0/1010, iar complementul fa de 1 va fi 1/0101
c) Reprezentarea numerelor binare n complement fa de 2
i aceast reprezentare este tot o alternativ pentru reprezentarea numerelor binare negative,
astfel c numerele binare pozitive se vor reprezenta ca n binar cu valoare absolut i semn, iar
numerele binare negative se vor reprezenta n complement fa de 2.
Obinerea complementului fa de 2 se poate realiza n dou modaliti:
- se parcurge irul de bii de la cel mai puin semnificativ bit ctre cel mai semnificativ bit al
reprezentrii pozitive a numrului. Pn la gsirea primului bit de 1, nu se efectueaz nici o
modificare asupra numrului. n momentul n care s-a identificat primul bit de 1, acesta se las
nealterat, iar toi biii aflai la stnga lui se vor complementa, inclusiv bitul de semn
Exemplu
Se dorete transformarea numrului -10 din zecimal n binar. Se pornete de la reprezentarea
binar pozitiv a acestuia, 0/1010, i se aplic algoritmul de mai sus: 1/0110

- a doua metod const n utilizarea complementului fa de 1. Astfel se pornete de la


reprezentarea binar pozitiv a numrului, se realizeaz complementul fa de 1, i apoi se adun 1
la cel mai puin semnificativ bit. Rezultatul fa vi complementul fa de 2
Exemplu
Fie numrul -10 n zecimal. Se pornete de la reprezentarea binar pozitiv a acestuia,
0/1010. Se realizeaz complementul fa de 1, 1/0101. Apoi se adun 1 la cel mai puin
semnificativ bit, rezultnd complementul fa de 2:
1/0101+
1
1/0110

3. Adunarea i scderea numerelor binare cu semn


a) Adunarea i scderea numerelor binare reprezentate n valoare absolut i semn
Fie numerele binare x, y i rezultatul operaiei z.
x sgn x x
y sgn y y
z sgn z z

a1) Adunarea numerelor binare reprezentate n valoare absolut i semn


Regulile de adunare:
dac cele dou numere au biii de semn identici, sgn x = sgn y, atunci se face adunarea
ntre cele dou valori absolute:
z x y

iar bitul de semn sgn z sgn x


Exemplul 1
Fie dou numere binare +10 i +4, reprezentate n binar 0/1010 respectiv 0/0100. Deoarece cele
dou numere au biii de semn identici, se va face operaia de adunare ntre cele dou valori
absolute ale celor dou numere:
(+10)+(+4)=(+14)
1010+
0100
1110
Deci rezultatul final este 0/1110
3

Exemplul 2
Fie dou numere binare -15 i -9, reprezentate n binar 1/1111 respectiv 1/1001. Deoarece cele
dou numere au biii de semn identici, se va realiza adunarea valorilor absolute ale acestora:
(-15)+(-9)=(-24)
1111
1111+
1001
11000

transporturi la rang superior

dac cele dou numere au biii de semn diferii, sgn x sgn y, atunci se face scderea ntre
cele dou valori absolute:
z x y

Dac exist mprumut la cel mai semnificativ bit al operaiei, atunci bitul de semn al
rezultatului este sgn z sgn x , iar valoarea absolut z trebuie complementat fa de 2.
Dac nu exist mprumut la cel mai semnificativ bit al operaiei, atunci bitul de semn al
rezultatului sgn z sgn x iar valoarea absolut z rmne rezultatul operaiei.

Exemplul 1
Fie dou numere zecimale +10 respectiv -4, reprezentate n binar 0/1010 respectiv 1/0100, pentru
care trebuie efectuat operaia de adunare. Deoarece cele dou numere au biii de semn diferii, se
va efectua operaia de scdere ntre cele dou numere:
(+10)+(-4) = 10-4 = +6
10100100
0110
Deoarece nu exist mprumut la cel mai semnificativ bit, bitul de semn va fi bitul de semn al
desczutului, iar rezultatul operaiei va fi 0/0110
Exemplul 2
Fie dou numere zecimale 4 respectiv -10, reprezentate n binar 0/0100 respectiv 1/1010, pentru
care trebuie efectuat operaia de adunare. Deoarece cele dou numere au biii de semn diferii, se
va efectua operaia de scdere ntre cele dou numere:
(+4)+(-10)=4-10=-6
* *
- mprumut la rang superior
01001010
1010

Deoarece exist mprumut la rangul superior, rezultatul se va complementa fa de 2: 1010 0110,


iar bitul de semn va fi complementul bitului de semn al desczutului. Rezultatul final va fi: 1/0110
a2) Scderea numerelor binare reprezentate n valoare absolut i semn
Regulile de scdere:
dac cele dou numere au biii de semn identici, sgn x = sgn y, atunci se face scderea ntre
cele dou valori absolute:
z x y

Dac exist mprumut la cel mai semnificativ bit al operaiei, atunci bitul de semn al rezultatului
este sgn z sgn x , iar valoarea absolut z trebuie complementat fa de 2.
Dac nu exist mprumut la cel mai semnificativ bit al operaiei, atunci bitul de semn al
rezultatului sgn z sgn x iar valoarea absolut z rmne rezultatul operaiei.
dac cele dou numere au biii de semn diferii, sgn x sgn y, atunci se face adunarea
ntre cele dou valori absolute:
z x y

iar bitul de semn sgn z sgn x

b) Adunarea i scderea numerelor binare reprezentate n complement fa de 1

Fie numerele binare x, y i rezultatul operaiei z.


x sgn x x
y sgn y y
z sgn z z

Regulile operaiei:
numerele binare pozitive se reprezent n valoare absolut i semn
numerele binare negative se reprezint n complement fa de 1
se efectueaz operaia de adunare sau scdere
dac bitul de semn al rezultatului este sgn z 1 , atunci valoarea absolut a rezultatului z
trebuie reprezentat n complement fa de 1, iar dac sgn z 0 , atunci valoarea absolut a
rezultatului z este rezultatul obinut
dac la cel mai semnificativ bit al operaiei apare transport sau mprumut, atunci acesta va
fi adunat sau sczut de la cel mai puin semnificativ bit, n funcie de operaia efectuat.
Exemplul 1
Fie dou numere zecimale 7 respectiv -13, care trebuie adunate. Deoarece este numr pozitiv,
numrul 7 va fi reprezentat n binar cu valoare absolut i semn, 0/0111, iar numrul -13 va fi
reprezentat n complement fa de 1: 1/0010. Se va realiza operaia de adunare, inclusiv pentru
bitul de semn:

11
0/0111+
1/0010
11001

transport

Deoarece bitul de semn al operaiei este 1, rezultatul va fi obinut prin complementarea valorii
absolute: 0110 = 6. Rezultatul final este -6
Exemplul 2
Fie dou numere zecimale -14 respectiv -19, pentru care trebuie efectuat operaia de adunare.
Deoarece ambele numere sunt negative, vor fi reprezentate n complement fa de 1, conform
regulilor de la punctul 2.b): 1/10001 respectiv 1/01100. Se efectueaz operaia de adunare
(inclusiv pentru bitul de semn):
1
110001+
101100
1011101

transport

Conform regulilor, deoarece bitul de semn este 1 (1/011101), rezultatul va trebui complementat
fa de 1. nainte ns, deoarece avem transport dincolo de cel mai semnificativ bit, acesta va fi
adunat la cel mai puin semnificativ bit:
1
011101+
1
011110
Rezultatul va fi complementat rezultnd 100001 = 25+20=32+1=33. Deci rezultatul final este -33

c) Adunarea i scderea numerelor binare reprezentate n complement fa de 2

Fie numerele binare x, y i rezultatul operaiei z.


x sgn x x
y sgn y y
z sgn z z

Regulile operaiei:
numerele pozitive se reprezint n binar cu semn
numerele negative se reprezint n complement fa de 2
se efectueaz operaia de adunare sau de scdere
dac bitul de semn al rezultatului este sgn z 1 , atunci valoarea absolut a rezultatului z
trebuie reprezentat n complement fa de 2, iar, dac sgn z 0 , atunci valoarea absolut a
rezultatului z este rezultatul obinut.
dac la cel mai semnificativ bit al operaiei apare transport sau mprumut, atunci acesta nu
se va lua n considerare.

Exemplu
Fie dou numere zecimale 9 respectiv -14, pentru care trebuie efectuat operaia de adunare.
Deoarece este numr pozitiv, numrul 9 va fi reprezentat n binar cu valoare absolut i semn,
0/1001, iar numrul -13 va fi reprezentat n complement fa de 2: 1/0010. Se va realiza operaia
de adunare, inclusiv pentru bitul de semn:
0/1001+
1/0010
1/1011
Deoarece bitul de semn al rezultatului sgn z 1 , valoarea absolut a acestuia trebuie reprezentat
n complement fa de 2: (1011)c2=>(0101)2= 5. Cum bitul de semn este 1, adic minus, rezultatul
final este -5.

S-ar putea să vă placă și