Sunteți pe pagina 1din 19

Curs 1 Arhitectura CaIcuIatoareIor

1

REPREZENTAREA NUMERELOR NEGATIVE N
CALCULATOARELE DIGITALE


1. Complementul yi calculul su

1.1. Conceptul de complement

Definijie: Fie r baza unui sistem de numeratie si c o ciIr a acestei baze
c e 0, 1,.(r-1)}. Se numeste complement al cifrei c urmtoarea ciIr: ( ) c r c = 1 .

Exemplu.
Baza r10, ciIrele bazei c
i
e 0, 1,.9}.
c4
5 4 9 9 = = = c c

Definijie: Fie N un numr reprezentat n baza r cu n ranguri la partea ntreag si
m ranguri la partea Iractionar:
N
r
c
n-1
c
n-2
. . . c
0
c
-1
. . . c
-m
; c
i
e 0, 1,..(r-1)}, i e |-m, n-1|
m
m
n
n
n
n r
r c r c r c r c r c r c N

+ + + + + + + =
1
1
0
0
1
1
2
2
1
1

Se numeste complement al numrului N fa( de baza r urmtoarea diIerent:
r
n
r
N r N =

Exemplu.
Baza r10, ciIrele bazei c
i
e 0, 1,..9}.
N1057.326
n4, m3
674 . 8942 326 . 1057 10000 326 . 1057 10
4
10
= = = N

1eorem: Complementul Iat de r al complementului Iat de r al unui numr N
este chiar numrul:
( ) ( )
r r
n n
r
N N r r N = =

Definijie: Fie N un numr reprezentat n baza r cu n ranguri la partea ntreag si
m ranguri la partea Iractionar:
N
r
c
n-1
c
n-2
. . . c
0
c
-1
. . . c
-m
; c
i
e 0, 1,..(r-1)}, i e |-m, n-1|
Se numeste complement al nunmrului N fa( de r-1 urmtoarea diIerent:
m
r
n
r
r N r N

=
Exemplu.
Baza r10, ciIrele bazei c
i
e 0, 1,..9}.
N1057.326
Curs 1 Arhitectura CaIcuIatoareIor
2
n4, m3
673 . 8942 001 . 0 326 . 1057 10000 10 326 . 1057 10
3 4
10
= = =

N

1eorem: Complementul Iat de r-1 al complementului Iat de r-1 al unui
numr N este chiar numrul:
( ) ( )
r
m m
p
n n
r
N r r N r r N = =



Proprietate: Complementul Iat de r este mai mare cu o unitate la ciIra cea mai
putin semniIicativ Iat de complementul Iat de r-1.

r
n
r
N r N =

m
r
n
r
r N r N

=


1.2. Metode de calcul ale complementului

a) Baza 10

a.1) Complement faj de 1. Exist trei metode:
1. Se aplic deIinitia
10 10
10 N N
n
= .
2. Se parcurge numrul de la dreapta spre stnga, primele zerouri rmn
neschimbate, prima ciIr semniIicativ se scade din 10, iar urmtoarele se scad din 9.
3. Dac se cunoaste complementul Iat de 9 al numrului se adaug 1 la
ciIra cea mai putin semniIicativ:
m
N N

+ = 10
10 10
.

a.2) Complement faj de 9. Exist trei metode
1. Se aplic deIinitia
m n
N N

= 10 10
10 10
;
2. Se complementeaz Iiecare ciIr, adic Iiecare ciIr se scade din 9.
3. Dac se cunoaste complementul Iat de 10 al numrului se scade 1 la
ciIra cea mai putin semniIicativ:
m
N N

= 10
10 10
.

b) Baza 2

b.1) Complement faj de 2. Exist trei metode
1. Se aplic deIinitia
2 2
2 N N
n
= .
2. Se parcurge numrul de la dreapta spre stnga, primele zerouri rmn
neschimbate, prima ciIra 1 rmne neschimbat, iar urmtorii biti se
complementeaz.
3. Dac se cunoaste complementul Iat de 1 al numrului se adaug 1 la
ciIra cea mai putin semniIicativ:
m
N N

+ = 2
2 2
.
}
m
r
r
m
r
r r N N sau r N N

+ = =
Curs 1 Arhitectura CaIcuIatoareIor
3

b.2) Complement faj de 1. Exist trei metode
1. Se aplic deIinitia
m n
N N

= 2 2
2 2
.
2. Se complementeaz Iiecare bit al numrului.
3. Dac se cunoaste complementul Iat de 2 al numrului se scade 1 la ciIra
cea mai putin semniIicativ:
m
N N

= 2
2 2
.

c) Baza r

c.1) Complement faj de r. Exist trei metode:
1. Se aplic deIinitia
r
n
r
N r N = .
2. Se parcurge numrul de la dreapta spre stnga, primele zerouri rmn
neschimbate, prima ciIr semniIicativ se scade din r, iar urmtoarele se scad din
(r-1).
3. Dac se cunoaste complementul Iat de (r-1) al numrului se adaug 1 la
ciIra cea mai putin semniIicativ:
m
r r
r N N

+ = .

c.2) Complement faj de r-1. Exist trei metode
1. Se aplic deIinitia
m
r
n
r
r N r N

= .
2. Se complementeaz Iiecare ciIr, adic Iiecare ciIr se scade din r-1.
3. Dac se cunoaste complementul Iat de r al numrului se scade 1 la ciIra
cea mai putin semniIicativ:
m
r r
r N N

= .

Exemple.
a) Baza r10

N
10
456.2500
n3, m4

a.1) Complementul Iat de 10
1) 7500 . 543 2500 . 456 1000 2500 . 456 10
3
10
= = = N
2) 7500 . 543 00 ) 5 10 )( 2 9 ).( 6 9 )( 5 9 )( 4 9 (
10
= = N
3) 7500 . 543 0001 . 0 7499 . 543 10
4
10 10
= + = + =

N N

a.2) Complementul Iat de 9
1) 7499 . 543 0001 . 0 2500 . 456 1000 10 2500 . 456 10
4 3
10
= = =

N
2) 7499 . 543 ) 0 9 )( 0 9 )( 5 9 )( 2 9 ).( 6 9 )( 5 9 )( 4 9 (
10
= = N
3) 7499 . 543 0001 . 0 7500 . 543 10
4
10 10
= = =

N N


Curs 1 Arhitectura CaIcuIatoareIor
4

b) Baza r2

N
2
101.1100
n3, m4

b.1) Complementul Iat de 2
1) 0100 . 010 1100 . 101 1000 1100 . 101 2
3
2
= = = N
2) 0100 . 010 00 ) 1 2 )( 1 1 ).( 1 1 )( 0 1 )( 1 1 (
2
= = N
3) 0100 . 010 0001 . 0 0011 . 010 2
4
2 2
= + = + =

N N

b.2) Complementul Iat de 1
1) 0011 . 010 0001 . 0 1100 . 101 1000 2 1100 . 101 2
4 3
2
= = =

N
2) 0011 . 010 ) 0 1 )( 0 1 )( 1 1 )( 1 1 ).( 1 1 )( 0 1 )( 1 1 (
2
= = N
3) 0011 . 010 0001 . 0 0100 . 010 2
4
2 2
= = =

N N

2. Coduri speciale pentru reprezentarea numerelor negative

2.1. Formularea general a problemei de reprezentarea a numerelor
negative

Se ncearc o metod natural de reprezentare a numerelor negative n acelasi
mod n care se pot reprezenta numerele n sistemul de numeratie cu ponderi naturale.
Fie un sistem de numeratie cu baza r (r~1), presupunem Iolosirea a r ciIre
diferite pentru reprezentarea numerelor, Iiecare ciIr
{ }
n i
a a a
1
e
aceste ciIre sunt
consecutive si contin ciIra 0 adic
{ }
n
a a
1
0e
. Deoarece exist r ciIre rezult c
( ) 1
1
+ = r a a
n
.
Pentru scrierea de numere ntregi n baza r Iolosind m ranguri avem urmtorul
Iormat:
( ) 1 m ... 0
N

...


ponderea o

unde: m-1 este rangul cel mai semniIicativ
o este ponderea rangului maxim sau cel mai semniIicativ

Numrul minim reprezentabil in baza r Iolosind m ranguri este:
( ) 1 m ... 0
N
min
a
1
... a
1

Curs 1 Arhitectura CaIcuIatoareIor
5
( )
1
1
1 1
1
1
1
1
1 1 min
1
1
1

+ +

= + + + = + + + =
r
r
a r r a r a r a a N
m
m m
o o o o o
Numrul maxim reprezentabil in baza r Iolosind m ranguri este:
( ) 1 m ... 0
N
max
a
n
... a
n

( )
1
1 1 1 1
max
1
1
1

+ +

= + + + = + + + =
r
r
a r r a r a r a a N
m
n
m
n
m
n n n
o o o o o

Exemplu.
m3, r10, ciIra minim este 0, ciIra maxim este 9
999
9 , 0
999 , 0
900
10 1
10 1
10 9
0
1
3
2
max
min
= =

=
=

N
N


Deoarece:
n
m
a si a lui semnul de depinde N si N semnul r
r
r
1 max min
1
0
1
0
1
1

>
>
>

o


Atunci baza trebuie s contin att ciIre pozitive ct si ciIre negative. Pentru ca
gamele de reprezentare s Iie simetrice trebuie ca numrul de ciIre negative s Iie
egal cu numrul de ciIre pozitive, adic a
1
- a
n
. Cum trebuie inclus si ciIra 0
rezult c numrul de ciIre din baz trebuie s Iie impar, deci baza trebuie s fie
impar.

Exemplu.
r3, B
3
-1, 0, 1}
r5, B
5
-2, -1, 0, 1, 2}.

n practic Iolosim baze pare cum este baza 2 sau baza 10, deci reprezentrile
naturale nu sunt posibile, din acest motiv trebuie elaboarate coduri speciale, care s
contin ranguri suplimentare pentru reprezentarea semnului numerelor.
Se cunosc 3 coduri:
1. Codul direct
2. Codul complementar (cod complement Iat de 2)
3. Codul invers (cod complement Iat de 1)

2.2. Codul direct

Este o metod de reprezentare a numerelor negative n calculator numit si
reprezentare prin mrime yi semn, deoarece numerele se reprezint prin valoare si
Curs 1 Arhitectura CaIcuIatoareIor
6
semn. Se Ioloseste un rang suplimentar pentru reprezentarea bitului de semn b
s
. Se
adopt conventia: b
s
0 pentru numere pozitive (N~0) si b
s
1 pentru numere
negative (N0).
Bitul de semn nu are pondere si de aceea el poate Ii plasat oriunde.
Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
{ }

=
e = =
1
m
m - 1 -
n
0 2 - n 1 - n
1 , 0 ; 2 b . . . b . b . . . b b N
n
m i
i
i
i
b b


Dac numrul este pozitiv (N,N,) el se reprezint sub Iorma:
{ } 1 , 0 ; 0 , 2 2 , 0 , 0 , , 0
1 1
e = = =

=
i
n
m i
n
m i
i
i
i
i
b b N sau b N deci N sau N N

Dac numrul este negativ (N-,N,) el se reprezint sub Iorma:
{ } 1 , 0 ; 1 , 2 2 , 1 , 1 , , 1
1 1
e = = =

=
i
n
m i
n
m i
i
i
i
i
b b N sau b N deci N sau N N


Bitul de semn b
s
se poate pune si la sIrsitul numrului, dar n general se
Ioloseste varianta cu b
s
n stnga numrului (la nceputul numrului) si nu i se
ataseaz pondere.

Exemplu.
,N, 1011.0101
,N, 0, 1011.0101
- ,N, 1, 1011.0101

Cel mai adesea numerele se reprezint sub Iorm Iractionar (n0).
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 , 0 , ,
1
e = + =

=
i
m i
i
i
b b N N

Dac numrul este negativ, N0:
{ } 1 , 0 ; 2 , 1 , ,
1
e = =

=
i
m i
i
i
b b N N

Pentru reprezentarea lui 0 avem dou reprezentri 0

(zero pozitiv sau zero


curat) si 0
-
(zero negativ sau zero murdar) :

=
=
=

+


m n
m n
0 ... 00 . 0 ... 00 , 1 0
0 ... 00 . 0 ... 00 , 0 0
0

Gama de reprezentare este reprezentarea pe axa numerelor reale a numerelor
reprezentabile n Iormatul N(n,m). Se vor evidentia pe ax valorile extreme de
Curs 1 Arhitectura CaIcuIatoareIor
7
reprezentare (N

max
,

N

min
,

N
-
max
, N
-
min
), reprezentrile lui 0 (0

si 0
-
) precum si pasul
de reprezentare.
Distanta dintre dou numere consecutive reprezentabile (dou noduri) se
numeste pas de reprezentare si are valoarea d2
-m
.





















Se observ c pasul d depinde de m numrul de ranguri de la partea Iractionar.
Deci pentru o precizie mai bun trebuie s avem un m mare si atunci distanta ntre
dou noduri este mai mic. Gama este simetric n raport cu 0.
n concluzie codul direct este un cod simplu si se recomand la operatiile de
intrare-iesire, prezint greutti n Iormularea algoritmilor operatiilor aritmetice, iar
bitul de semn nu are pondere.

2.3. Codul complementar

Pentru reprezentarea numerelor negative se Iace apel la complementul fa( de 2
al modulului numrului (la numerele negative modulul apare n cod complement
Iat de 2) si se Iolosesc unul sau mai multe ranguri pentru speciIicarea semnului
(exist unul sau mai multi biti de semn). Bitii suplimentari au pondere se plaseaz n
stnga si ocup rangurile cele mai semniIicative. Exist 3 variante de reprezentare.
Se stie c pentru N reprezentat n baza 2 cu n biti la partea ntreag si m biti la
partea Iractionar complementul Iat de 2 al su este: N N
n
= 2 .



+
0 00 . 0 00 0 0 =
+
0 00 . 0 00 1 0 =


( )
m n
m n
N
+
+ = = 2 2 1 11 . 1 11 0
max

m
m n
N
+
+ = = 2 1 00 . 0 00 0
min

( )
m n
m n
N

= = 2 2 1 11 . 1 11 1
min

m
2 d

=
m
2 d

=
zona numerelor
pozitive
zona numerelor
negative
m
m n
N

= = 2 1 00 . 0 00 1
max

Curs 1 Arhitectura CaIcuIatoareIor


8
a) Varianta I

Se mai numeste si varianta cu un bit de semn yi pondere negativ a acestuia.
Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
{ }

=
e = =
1
m
m - 1 -
n
0 2 - n 1 - n
1 , 0 ; 2 b . . . b . b . . . b b N
n
m i
i
i
i
b b


Bitul de semn este b
s
si are ponderea o
s
-2
n
, deci este o pondere negativ.
Din acest punct de vedere sistemul de numeratie se numeste sistem de numeratie
pozitional cu ponderi artiIiciale. Se adopt conventia: b
s
0 pentru numere pozitive
si b
s
1 pentru numere negative.
( ) , , 2 N b N
n
s
+ =


Dac N~0 atunci b
s
0 si modulul ,N, se reprezint n cod direct:
( )
i
n
m i
i
n
b N 2 2 0
1
+ =

=


Dac N0 atunci b
s
1 si modulul ,N, se reprezint n cod complement fa( de
2:
( )
i i
N al de fata ul Complrment
n
m
m i
i
n
b b b N = + + =

1 ; 2 2 2 1
, , 2
1


Cel mai adesea numerele se reprezint sub Iorm Iractionar (n0), iar bitul de
semn b
s
se gseste pe pozitia 0 n stnga virgulei.
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 ) 2 ( 0 , ,
1
0
e + = + =

=
i
m i
i
i
b b N N

Dac numrul este negativ, N0:
{ } 1 , 0 ; 2 2 ) 2 ( 1 , ,
, , 2
1
0
e + + = =

=
i
N al de fata ul Complement
m
m i
i
i
b b N N


Pentru 0 se adopt o singur reprezentare zero pozitiv sau curat:

m n
b
s
0 00 . 0 00 , 0 0 =
+

Combinatia

m n
0 00 . 0 00 , 1
are o interpretare special este prin conventie
valoarea celui mai mic numr negativ (pentru numere Iractionare este -1). De aceea
gama este asimetric n raport cu 0.
Curs 1 Arhitectura CaIcuIatoareIor
9






















Proprietate: Dac se adopt pondere negativ pentru bitul de semn se obtine
valoarea eIectiv a numrului.
Dac N~0:
( )
i
n
m
i
i
n
m
i
n
b b N 2 2 2 0
1 1

+ = + =

Dac N0:
( ) ( ) ( )
( )

= + + = + + =
= + + = + + =
1 1 1 1
1 1
2 2 2 2 2 2 2 2 2 2
2 2 1 2 1 2 2 2 1
n
m
i
i
n
m
m i
i
m n n
n
m
m
n
m
i
i
i n
n
m
m i
i
n
n
m
m i
i
n
b b b
b b N


Aceast variant este cea mai rspndit.

b) Varianta a II-a

Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
{ }

=
e = =
1
m
m - 1 -
n
0 2 - n 1 - n
1 , 0 ; 2 b . . . b . b . . . b b N
n
m i
i
i
i
b b


( )
m n
m n
N

= = 2 2 01 00 . 0 00 1
min

+
0 00 . 0 00 0 0 =
+

m n
m n
N
+
= = 2 2 1 11 . 1 11 0
max

m
m n
N
+
+ = = 2 01 00 . 0 00 0
min

m
m n
N

= = 2 11 11 . 1 11 1
max

n
2 0 00 . 0 00 1 =
zona numerelor
pozitive
zona numerelor
negative
m
2 d

=
m
2 d

=
Curs 1 Arhitectura CaIcuIatoareIor
10
Bitul de semn este b
s
si are ponderea pozitiv o
s
2
n
. Se adopt conventia: b
s

1 pentru numere pozitive si b
s
0 pentru numere negative.
, , 2 N b N
n
s
+ =


Dac N~0 atunci b
s
1 si modulul ,N, se reprezint n cod direct:
i
n
m i
i
n
b N 2 2 1
1
+ =

=


Dac N0 atunci b
s
0 si modulul ,N, se reprezint n cod complement fa( de
2:
i i
N al de fata ul Complrment
n
m
m i
i
n
b b b N = + + =

1 ; 2 2 2 0
, , 2
1



Pentru numerele Iractionare (n0) Irecvent Iolosite avem urmtoarele
reprezentri:
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 2 1 , ,
1
0
e + = + =

=
i
m i
i
i
b b N N

Dac numrul este negativ, N0:
{ } 1 , 0 ; 2 2 2 0 , ,
, , 2
1
0
e + + = =

=
i
N al de fata ul Complement
m
m i
i
i
b b N N



Proprietate: Pentru a determina valoarea corect a numrului trebuie tinut cont
de Iaptul c ponderea bitului de semn a Iost considerat pozitiv si deci trebuie
sczut aceast pondere o
s
2
n
(se aplic o corectie prin scdere):

Dac N~0:
i
n
m
i
n i
n
m
i
n
b b N 2 2 2 2 1
1 1

+ = + =

Dac N0:


= + = + =
= + = + + =
1 1 1 1
1 1
2 2 2 2 2 2 2 2 2 2
2 2 2 ) 1 ( 2 2 2 2 0
n
m
i
i
n m
n
m
i
i
m n n m
n
m
i
i
n
m
i
n
m
n
m
n m i
i
n m i
i
n
b b b
b b N

Curs 1 Arhitectura CaIcuIatoareIor
11
c) Varianta a III-a

Se utilizeaz 2 biti de semn b
s
si b
`
s
care au ponderile o
s
, respectiv 2o
s
.
Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
, , 2 2 '
1
N b b N
n
s
n
s
+ + =
+


Dac N~0 prin conventie b
`
s
1 si b
s
0 iar modulul ,N, se reprezint n cod
direct:
i
n
m i
i
n n
b N 2 2 0 2 1
1
1
+ + =

=
+

Dac N0 prin conventie b
`
s
0 si b
s
1 iar modulul ,N, se reprezint n cod
complement fa( de 2:
i i
N al de fata ul Complrment
n
m
m i
i
n n
b b b N = + + + =

+
1 ; 2 2 2 1 2 0
, , 2
1
1



n cazul numerelor Iractionare cnd n0 avem urmtoarele reprezentri:
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 2 0 2 1 , ,
1
0 1
e + + = + =

=
i
m i
i
i
b b N N

Dac numrul este negativ, N0:
{ } 1 , 0 ; 2 2 2 1 2 0 , ,
, , 2
1
0 1
e + + + = =

=
i
N al de fata ul Complement
m
m i
i
i
b b N N


Proprietate: Pentru a determina valoarea corect a numrului trebuie Icut o
corectie prin scdere, se scade ponderea bitului b
`
s
, adic 2o
s
2
n1
:

Dac N~0:
i
n
m
i
n i
n
m
i
n n
b b N 2 2 2 2 0 2 1
1
1
1
1

+
+ = + + =

Dac N0:


+ +

+
+

+ + +
= = =
= + + = + + =
= + + = + + + =
1 1
1 1
1
1
1
1
1
1 1
1 1
1 1 1
2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 1
2 2 2 ) 1 ( 2 1 2 2 2 2 1 2 0
n
m
i
i
n
m
n i
i
n
n
m
n i
i
n
n m
n
m
i
i
m n n n m
n
m
i
i
n
m
i n
n
m
n
m
n m i
i
n n m i
i
n n
b b b
b b
b b N

Curs 1 Arhitectura CaIcuIatoareIor
12
Exemplu.
,N, 1011.0101
I) ,N, 0, 1011.0101 -,N, 1, 0100.1011
II) ,N, 1, 1011.0101 -,N, 0, 0100.1011
III) ,N, 10, 1011.0101 -,N, 01, 0100.1011

2.4. Codul invers

Codul invers este asemntor cu codul complementar, deosebirea const n
aceea c atunci cnd numrul este negativ, acesta se reprezint prin complementul
fa( de 1 al modulului. Se numeste cod invers deoarece pentru obtinerea
complementului Iat de 1 se complementeaz Iiecare bit (se inverseaz Iiecare bit).

Observajie: n cazul reprezentrii n cod invers nu trebuie neglijate zerourile
cele mai semniIicative sau cele mai putin semniIicative.

Folosirea codului invers este recomandat datorit simplittii de calcul al
complementului Iat de 1 prin simpla inversare a Iiecrui bit al reprezentrii n cod
direct. Codul invers nu este totusi rspndit datorit complicatiilor ce apar n
algoritmii de adunare si scdere (transporturi si mprumuturi ciclice). Se disting trei
variante de reprezentare.
Se stie c pentru N reprezentat n baza 2 cu n biti la partea ntreag si m biti la
partea Iractionar complementul Iat de 1 al su este:
N N N
m n m n
= =

) 2 2 ( 2 2 .

a) Varianta I

Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
{ }

=
e = =
1
m
m - 1 -
n
0 2 - n 1 - n
1 , 0 ; 2 b . . . b . b . . . b b N
n
m i
i
i
i
b b


Bitul de semn este b
s
plasat n stnga MSB si are ponderea negativ o
s
-2
n
2
-m

-(2
n
-2
-m
). Se adopt conventia: b
s
0 pentru numere pozitive si b
s
1 pentru
numere negative.


m
m - 1 -
n
0 2 - n 1 - n s
b . . . b . b . . . b b , b = N


Dac N~0 atunci b
s
0 si modulul ,N, se reprezint n cod direct:

m
m - 1 -
n
0 2 - n 1 - n
b . . . b . b . . . b b , 0 = N


Curs 1 Arhitectura CaIcuIatoareIor
13
Dac N0 atunci b
s
1 si modulul ,N, se reprezint n cod complement fa( de
1:
| 1 , | ; 1 b . . . b . b . . . b b , 1
m
m - 1 -
n
0 2 - n 1 - n e = = n m i b b N
i



n cazul numerelor Iractionare (n0), bitul se semn b
s
va aprea pe pozitia 0 cu
ponderea o
s
-(2
0
-2
-m
)
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 ) 2 2 ( 0 , ,
1
0
e + + = + =

i
m i
i
i
m
b b N N

Dac numrul este negativ, N0:
{ }
i i i
N al de fata ul Complement
m i
i
i
m
b b b b N N = e + + = =

1 ; 1 , 0 ; 2 ) 2 2 ( 1 , ,
, , 1
1
0



Exist dou reprezentri ale lui 0 si anume 0

si 0
-
.

=
=
=

+
m n
m n
1 ... 11 . 1 ... 11 , 1 0
0 ... 00 . 0 ... 00 , 0 0
0



Proprietate: Dac se adopt pondere negativ pentru bitul de semn se obtine
valoarea eIectiv a numrului.
Dac N~0:
( )
i
n
m
i
i
n
m
i
m n
b b N 2 2 2 2 0
1 1

+ = + + =

Dac N0:
( ) ( )
( )

= + + = + + =
= + + = + + =
1 1 1 1
1 1
2 2 2 2 2 2 2 2 2 2
2 1 2 2 2 2 2 1
n
m
i
i
n
m
i
i
m n m n
n
m
n
m
i
i
i m n
n
m
i
i
m n
n
m
i
i
m n
b b b
b b N


Gama de reprezentarea a numerelor este urmtoarea:
Curs 1 Arhitectura CaIcuIatoareIor
14




















b) Varianta a II-a

Fie un numr binar N, reprezentat n baza 2 cu n biti la partea ntreag si m biti
la partea Iractionar, modulul su este:
{ }

=
e = =
1
m
m - 1 -
n
0 2 - n 1 - n
1 , 0 ; 2 b . . . b . b . . . b b N
n
m i
i
i
i
b b


Bitul de semn este b
s
plasat n stnga MSB si are ponderea pozitiv o
s
(2
n
-
2
-m
). Se adopt conventia: b
s
1 pentru numere pozitive si b
s
0 pentru numere
negative.

m
m - 1 -
n
0 2 - n 1 - n s
b . . . b . b . . . b b , b = N

Dac N~0 atunci b
s
1 si modulul ,N, se reprezint n cod direct:

m
m - 1 -
n
0 2 - n 1 - n
b . . . b . b . . . b b , 1 = N


Dac N0 atunci b
s
0 si modulul ,N, se reprezint n cod complement fa( de
1:
| 1 , | ; 1 b . . . b . b . . . b b , 0
m
m - 1 -
n
0 2 - n 1 - n e = = n m i b b N
i



n cazul numerelor Iractionare (n0), bitul se semn b
s
va aprea pe pozitia 0.


+
0 00 . 0 00 0 0 =
+
1 11 . 1 11 1 0 =


( )
m n
m n
N
+
+ = = 2 2 1 11 . 1 11 0
max

m
m n
N
+
+ = = 2 01 00 . 0 00 0
min

( )
m n
m n
N

= = 2 2 0 00 . 0 00 1
min

m
2 d

=
m
2 d

=
zona numerelor
pozitive
zona numerelor
negative
m
m n
N

= = 2 10 11 . 1 11 1
max

Curs 1 Arhitectura CaIcuIatoareIor


15
Dac numrul este pozitiv, N~0:
{ } 1 , 0 ; 2 ) 2 2 ( 1 , ,
1
0
e + = + =

i
m i
i
i
m
b b N N

Dac numrul este negativ, N0:
{ }
i i i
N al de fata ul Complement
m i
i
i
m
b b b b N N = e + = =

1 ; 1 , 0 ; 2 ) 2 2 ( 0 , ,
, , 1
1
0


Exist dou reprezentri ale lui 0 si anume 0

si 0
-
.

=
=
=

+
m n
m n
1 ... 11 . 1 ... 11 , 0 0
0 ... 00 . 0 ... 00 , 1 0
0


Proprietate: Pentru obtinerea valorii eIective a numrului trebuie Icut o
corectie si anume scderea ponderii o
s
a bitului de semn b
s
.

Dac N~0:
i
n
m
i
m n i
n
m
i
m n
b b N 2 ) 2 2 ( 2 ) 2 2 ( 1
1 1

+ = + =

Dac N0:
( ) ( )
( )

= + = + =
= + = + =
1 1 1 1
1 1
2 2 2 2 2 2 2 2 2 2
2 2 2 1 ) 2 2 ( 2 2 2 0
n
m
i
i
n
m
m n i
i
m n
n
m
m n
n
m
i
i
i
m n
n
m
i
i
m n
n
m
i
i
m n
b b b
b b N


Gama de reprezentare studiu individual se cere la examen.

c) Varianta a III-a

Se utilizeaz 2 biti de semn b
`
s
si b
s
care au ponderile o
`
s
, respectiv o
s
.
Se adopt conventia: b
`
s
1, b
s
0 pentru numere pozitive si b
`
s
0, b
s
1
pentru numere negative.
Ponderile bitilor de semn sunt o
`
s
2
n1
-2
-m
si o
s
2
n
.
Dac N~0 atunci b
`
s
1, b
s
0 si modulul ,N, se reprezint n cod direct:

m
m - 1 -
n
0 2 - n 1 - n
b . . . b . b . . . b b , 10 = N


Dac N0 atunci b
`
s
0, b
s
1 si modulul ,N, se reprezint n cod complement
fa( de 1:
| 1 , | ; 1 b . . . b . b . . . b b , 01
m
m - 1 -
n
0 2 - n 1 - n e = = n m i b b N
i


n cazul numerelor Iractionare (n0), bitul se semn b
s
va aprea pe pozitia 0, iar
b
`
s
pe pozitia 1.
Curs 1 Arhitectura CaIcuIatoareIor
16
Dac numrul este pozitiv, N~0:

m
m - 1 -
b . . . b , 10 = N

Dac numrul este negativ, N0:
| 1 , | ; 1 b . . . b , 01
m
m - 1 - e = = n m i b b N
i


Exist dou reprezentri ale lui 0 si anume 0

si 0
-
.

=
=
=

+
m n
m n
1 ... 11 . 1 ... 11 , 01 0
0 ... 00 . 0 ... 00 , 10 0
0



Proprietate: Pentru obtinerea valorii eIective a numrului trebuie Icut o
corectie si anume scderea ponderii o
`
s
a bitului de semn b
`
s
.
Dac N~0:
i
n
m
i
m n i
n
m
i
n m n
b b N 2 ) 2 2 ( 2 2 0 ) 2 2 ( 1
1
1
1
1

+
+ = + + =

Dac N0:
( ) ( )
( )


= + = + + =
= + + = + + =
= + + = + + + =
1 1 1
1
1
1
1
1
1
1
1
1
1
2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2
2 2 2 1 2 1 ) 2 2 ( 2 2 1 2 2 0
n
m
i
i
n
m
m n i
i
m n
n
m
m n i
i
m n n
n
m
m n i
i
m n n
n
m
m n
n
m
i
i
i n
m n
n
m
i
i
n m n
n
m
i
i
n m n
b b b
b b
b b N

Gama de reprezentare studiu individual se cere la examen.

Exemplu.
,N, 1011.0101
I) ,N, 0, 1011.0101 -,N, 1, 0100.1010
II) ,N, 1, 1011.0101 -,N, 0, 0100.1010
III) ,N, 10, 1011.0101 -,N, 01, 0100.1010

3. Deplasarea numerelor binare cu semn

Fie un numr N reprezentat n baza r n Iormatul (n, m).

N
r
c
n-1
c
n-2
. . . c
0 .
c
-1
. . . c
-m
; c
i
e 0, 1,..(r-1)}, i e |-m, n-1|
m
m
n
n
n
n r
r c r c r c r c r c r c N

+ + + + + + + =
1
1
0
0
1
1
2
2
1
1




Curs 1 Arhitectura CaIcuIatoareIor
17
nmultirea cu r:
1 1
2
0
1
1
0
2
1
1
2 1
1
1
0
0
1
1
2
2
1
1
) (
+

+ + + + + + + + =
= + + + + + + + =
m
m
n
n
n
n
m
m
n
n
n
n r
r c r c r c r c r c r c r c
r c r c r c r c r c r c r N r




Se observ c virgula dintre rangurile r
0
si r
-1
este plasat acum ntre ciIrele c
-1
si c
-2
, deci numrul a fost deplasat la stnga cu o pozi(ie sau cu un rang.

npartirea cu r:
1 2
1
1
0
0
1
3
2
2
1
1
1
0
0
1
1
2
2
1
1

+ + + + + + + =
=
+ + + + + + +
=
m
m
n
n
n
n
m
m
n
n
n
n r
r c r c r c r c r c r c
r
r c r c r c r c r c r c
r
N




Se observ c virgula dintre rangurile r
0
si r
-1
este plasat acum ntre ciIrele c
1
si
c
0
, deci numrul a fost deplasat la dreapta cu o pozi(ie sau cu un rang.
n general:
- nmul(irea cu r
k
nseamn deplasarea numrului N
r
cu k pozitii spre
stnga
- mpr(irea cu r
k
nseamn deplasarea numrului N
r
cu k pozitii spre
dreapta
n practic cel mai adesea se Ioloseste baza r2, si atunci orice nmultire cu 2 a
unui numr binar nseamn o deplasare spre stnga cu un bit a numrului, respectiv
orice mprtire cu 2 a unui numr binar nseamn o deplasare spre dreapta cu un bit a
numrului. n cazul general pentru r2, orice nmultire cu 2
k
a unui numr binar
nseamn o deplasare spre stnga cu k biti a numrului, respectiv orice mprtire cu 2
k

a unui numr binar nseamn o deplasare spre dreapta cu k biti a numrului.
Operatia de deplasare a numerelor binare este important Iiind n mod curent
utilizat n ALU (Arithmetic and Logic Unit Unitatea Logico-Aritmetic). S-a
demonstrat c operatia de nmultire cu 2 reprezint o deplasare spre stnga cu un rang
a numrului binar; mprtirea la 2 se reduce la o deplasare spre dreapta cu un rang a
numrului binar. n cazul reprezentrii cu semn se pun ntrebrile ce se ntmpl cu
bitul de semn, care e sensul deplasrii si ce bit se introduce n locul pozitiilor rmase
libere n urma deplasrii? Rspunsul la aceste ntrebri depinde de codul de
reprezentarea al numerelor negative.

I) Numere pozitive

a) nmultirea cu 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre stnga,
bitii noi introdusi sunt 0.
b) mprtirea la 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre dreapta,
bitii noi introdusi sunt 0.
Curs 1 Arhitectura CaIcuIatoareIor
18

II) Numere negative

1) Cod direct

a) nmultirea cu 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre stnga,
bitii noi introdusi sunt 0.
b) mprtirea la 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre dreapta,
bitii noi introdusi sunt 0.

2) Cod complemetar

a) nmultirea cu 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre stnga,
bitii noi introdusi sunt 0.
b) mprtirea la 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre dreapta,
bitii noi introdusi sunt 1.

3) Cod invers

a) nmultirea cu 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre stnga,
bitii noi introdusi sunt 1.
b) mprtirea la 2:
bitul de semn rmne neschimbat,
ceilalti biti se deplaseaz spre dreapta,
bitii noi introdusi sunt 1.

Se va nota:
(b) bitul care se pierde prin deplasare
b bitul care se adaug

Exemple.
I) N~0, N 0, 1010.1101
0 101 . 0101 ) 1 ( , 0 2 = N

00 01 . 1011 ) 10 ( , 0 2
2
= N

Curs 1 Arhitectura CaIcuIatoareIor
19
) 1 ( 0110 . 101 0 , 0
2
=
N

) 01 ( 1011 . 10 00 , 0
2
2
=
N


I) N0,
1) Cod direct
N 1, 1010.1101
0 101 . 0101 ) 1 ( , 1 2 = N

00 01 . 1011 ) 10 ( , 1 2
2
= N

) 1 ( 0110 . 101 0 , 1
2
=
N

) 01 ( 1011 . 10 00 , 1
2
2
=
N


2) Cod complemantar
N 1, 0101.0011
0 011 . 1010 ) 0 ( , 1 2 = N

00 11 . 0100 ) 01 ( , 1 2
2
= N

) 1 ( 1001 . 010 1 , 1
2
=
N

) 11 ( 0100 . 01 11 , 1
2
2
=
N


3) Cod invers
N 1, 0101.0010
1 010 . 1010 ) 0 ( , 1 2 = N

11 10 . 0100 ) 01 ( , 1 2
2
= N

) 0 ( 1001 . 010 1 , 1
2
=
N

) 10 ( 0100 . 01 11 , 1
2
2
=
N

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