Sunteți pe pagina 1din 11

S.D.

Anghel - Bazele electronicii analogice i digitale

10 REPREZENTAREA DIGITAL
10.1 Niveluri logice
n reprezentarea digital pentru exprimarea cantitativ a informaiei se
folosesc semnale electrice care pot avea doar dou niveluri de tensiune: un
nivel cobort i un nivel ridicat. Dac acestor dou niveluri le asociem
simbolurile numerice 0 i 1 nseamn c putem opera cu ele n sistemul de
numeraie binar. Pentru c algebra care se ocup cu operaiile n sistemul
binar se mai numete i algebr logic, cele dou niveluri de tensiune se mai
numesc 0 logic i 1 logic. De semnalele electrice care pot avea doar
dou niveluri de tensiune se ocup electronica digital.
n practic, zgomotele, care au diverse surse (mecanice, termice,
electromagnetice), determin fluctuaii ale semnalelor electrice. De
asemenea, cderile de tensiune pe unele elemente de circuit pot influena
cele dou niveluri de tensiune. S ne gndim numai la tensiunea colectoremitor de saturaie a unui tranzistor bipolar care este foarte apropiat de 0V
dar nu este exact 0V (vezi i fig.3.7). De aceea, celor dou niveluri logice nu
li se asociaz dou valori fixe de tensiune ci dou intervale de tensiune care
depind de familia de circuite digitale integrate care este n discuie. Ele sunt
prezentate n fig.10.1.
familia TTL
familia CMOS
VCC [V]

VDD [V]

1 LOGIC

1
0

1 LOGIC

0 LOGIC

0 LOGIC

TTL - Transistor Transistor Logic


CMOS - Complementary Metal Oxide Semiconductor

Fig.10.1
153

10

Reprezentarea digital
Productorii de circuite digitale garanteaz c orice semnal care are
tensiunea n interiorul acestor intervale de tensiune este interpretat ca 0
logic, respectiv 1 logic.
Trebuie menionat c exist circuite CMOS alimentate cu VDD =
3,3V sau 2,7V care au domeniile de valori corespunztoare valorilor logice
mprite n mod asemntor: ntre 0 i 30% din VDD pentru 0-logic i ntre
70% din VDD i VDD pentru 1-logic.
Nivelurile logice 0 i 1 pot fi generate de tranzistorii bipolari sau cu
efect de cmp care lucreaz n regim de comutaie ntre cele dou stri
extreme: saturat-blocat, respectiv deschis-nchis. Tranziia ntre cele dou
stri nu se poate face instantaneu pentru c ea implic redistribuirea
purttorilor de sarcin (electroni i goluri). Timpul necesar tranziiilor dintre
stri se numete timp de comutaie. Deoarece el determin viteza de lucru a
unui sistem digital, s-au fcut i se fac n continuare eforturi pentru
micorarea lui. Deocamdat, pentru un tranzistor el a ajuns undeva sub 10ps.
Dar, s nu uitm c ntr-un circuit digital informaia aplicat la intrare trece
prin mai muli tranzistori n drumul ei spre ieire, astfel nct timpii de
comutaie se cumuleaz. Timpul necesar unei informaii (s spunem o
tranziie 0 1) pentru a ajunge de la intrare la ieire se numete timp de
propagare.
10.2 Ce este un semnal digital ?
Informaiile pe care le percepem de la fenomenele din jurul nostru sunt n
genere analogice. Pentru a le msura i prelucra semnalele de orice natur
sunt transformate n semnale electrice folosind dispozitivele electronice
numite traductori. Aceste semnale sunt tot analogice. Prelucrarea semnalelor
electrice n sistemele digitale prezint avantajele vitezei mari de operare,
imunitii mai bune la zgomote, programabilitii sau a posibilitii de
memorare.
Transformarea unui semnal din form analogic n form digital
(digitizarea) presupune dou etape prezentate i n fig.10.2:
eantionarea citirea valorii lui analogice la intervale de timp
egal distanate ntre ele (s timp de eantionare). Semnalul
obinut este tot ntr-o reprezentare analogic dar este un semnal
eantionat.
cuantificarea fiecrui eantion i se atribuie un cod numeric
care conine doar dou simboluri, 0 i 1. Codul numeric este n
direct legtur cu valoarea analogic a eantionului cruia i se
asociaz. Cel mai frecvent este folosit codul binar.
154

S.D.Anghel - Bazele electronicii analogice i digitale


Pentru ca informaiile digitale astfel obinute s poat fi prelucrate
sau folosite n diferitele pri componente ale unui sistem digital complex
este necesar memorarea lor.
n legtur cu operaie de digitizare a unui semnal analogic se pune
ntrebarea fireasc: la ce intervale de timp trebuie luate eantioanele? Sau
1
?
altfel spus: ct de mare trebuie s fie frecvena de eantionare, f s =

Rspunsul este: trebuie s fie att de mare nct semnalul continuu s poat
fi reconstituit ct mai fidel din eantioanele sale. Teorema eantionrii a lui
Shanon ne lmurete pn la capt, spunndu-ne c pentru a fi posibil
reconstrucia unui semnal continuu din eantioanele sale este necesar ca
frecvena de eantionare s fie cel puin egal cu dublul frecvenei maxime
a semnalelor armonice din care se compune semnalul eantionat
f s 2 f max .
u(t) [V]
10
9
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
1
0

SEMNAL ANALOGIC CONTINUU

s
uk(t) [V]

0 0 1 0

SEMNAL ANALOGIC ESANTIONAT

0 1 0 1

0 1 1 0

0 1 1 1

.....................
MEMORIE

SEMNAL DIGITAL MEMORAT

Fig.10.2
155

10

Reprezentarea digital

10.3 Sisteme de numeraie


n viaa cotidian folosim sistemul de numeraie zecimal fr s ne
punem prea des ntrebarea de ce?. Probabil pentru c este cel mai sugestiv
i cel mai uor de utilizat de noi la efectuarea operaiilor aritmetice. Din
pcate, sistemul de numeraie zecimal cu care suntem att de obinuii nu se
preteaz la folosirea lui convenabil n sistemele digitale. De pild, este
foarte dificil proiectarea unui echipament electronic digital care s opereze
cu zece niveluri diferite de tensiune, niveluri care s corespund n mod
univoc celor zece caractere zecimale (0 - 9). n schimb, este mult mai simpl
proiectarea i realizarea unor circuite electronice care s opereze doar cu
dou niveluri de tensiune. Drept urmare, aproape toate sistemele digitale
folosesc sistemul de numeraie binar (n baza 2) ca sistem de operare de
baz dar nu exclud folosirea i a altor sisteme de numeraie atunci cnd
acest lucru uureaz funcionarea sistemului. De aceea considerm necesar
o reamintire succint a sistemelor de numeraie folosite n electronica
digital, precum i modalitile de trecere de la un sistem de numeraie la
altul.
10.3.1 Sistemul binar
n sistemul binar se folosesc doar dou simboluri sau valori posibile pe care
le poate avea un bit: 0 sau 1. El este un sistem poziional deoarece fiecrui
digit i se atribuie o pondere de rang binar (20, 21, 22, ...) n funcie de poziia
pe care o ocup n expresia numrului binar.
ponderi poziionale
3
2
1
0
-1
-2
......... 2
2
2
2
2
2
2-3......

1
0
1
1 1
0
1

punct binar

cel mai semnificativ bit


cel mai puin semnificativ bit
(MSB)
(LSB)
Pentru a gsi echivalentul zecimal al numrului exprimat n sistem
binar vom face o sum de produse a valorii fiecrui digit cu ponderea de
rang binar corespunztoare poziiei lui:
1011.1012 = (1x23) + (0x22) + 1x21) + (1x20) + (1x2-1) + 0x2-2) + (1x2-3)=
= 8 + 0 + 2 + 1 + 0.5 + 0 + 0.125 =
= 11.62510

n sistemul binar termenul de digit binar este adesea abreviat ca bit.


n numrul din exemplul precedent cei 4 bii din stnga punctului binar
156

S.D.Anghel - Bazele electronicii analogice i digitale


reprezint partea ntreag a numrului iar cei 3 bii din dreapta punctului
binar reprezint partea fracionar a lui. Cnd lucrm cu numere binare
suntem limitai la un anumit numr de bii care este impus de concreteea
circuitelor electronice folosite. Dac N este numrul de bii
din
reprezentarea binar (de obicei N este o putere a lui 2) atunci numrul
maxim pe care-l putem reprezenta are corespondentul zecimal 2N-1. Este
evident c o secven de numrare care ncepe de la 0 se va termina la 2N-1.
n Tabelul 10.1 este prezentat o astfel de secven de numrare n cazul
unei reprezentri binare pe 4 bii. Se poate observa c cel mai puin
semnificativ bit (cu ponderea 20) "basculeaz" la fiecare modificare a valorii
numrului reprezentat. Bitul cu ponderea 21 basculeaz ori de cte ori bitul
cu ponderea 20 trece din 1 n 0. n mod asemntor, bitul cu ponderea 22
basculeaz ori de cte ori bitul cu ponderea 21 trece din 1 n 0 iar bitul cu
ponderea 23 basculeaz ori de cte ori bitul cu ponderea 22 trece din 1 n 0.
Observaia ar putea continua n acelai mod i pentru o reprezentare pe 8
bii, 16 bii ...
Tabelul 10.1
Binar
Ponderea
3

Corespondentul
zecimal

2 =8

2 =4

21 = 2

20 = 1

0
0
0
0

0
0
0
0

0
0
1
1

0
1
0
1

0
1
2
3

0
0
0
0

1
1
1
1

0
0
1
1

0
1
0
1

4
5
6
7

1
1
1
1

0
0
0
0

0
0
1
1

0
1
0
1

8
9
10
11

1
1

1
1

0
0

0
1

12
13
157

10

Reprezentarea digital
1
1

1
1

1
1

0
1

14
15

Se vede deci c cel mai puin semnificativ bit i schimb starea de la


0 la 1 sau de la 1 la 0 la fiecare pas al procesului de numrare. Al doilea bit
st doi pai n starea 0 i doi pai n starea 1, al treilea bit st patru pai n
starea zero i patru n starea 1 iar al patrulea bit st opt pai n starea 0 i opt
n starea 1. Generaliznd, n cazul unei reprezentri pe N bii cel mai
semnificativ bit va sta 2N-1 pai de numrare n starea 0 i apoi nc 2N-1 pai
n starea 1.
Pentru conversia unui numr exprimat n sistemul de numeraie
zecimal n corespondentul su binar exist dou modaliti. n cazul
numerelor relativ mici, ele pot fi scrise direct ca o sum de produse ale
puterilor lui 2 cu coeficienii 0 sau 1. Aceti coeficieni, aezai ordonat
conform ponderii de rang binar de care sunt ataai, vor reprezenta
exprimarea binar a numrului zecimal. De exemplu:
2310 = 16 + 4 + 2 +1 = 1x24 + 0x23 +1x22 + 1x21+1x20
2310 = 1 0 1 1 12

n cazul numerelor mai mari, scrierea lor ca sum de produse nu mai


este chiar att de lesnicioas i atunci se recurge la diviziunea repetat cu 2.
Numrul se mparte la 2 rezultnd restul egal cu 0 sau 1. Acest rest va
constitui cel mai puin semnificativ bit din reprezentarea binar a numrului.
Apoi, ctul primei mpriri se mparte la doi. Restul mpririi (evident tot 0
sau 1) va constitui cel de-al doilea bit al reprezentrii binare. Procesul de
conversie va continua pn cnd ctul mpririi va fi 0. Restul acestei
ultime mpriri va constitui cel mai semnificativ bit al reprezentrii binare.
Ca exemplificare a acestei metode s facem conversia numrului 25 prin
aceast metod:
25 : 2 = 12
semnificativ bit
12 : 2 = 6
6:2=3
3:2=1
1:2=0
deci:

rest

LSB

rest
rest
rest
rest

0
0
1
1

MSB - cel mai semnificativ bit

cel

mai

puin

2510 = 110012

Exemplul l-am dat tot pe un numr mic, la care ar fi mai uoar


prima metod, doar pentru a observa c metoda diviziunii repetate se
158

S.D.Anghel - Bazele electronicii analogice i digitale


preteaz foarte bine unui proces de algoritmizare. Atunci cnd se utilizeaz
un calculator, ctul mpririi va fi un numr ntreg sau un numr fracionar
cu fraciunea zecimal 5. n primul caz restul este evident 0 iar n al doilea
restul se obine prin multiplicarea cu 2 a prii fracionare. Iat cum se vor
prezenta lucrurile n cazul conversiei numrului 37 dac se folosete un
calculator:
37 : 2 = 18.5
18 : 2 = 9.0
9 : 2 = 4.5
4 : 2 = 2.0
2 : 2 = 1.0
1 : 2 = 0.5

rest
rest
rest
rest
rest
rest

deci:

1
0
1
0
0
1

LSB

MSB

3710 = 1001012

10.3.2 Sistemul octal


Sistemul de numeraie octal este foarte important n sfera calculatoarelor
digitale. El este un sistem ponderat cu baza de numeraie 8, deci exist opt
valori pentru digiii care reprezint numrul. Fiecare digit al unui numr
octal poate avea oricare dintre cele opt valori: 0, 1, 2, 3, 4, 5, 6 sau 7.
Ponderea unui digit este dat de poziia sa fa de punctul octal:
......... 84

83

82

81

80 8-1
8-2
punct octal

8-3......

Conversia unui numr octal n corespondentul su zecimal se poate


face scriind suma de produse dintre valoarea fiecrui digit cu ponderea sa de
rang octal. De exemplu:
3728 = 3x82 + 7x81 + 2x80
= 3x64 + 7x8 + 2x1
= 25010
Conversia unui numr zecimal n corespondentul su octal se poate
face cu metoda diviziunii repetate cu 8 dup acelai algoritm ca i conversia
zecimal-binar, cu deosebirea c restul unei mpriri poate lua orice valoare
de la 0 la 7. S facem conversia numrului zecimal 266 n sistemul de
numeraie octal:
266 : 8 = 33
33: 8 = 4
4:8=0

rest
rest
rest

2
1
4

LSB
MSB

159

10

Reprezentarea digital

deci:

26610 = 4128

S notm c primul rest este cel mai puin semnificativ bit iar ultimul este
cel mai semnificativ bit.
Dac se folosete un calculator restul se poate calcula multiplicnd
cu 8 fraciunea zecimal a ctului mpririi. De exemplu: 266 : 8 = 33.25;
0.25x8 = 2.
Conversia octal-binar. Cel mai important avantaj al sistemului de
numeraie octal este uurina cu care un numr octal poate fi convertit n
corespondentul su binar. Conversia const n nlocuirea fiecrui digit octal
cu corespondentul su binar, coresponden dat n Tabelul 10.2.
Tabelul 10.2.
Digit octal
Echivalentul
binar

000

001

010

011

100

101

110

111

Folosind aceast coresponden s convertim 4728 n echivalentul su binar:


4
7
2

100
111
010
deci:
4728 = 100 111 0102
Verificarea o putem face convertind ambele numere n baza 10:
4728 = 4x82 + 7x81 + 2x80 = 256 + 56 +2 = 31410
1001110102 = 1x28 + 1x25 + 1x24 + 1x23 + 1x21 = 256+32+16+8+2 =
31410

Conversia unui numr ntreg binar ntr-un numr ntreg octal se face
invers dect n cazul conversiei octal-binar. Mai nti se organizeaz biii
numrului binar n grupe de cte trei, pornind de la cel mai puin
semnificativ bit. Apoi, fiecare grup este convertit n echivalentul su octal.
n cazul n care numrul binar nu are un numr de bii care s fie un
multiplu de 3, se realizeaz acest lucru prin adugarea unuia sa a doi bii 0 la
stnga celui mai semnificativ bit. S facem conversia numrului binar
11010110 n corespondentul su octal:
011 010 110

3 2 6
deci:
160

110101102 = 3268

S.D.Anghel - Bazele electronicii analogice i digitale


Se poate observa c, pentru realizarea conversiei, am adugat un bit 0 la
stnga celui mai semnificativ bit al numrului binar.
Valoarea celui mai mare digit n sistemul de numeraie octal este 7.
Cnd se face numrarea n octal i se ajunge la 7, la urmtoarea
incrementare digitul respectiv trece n zero iar digitul vecin lui de rang
superior va crete cu o unitate. Iat dou secvene de numrare n octal care
ilustreaz cele afirmate mai sus:
65, 66, 67, 70, 71, 72
sau
275, 276, 277, 300
n prima secven cnd se ajunge la 67, primul digit trece n 0 (7
0) iar digitul de rang superior crete cu o unitate (6 7). La fel se ntmpl
n a doua secven de numrare:7 0, 7 0 i 2 3.
Cu N digii octali se poate numra de la 0 la 8N-1. De exemplu, cu
trei digii octali se poate numra de la 0008 la 7778, care nseamn 83 =
51210 numere octale diferite.
Uurina cu care se poate realiza conversia ntre sistemele octal i
binar face ca sistemul de numeraie octal s fie deosebit de atractiv mai ales
pentru scrierea numerelor binare foarte mari, pentru c, dup cum se tie, n
lumea calculatoarelor numerele binare pe 64 de bii de exemplu nu sunt un
lucru neobinuit.
Numerele binare nu reprezint ntotdeauna cantiti numerice. Ele
pot fi i coduri convenionale care conin o anumit informaie. n
calculatoare numerele binare pot avea urmtoarele semnificaii:
date numerice reale
numere corespunztoare unei locaii (adrese) de memorie
instruciune codificat
coduri de litere sau alte caractere nenumerice
un grup de bii reprezentnd starea unui dispozitiv intern sau
extern calculatorului
Cnd se opereaz cu cantiti mari de numere binare alctuite din
muli bii, este convenabil i eficient ca aceste numere s fie scrise mai
degrab n sistemul octal dect n cel binar. Atenie ns, circuitele i
sistemele digitale opereaz numai n sistemul binar, sistemul octal fiind
numai un ajutor pentru operatorii sistemului.
10.3.3 Sistemul hexazecimal
Sistemul hexazecimal folosete baza de numeraie 16, existnd deci 16
simboluri diferite pentru digii. Cele 16 simboluri sunt cifrele de la 0 la 9
161

10

Reprezentarea digital
plus literele A, B, C, D, E i F. Tabelul 10.3 arat corespondena dintre
aceste simboluri i exprimarea lor n sistemele zecimal i binar.
Tabelul 10.3
Hexazecimal

Zecimal

Binar

0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Sistemul hexazecimal fiind i el unul ponderat, fiecrui digit i se


atribuie o pondere n funcie de poziia ocupat n expresia numrului.
Avnd n vedere acest lucru, conversia hexazecimal-zecimal se face dup
acelai algoritm cu conversiile binar-zecimal sau octal-zecimal. De
exemplu, numrul 2AF16 poate fi convertit astfel:
2AF16 = 2x162 + 10x161 + 15x160
= 512 + 160 + 15
= 68710

Conversia zecimal-hexazecimal se poate face prin metoda diviziunii


repetate, dup acelai algoritm ca i n cazurile zecimal-binar sau zecimaloctal, inndu-se seama de corespondena din Tabelul 10.3. S convertim n
sistemul hexazecimal numrul 42310:
423 : 16 = 26
162

rest

LSB

S.D.Anghel - Bazele electronicii analogice i digitale


26 : 16 = 1
1: 16 = 0

rest
rest

10 A
1

MSB

deci:
42310 = 1A716
Dac se folosete un calculator pentru efectuarea mpririi, restul se
calculeaz multiplicnd cu 16 fraciunea zecimal a ctului.
Conversia hexazecimal-binar se face n mod asemntor conversiei
octal - binar. Fiecrui digit hexazecimal i se asociaz corespondentul su
binar conform tabelului 3. S exemplificm convertind n binar numrul
9F216.
9
F
2

1001 1111 0010


deci:
9F216 = 1001111100102

Conversia binar - hexazecimal este procesul invers celui precedent.


Numrul binar se mparte n grupe de cte patru digii i fiecare grup este
nlocuit cu corespondentul su hexazecimal conform tabelului 3. n cazul
n care numrul total de digii nu este un multiplu de patru se adaug unu,
doi sau trei digii 0 la stnga celui mai semnificativ bit pentru realizarea
acestui deziderat. S exemplificm convertind n sistemul hexazecimal
numrul binar 111101001102.
0111 1010 0110

7
A
6
deci:
111101001102 = 7A616

Cnd se face numrarea n hexazecimal valoarea celui mai puin


semnificativ digit crete cu o unitate de la 0 la F. Odat ajuns la aceast
valoare, la urmtorul pas acest digit trece n 0 iar urmtorul digit ca pondere
crete cu o unitate. Procesul continu pn cnd i al doilea digit ajunge la F
i, trecnd n 0, determin al treilea digit s creasc cu o unitate i aa mai
departe. Exemplificm acest lucru prin dou secvene de numrare:
38, 39, 3A, 3B, 3C, 3D, 3E, 3F, 40, 41, 42
6F8, 6F9, 6FA, 6FB, 6FC, 6FD, 6FE, 6FF, 700, 701, 702

163

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