Documente Academic
Documente Profesional
Documente Cultură
ELEMENTE DE TEORIA
TRANSMISIEI INFORMAŢIEI
n
H( p1 , p2 ... pn ) = − ∑ pi log 2 pi
i =1
P2. Dacă pentru un indice i∈{1, 2, .., n} avem pi =1, atunci entropia
informaţională este nulă:
n
H(Y/ X) = ∑ p( xk )H(Y/ xk )
k=1
Sisteme de calcul şi operare
unde:
p(xk) probabilitatea realizării evenimentului xk ∈ X ;
H(Y/xk) entropia experimentului Y, condiţionată de evenimentul
xk ∈ X.
m
H(Y/ x k ) = − ∑ p( y i / x k ) log 2 p( y i / x k )
i =1
Fie:
H( X ) = − ∑ p( x ) log
x ∈X
2 p( x )
H( Y ) = − ∑ p( y) log
y ∈Y
2 p( y)
H( X / y ) = − ∑ p( x / y) log 2 p( x / y )
x ∈X
H( X / Y ) = ∑ p( y ) H ( X / y ) .
y ∈Y
Fie: c1: a1 a2 a3 → x1
c2: a2 a1 a3 → x2
c3: …
f:X→C
f-1: C → X.
N ≤ 2n
log2 N ≤ n
N
l = ∑ p( x )
i=1
i li
D
H(A) = - ∑ i =1
p( a i ) log 2 p( a i ) ≤ log 2 D
H(X)
H(X) ≤ l log2 D ⇒ l ≥ = lmin
log2 D
n
zi = ∑aj Pj , unde: aj∈{0,1},
j=1
Coduri ponderate
Tabelul 3.2
Cifra Codul Codul Codul Codul bichinar
zecimală 8421 2421 8421 50 43210
0 0000 0000 0000 01 00001
1 0001 0001 0111 01 00010
2 0010 0010 0110 01 00100
3 0011 0011 0101 01 01000
4 0100 0100 0100 01 10000
5 0101 1011 1011 10 00001
6 0110 1100 1010 10 00010
7 0111 1101 1001 10 00100
8 1000 1110 1000 10 01000
9 1001 1111 1111 10 10000
Tabelul 3.3
Cifra Codul Codul Codul Codul
zecimală 4221 5421 7421 6421
0 0000 0000 0000 0000
1 0001 0001 0001 0011
2 0010 0010 0010 0010
3 0011 0011 0011 0101
4 0110 0100 0100 0100
5 1001 1000 0101 0111
6 1100 1001 0110 1000
7 1101 1010 0111 1011
8 1110 1011 1001 1010
9 1111 1100 1010 1101
Coduri neponderate
Tabelul 3.4
Cifra Codul Codul Codul 2 din 5
zecimală Exces 3 Gray (74210)
0 0011 0000 11 000
1 0100 0001 00 011
2 0101 0011 00 101
3 0110 0010 00 110
4 0111 0110 01 001
5 1000 0111 01 010
6 1001 0101 01 100
7 1010 0100 10 001
8 1011 1100 10 010
9 1100 1101 10 100
Tabelul 3.5
n
D( vi, vj ) = ∑ ( aik ⊕ ajk ) ,
k =1
Exemplul 1
D(v0,v1)=(0 ⊕ 0) + (0 ⊕ 0) + (0 ⊕ 1) = 1
D(v0,v2)=(0 ⊕ 0) + (0 ⊕ 1) + (0 ⊕ 0) = 1
D(v0,v3)=(0 ⊕ 0) + (0 ⊕ 1) + (0 ⊕ 1) = 2
D(v0,v4)=(0 ⊕ 1) + (0 ⊕ 0) + (0 ⊕ 0) = 1
.
.
D(v0,v7)=(0 ⊕ 1) + (0 ⊕ 1) + (0 ⊕ 1) = 3
D(v1,v2)=(0 ⊕ 0) + (0 ⊕ 1) + (1 ⊕ 0) = 2
.
.
D(v1,v7)=(0 ⊕ 1) + (0 ⊕ 1) + (1 ⊕ 1) = 2
.
.
D(v6,v7)=(0 ⊕ 1) + (1 ⊕ 1) + (1 ⊕ 1) = 1
Dmin ≥ e + 1
Dmin ≥ e + c + 1
H{vi′} = z
unde:
hij - parametrii care determină transformarea H;
ai′ - simbolurile cuvântului recepţionat;
ei - elementele corectorului z.
⎡ h11 h12 h1 n ⎤
⎢ h 21 h 22 h 2n ⎥
H =⎢ ⎥ - este matricea de control;
⎢ ⎥
⎢ ⎥
⎣ hm1 hm 2 hmn ⎦
⎡em ⎤
⎢ ⎥
v′ = [ a1′ a2′ … an′ ] - cuvânt recepţionat şi z = ⎢ ⎥ - cuvânt corector.
⎢ e2 ⎥
⎢ ⎥
⎣ e1 ⎦
Elemente de teoria transmisiei informaţiei
H vT = 0
Cum n = k + m, o să avem: 2m ≥ m + k + 1.
H = [h1h2....hn]
e=[0,...,αj,...0] (αj=1)
T T
T
Z = H v ′ = H ( v i ⊕ e ) = H v ⊕ H eT
i i
Sisteme de calcul şi operare
T
Deoarece H v = 0 – este relaţia ce se foloseşte pentru determinarea
i
celor n simboluri de control, vom avea:
⎡0⎤
⎢ ⎥
⎢.⎥
⎢.⎥
⎢ ⎥
Z = H e T = [h1 h 2 ..... h j .... h n ] ⎢α j⎥ = h j
⎢ ⎥
⎢.⎥
⎢.⎥
⎢ ⎥
⎢⎣ 0 ⎥⎦
⎡ c1 ⎤ ⎡ 0 0 . . . . 1⎤ ⎡ c1 ⎤
⎢c ⎥ ⎢ 0 . . . . . 1⎥ ⎢c ⎥
⎢ 2⎥ ⎢ ⎥ ⎢ 2⎥
⎢ a3⎥ ⎢........⎥ ⎢.⎥
[h1 h 2 .... h n ] ⎢ ⎥ = 0 sau ⎢ ⎥ ⎢ ⎥ = 0
⎢.⎥ ⎢........⎥ ⎢.⎥
⎢.⎥ ⎢0 1 . . . . . ⎥ ⎢.⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣a n ⎦ ⎣1 0 . . . . 1⎦ ⎣a n ⎦
Elemente de teoria transmisiei informaţiei
⎧ c1 ⊕ a 3 ⊕ a 5 ⊕ ..... ⊕ a n = 0
⎪
⎪c 2 ⊕ a 3 ⊕ a 6 ⊕ ..... ⊕ a n = 0
⎪
⎪
⎨ .
⎪
⎪ .
⎪
⎪⎩ c m ⊕ a m+1 ⊕ ....... ⊕ a n = 0
⎡ c1' ⎤
⎡e m ⎤ ⎢ ' ⎥
⎢. ⎥ ⎢c2 ⎥
Z = H v ,T = ⎢ ⎥ = [h1...... h n ] ⎢ . ⎥
⎢ e2 ⎥ ⎢ ⎥
⎢ ⎥ ⎢ . ⎥
⎣ e1 ⎦ ⎢a ' ⎥
⎣ n⎦
⎡ c1 ⎤
⎢ ⎥
⎢c2 ⎥
⎡0 0 0 1111⎤⎢a 3 ⎥
⎢0 11 0 0 11⎥⎢ ⎥ = 0
⎢ ⎥⎢c4 ⎥
⎢⎣1 0 1 0 1 0 1⎥⎦⎢a 5 ⎥
⎢ ⎥
⎢a 6 ⎥
⎢a 7 ⎥
⎣ ⎦
⎧c4 ⊕ a5 ⊕ a 6 ⊕ a 7 = 0 ⎧c4 = a5 ⊕ a 6 ⊕ a 7
⎪ ⎪
⎨c 2 ⊕ a 3 ⊕ a 6 ⊕ a 7 = 0 ⇒ ⎨c 2 = a 3 ⊕ a 6 ⊕ a 7
⎪c ⊕ a ⊕ a ⊕ a = 0 ⎪c = a ⊕ a ⊕ a
⎩ 1 3 5 7 ⎩ 1 3 5 7
⎡ c1' ⎤
⎢ ⎥
⎢c '2 ⎥
⎢ ⎥
⎡e 4 ⎤ ⎡0 0 0 1 1 1 1⎤ ⎢ a '3 ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ' ⎥
⎢e 2 ⎥ = ⎢0 1 1 0 0 1 1⎥ ⎢c 4 ⎥
⎢⎣ e1⎥⎦ ⎢⎣1 0 1 0 1 0 1⎥⎦ ⎢ ' ⎥
⎢a 5 ⎥
⎢ ' ⎥
⎢a 6 ⎥
⎢ ' ⎥
⎢⎣a 7 ⎥⎦
Elemente de teoria transmisiei informaţiei
Exemplul 3
Rezolvare
Apelând la relaţiile:
⎧e4 = c '4 ⊕ a '5 ⊕ a '6 ⊕ a '7
⎪
⎨e2 = c '2 ⊕ a '3 ⊕ a '6 ⊕ a '7
⎪ e = c' ⊕ a ' ⊕ a ' ⊕ a '
⎩ 1 1 3 5 7
1 1 1 1 0 0 0
⎧ e4 = 1 ⊕ 0 ⊕ 0 ⊕ 0 = 1
⎪
⎨e2 = 1 ⊕ 1 ⊕ 0 ⊕ 0 = 0
⎪e = 1 ⊕ 1 ⊕ 0 ⊕ 0 = 0
⎩ 1
Deoarece (e4,e2,e1) ≠ (0,0,0), mesajul recepţionat este eronat. Dacă o
singură cifră binară a mesajului a fost modificată, atunci se poate face
corecţia; cunoscând poziţia eronată prin decodificarea lui (e4,e2,e1)= (100)2 ⇒
⇒ (4)10 ⇒ cifra c'4 devine 0.
Mesajul corect este 1110000 ⇒ acesta corespunde cifrei zecimale 8.
Aceasta s-a obţinut prin decodificarea cifrelor binare: a'3 a'5 a'6 a'7.
Simboluri
Controlul liniei
informaţionale
a11 a12 ....a1n l1
............ .
............ .
am1 am2 ....amn lm
Control coloană c1 c2.......cn
unde:
⎧ n
⎪⎪ ⊕ a ik realizează paritatea pară
k =1
li = ⎨ n
⎪ a ik ⊕ 1 realizează paritatea impară
⎪⎩⊕
(i =1, m )
k =1
⎧m
⎪⎪⊕ a kj realizează paritatea pară
k =1
cj = ⎨ m
⎪ a kj ⊕ 1 realizează paritatea impară
⎪⎩ ⊕
(j=1,n )
k =1
n
lic = ⊕ a ik [ ⊕ 1] , i = 1, m
k =1
şi
m
c jc = ⊕ a kj [⊕1] , j = 1, n
k=1
Exemplul 4
Rezolvare
Informaţia transmisă
Simbolurile informaţionale
Cifra zecimală Secvenţa EXCES 3 Control linie
x1 x2 x3 x4
4 S1 0 1 1 1 1
5 S2 1 0 0 0 1
6 S3 1 0 0 1 0
7 S4 1 0 1 0 0
8 S5 1 0 1 1 1
9 S6 1 1 0 0 0
Control coloană 1 0 1 1 1
Exemplul 5.
Cunoscând că a fost transmis un bloc de date în condiţiile
exemplului 4 şi s-a recepţionat:
0 1 1 0 1
1 0 0 0 1
1 0 0 1 1
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 0 1 1 1
Să se verifice corectitudinea recepţiei.
Informaţia recepţionată
x'1 x'2 x'3 x'4 l'i li calculat
S1 0 1 1 0 1 0
S2 1 0 0 0 1 1
S3 1 0 0 1 1 0
S4 1 0 1 0 0 0
S5 1 0 1 1 1 1
S6 1 1 0 0 0 0
C'j 1 0 1 1 1 1
Cj calculat 1 0 1 0 0
Sisteme de calcul şi operare
M ′(x) R(x)
= C(x) ⊕
G(x) G(x)
Exemplul 6
Rezolvare.
Mesajului binar M : 1110101 i se asociază polinomul M(x):
6 5 4 2
♦ M(x) = x + x + x + x + 1;
3
♦ M'(x) = M(x) • x ; deoarece gradul lui G(x) este 3.
9 8 7 5 3
♦ M'(x) = x + x + x + x + x
♦ Se împarte M'(x) la G(x):
M ′(x) R(x)
= C(x) ⊕
G(x) G(x)
x9 + x8 + x7 + x5 + x3 |x3 + x + 1
|---------
9 7 6
x + x +x |x6 + x5 + 1
-----------------------
/ x8 + x6 + x5 + x3
x8 + x6 + x5
------------------------
/ / / x3
x3 + x + 1
-----------
/ x+1
(Adunarea şi scăderea în modulo 2 sunt echivalente)
R(x) = x + 1
♦ Se obţine polinomul T(x) = M'(x) ⊕ R(x)
T(x) = x9 + x8 + x7 + x5 + x3 + x + 1
Elemente de teoria transmisiei informaţiei
Exemplul 7
Ştiind că mesajul recepţionat T': 1010101011 a fost transmis după
codificarea prin polinomul de generare G(x) = x3 + x + 1, să se verifice
corectitudinea lui.
Rezolvare.
Mesajului recepţionat T' i se asociază polinomul T'(x) = x9 + x7 +
+ x5 + x3 + x + 1.
Aplicând criteriul de detecţie a erorilor, obţinem:
x9 + x7 + x5 + x3 + x + 1 | x3 + x + 1
|--------------------
x9 + x7 + x6 | x6 + x3 + x2 + x + 1
----------------------------------------
/ / x6 + x5 + x3 + x + 1
x6 + x4 + x3
------------------------------
/ x5 + x4 + x + 1
x5 + x3 + x2
--------------------------
/ x4 + x3 + x2 + x + 1
x4 + x2 + x
---------------------
/ x3 + 1
x3 + x + 1
-----------------
/ / x /
Aşadar, mesajul recepţionat este eronat deoarece E(x) ≠ 0.
4
BAZELE NUMERICE
ALE CALCULATOARELOR
Exemplul 1
Rezolvare.
a. Conversia în binar
(248)10=(11111000)2
b. Conversia în octal
(248)10=(370)8
c. Conversia în hexazecimal
(248)10=(F8)H
Bazele numerice ale calculatoarelor
Aşadar, (248)10=(11111000)2=(370)8=(F8)H
Exemplul 2.
Pentru a face conversia din baza 2 în baza 8 sau 16 se poate porni de
la reprezentarea în baza 2 a numărului şi deoarece 8=23 iar 16=24, se pot
face grupări de 3 respectiv 4 cifre binare pentru a obţine reprezentarea în
aceste baze. În cazul numerelor întregi gruparea se face începând de la
CCMPS (de la dreapta la stânga numărului).
(248)10=( 11 111 000 )2=(370)8
Exemplul 3.
Pentru a face conversia din baza 8 în baza 2 vom înlocui fiecare
cifră a numărului scris în baza 8 cu un grup de 3 cifre binare, conform
tabelului 4.2.
Tabelul 4.2
Cifra din baza 8 Grupul de cifre în baza 2
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
Folosind datele din tabelul anterior, numărul (734)8 = (111 011 100)2
prin conversie directă.
Exemplul 4.
Pentru a face conversia din baza 16 în baza 2 vom înlocui fiecare
cifră a numărului scris în hexazecimal cu un grup de 4 cifre binare, conform
tabelului 4.3.
unde: a-1 reprezintă cifra cea mai semnificativă a părţii fracţionare. Teoretic,
algoritmul ar trebui să se încheie când partea fracţionară devine egală
cu zero, ceea ce se întâmplă într-un număr limitat de cazuri.
În practică, procedeul are un număr finit de paşi, în funcţie de
precizia aleasă. De exemplu, pentru a obţine o precizie bună, pentru fiecare
cifră zecimală trebuie calculate 4 cifre binare (în cazul conversiei din
zecimal în binar).
Exemplul 5
Fiind dat numărul (0,251)10 să se realizeze conversia în sistemele:
binar, octal şi hexazecimal.
Rezolvare.
a. Conversia în octal
(0,251)10=(0,20040)8
b. Conversia în hexazecimal
(0,251)10=(0,404)H
Bazele numerice ale calculatoarelor
c. Conversia în binar
0,251⋅2=0 + 0,502 → 0 (a -1)
0,502⋅2=1 + 0,004 → 1 (a -2)
0,004⋅2=0 + 0,008 → 0 (a -3)
0,008⋅2=0 + 0,016 → 0 (a -4)
0,016⋅2=0 + 0,032 → 0 (a -5)
0,032⋅2=0 + 0,064 → 0 (a -6)
0,064⋅2=0 + 0,128 → 0 (a -7)
0,128⋅2=0 + 0,256 → 0 (a -8)
0,256⋅2=0 + 0,512 → 0 (a -9)
0,512⋅2=1 + 0,024 → 1 (a-10)
0,024⋅2=0 + 0,048 → 0 (a-11)
0,048⋅2=0 + 0,096 → 0 (a-12)
0,096⋅2=0 + 0,192 → 0 (a-13)
0,192⋅2=0 + 0,382 → 0 (a-14)
0,382⋅2=0 + 0,762 → 0 (a-15)
0,762⋅2=1 + 0,524 → 1 (a-16)
0,524⋅2=1 + 0,048 → 1 (a-17)
(0,251)10=(0,01000000010000011)2
Exemplul 6
Rezolvare.
Exemplul 7.
Să se facă conversia din binar în zecimal a numărului (1100011)2.
Exemplul 8.
Conversia din binar în zecimal a numărului (110,101)2
Exemplul 9.
Conversia din octal în zecimal a numărului (235)8.
Exemplul 10.
Conversia din hexazecimal în zecimal a numărului (23F)H.
⎧0 dacã N ≥ 0
an = ⎨
⎩ 1 dacã N p 0
Exemplu.
Să se reprezinte în cod direct (pe 16 biţi) numărul (27)10, respectiv
numărul -(27)10.
Rezolvare.
CD
(27 )10 = (11011 )2 - -- f (27 )10 = (0000000000011011) 2
b semn
CD
- (27 )10 = (1000000000011011) 2
⎧ n-1
⎪ 0 ⋅ 2 + ∑ ai ⋅ 2i
n dacã N ≥ 0
CI ⎪
i=- m
N=⎨
n-1
⎪
⎪1 ⋅ 2 + ∑ ai ⋅ 2
n i
dacã N p 0
⎩ i=- m
Observaţie.
Reprezentarea prin complement faţă de 1 se obţine astfel:
1. Fie calculând:
CI
N = 2 n+ 1 -| N |CD - 2- m
Exemplu.
Să se reprezinte în cod invers numerele (14)10 şi -(14)10
(reprezentarea pe un octet).
Rezolvare.
* Numerele pozitive se reprezintă în CI la fel ca şi în CD.
CD, CI
(14 )10 = (1110 ) 2 (14 )10 = ( 0000 1110 )
↑
semn
CI 7
N = 28 - ∑ ai ⋅ 2i - 20
i=0
ai ( i = 1,6 ) reprezintă cifrele binare ale numărului (14)10, iar a7="0" este
cifra de semn. Calculând:
1 0000 0000 -
0000 1110
CI
Aşadar:
- (14) = (1111 0001 )2
1111 0010 -
1 ↑ semn
1111 0001
Bazele numerice ale calculatoarelor
CD
(14 )10 = (0000 1110 ) 2
CI
- (14 )10 = (1111 0001 ) 2
⎧ n-1
⎪0 ⋅ 2n + ∑ ai 2i pentru N ≥ 0
CC ⎪
i= − m
N =⎨
n-1
⎪
⎪ 1⋅2 + ∑ a i 2 pentru N p 0
n ~ i
⎩ i= − m
unde:
n-1 n-1
∑ ~a 2i =
i ∑ ai ⋅ 2i + 2-m
i= − m i= − m
1. Fie calculând:
CC
N = 2n +1 - | N|CD
ca la reprezentarea în CI;
2. Fie adunând un 1 la CCMPS a reprezentării numărului în CI;
3. Dacă se consideră reprezentarea în CD a numărului în valoare
absolută, pentru obţinerea codului complementar, începând de la CCMPS -
se lasă neschimbate toate cifrele de zero, inclusiv prima cifră binară a cărei
valoare este 1; apoi toate celelalte cifre binare se vor inversa, inclusiv cifra
de semn.
Exemplu.
Să se reprezinte în CC numerele 14 şi -14 (pe un octet).
Rezolvare.
CD,CI,CC
14 = (0000 1110 )2
↑
semn
1.
CC 7
- (14 )10 = 28 - ∑ a i ⋅ 2i ai (i=1÷6) fiind cifrele binare ale
i=0 numărului zecimal 14, iar a7 = 0 cifra de
semn.
1 0000 0000 - CC
0000 1110 - (14 )10 = (1111 0010 )2
1111 0010
Bazele numerice ale calculatoarelor
2.
CI
- (14) = (1111 0001 )2
1
CC
- (14) = (1111 0010 )2
3.
Cifre binare nemodificate
CD
14 = ( 000011 10)2
CC
− 14 = (11110010) 2
Observaţie.
În calculatoarele IBM-PC reprezentarea în virgulă fixă se face pentru
numerele întregi. Se utilizează formatele:
• formatul scurt:
• formatul lung:
⎧ 0 dacă N ≥ 0
⎪
unde S este bitul de semn şi S = ⎨
⎪ 1 dacă N < 0
⎩
Tabelul 4.4
⎧ 0 dacă N ≥ 0
⎪⎪
S= ⎨
⎪
⎪⎩ 1 dacă N < 0
1
≤ (f ) b < 1
b
N=±2E (f)2
dublă precizie:
Dacă zona exponent este egală cu zero, numărul zecimal este egal cu
zero. Dacă zona exponent este diferită de zero, atunci numărul zecimal va fi
determinat astfel:
< N >=< S >∗ ( 0.1 < fractie > )2 * 2< EXP> − (80)h
unde:
S - bit de semn (S=0 dacă N≥0 şi S=1 dacă N<0);
fi - cifrele binare ale zonei exponent (EXCES=127 sau 1023);
unde:
S - bit de semn;
I0 - bitul părţii întregii, ce se memorează în formatul temporar,
implicit în formatul scurt şi lung;
fi - cifrele binare ale fracţiei;
Ei - cifrele binare ale zonei exponent,
EXP = E + 16383 [(3FFF)H]
Dacă exponentul este egal cu zero, atunci numărul este egal cu zero.
Dacă exponentul nu este egal cu zero, numărul zecimal se va calcula după
relaţia:
<N>=<S>*(1.<fracţie>)2*2<EXP>-EXCES
Exemplu.
Să se reprezinte în virgulă mobilă (în format binar cât şi în format
real) simplă precizie numerele: N1 = 1 şi N2 = -1.
Rezolvare.
N1 = 1⋅20 ; N2 = -1⋅20
a) Format binar
VM
N1 = (8100 0000 ) H
Bazele numerice ale calculatoarelor
VM
N2 = (8180 0000 ) H
b) Format real
N1=(3F800000)H
N2=(BF800000)H
Exemplu
Fie N1 = (8561 0000)H - reprezentarea în virgulă mobilă simplă
precizie format binar. Să se determine numărul din zecimal.
Rezolvare.
N1=25⋅(0,1110000100...0)2=25x(2-1+2-2+2-3+2-8) = 24+23+22+2-3=28,125
Exemplu.
Să se reprezinte în zecimal codificat binar (în BCD) numerele
zecimale N1=9450 şi N2=78431.
Rezolvare.
N1=(1001 0100 0101 0000)2 - format împachetat
N2=(0111 1000 0100 0011 0001)2 - format împachetat
N1=(F9F4F5F0)H - format despachetat
N2=(F7F8F4F3F1)H - format despachetat
Pentru reprezentarea numerelor nu s-a impus o anumită lungime a
secvenţelor şi nu s-a ţinut cont de semnul numărului.
Pentru calculatoarele compatibile IBM-PC coprocesorul matematic
memorează numerele întregi zecimale pe zece octeţi - în format împachetat.
În acest caz macheta de reprezentare este:
unde:
S - bit de semn ( 0 pentru numere pozitive, 1 pentru numere negative);
Di - cifră zecimală (două cifre per octet);
X - biţi nefolosiţi.
Numerele negative se deosebesc de cele pozitive prin bitul de semn.
+ 0 1
0 0 1
*
1 1 10
*
1 se transportă la rangul următor
Sisteme de calcul şi operare
Exemplu.
Să se însumeze în binar (00010101)2 cu (10010111)2. Vom avea:
(00010101)2 + (21)10 +
(10010111)2 ⇔ (151)10
(10101100)2 (172)10
Descăzut
- 0 1
Scăzător 0 0 1
*
1 1 0
*
Rezultat datorită împrumutului din rangul superior
Exemplu.
Să se scadă în binar:
(11011)2 - (27)10
(01111)2 ⇔ (15)10
(01100)2 (12)10
• 0 1
0 0 0
1 0 1
Exemplu.
Să se efectueze înmulţirea: (1101)2 x (1001)2.
11012•
10012
11012
00002
00002
11012
11101012
(13)10 x (9)10=(117)10
Sisteme de calcul şi operare
Exemplu.
Să se efectueze împărţirea: (1010001)2:(1001)2=(1001)2.
Exemplu.
Să se efectueze împărţirea: (100011)2 : (110)2= (101,110)2.
Tabelul 4.5
+ 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 1 2 3 4 5 6 7 8 9 a B C D E F
1 1 2 3 4 5 6 7 8 9 A B C D E F 1
2 2 3 4 5 6 7 8 9 A B C D E F 10 1
3 3 4 5 6 7 8 9 A B C D E F 10 11 1
4 4 5 6 7 8 9 A B C D E F 10 11 12 1
5 5 6 7 8 9 A B C D E F 10 11 12 13 1
6 6 7 8 9 A B C D E F 10 11 12 13 14 1
7 7 8 9 A B C D E F 10 11 12 13 14 15 1
8 8 9 A B C D E F 10 11 12 13 14 15 16 1
9 9 A B C D E F 10 11 12 13 14 15 16 17 1
A A B C D E F 10 11 12 13 14 15 16 17 18 1
B B C D E F 10 11 12 13 14 15 16 17 18 19 1
C C D E F 10 11 12 13 14 15 16 17 18 19 1 1
D D E F 10 11 12 13 14 15 16 17 18 19 1 1 1
E E F 10 11 12 13 14 15 16 17 18 19 1 1 1 1
F F 10 11 12 13 14 15 16 17 18 19 1 1 1 1 1
Sisteme de calcul şi operare
Tabelul 4.6
* 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 1 2 3 4 5 6 7 8 9 A B C D E F
2 0 2 4 6 8 A C E 10 12 14 16 18 1A 1C 1E
3 0 1 6 9 C F 12 15 18 1B 1E 21 24 27 2A 2D
4 0 4 8 C 10 14 18 1C 20 24 28 2C 30 34 38 3C
5 0 5 A F 14 19 1E 23 28 2D 32 37 3C 41 46 4B
6 0 6 C 12 18 1E 24 2A 30 36 3C 42 48 4E 54 5A
7 0 7 E 15 1C 23 2A 31 38 3F 46 4D 54 5B 62 69
8 0 8 10 18 20 28 30 38 40 48 50 58 60 68 70 78
9 0 9 12 1B 24 2D 36 3F 48 51 5A 63 6C 75 7E 87
A 0 A 14 1E 28 32 3C 46 50 5A 64 6E 78 82 8C 96
B 0 B 16 21 2C 37 42 4D 58 63 6E 79 84 8F 9A A5
C 0 C 18 24 30 3C 48 54 60 6C 78 84 90 9C A8 B4
D 0 D 1A 27 34 41 4E 5B 68 75 82 8F 9C A9 B6 C3
E 0 E 1C 2A 38 46 54 62 70 7E 8C 9A A8 B6 C4 D2
F 0 F 1E 2D 3C 4B 5A 69 78 87 96 A5 B4 C3 D2 E1
Bazele numerice ale calculatoarelor
Tabelul 4.7
+ 0 1 2 3 4 5 6 7
0 0 1 2 3 4 5 6 7
1 1 2 3 4 5 6 7 10
2 2 3 4 5 6 7 10 11
3 3 4 5 6 7 10 11 12
4 4 5 6 7 10 11 12 13
5 5 6 7 10 11 12 13 14
6 6 7 10 11 12 13 14 15
7 7 10 11 12 13 14 15 16
Tabelul 4.8
* 0 1 2 3 4 5 6 7
0 0 0 0 0 0 0 0 0
1 0 1 2 3 4 5 6 7
2 0 2 4 6 10 12 14 16
3 0 3 6 11 14 17 22 25
4 0 4 10 14 20 24 30 34
5 0 5 12 17 24 31 36 43
6 0 6 14 22 30 36 44 52
7 0 7 16 23 34 45 52 61
Sisteme de calcul şi operare
CD n-1
N2 = bn⋅ 2n + ∑ bi⋅2i bi ∈ {0,1}
i= − m
CD n -1
N1 + N 2 = a n ⋅ 2 +
n
∑ (a + b + t ) 2
i = −m
i i i
i
Exemplu
Să se însumeze N1 cu N2, având N1=(40)10 şi N2=(60)10.
Rezolvare.
CD
N1 = (00101000 )2
CD
N2 = (00111100 )2
CD
N1 + N 2 = (01100100 )2
N 1 +N 2 =+(1 ⋅ 2 6 +1 ⋅ 2 5 +0 ⋅ 2 4 +0 ⋅ 2 3 +1 ⋅ 2 2 +0 ⋅ 2 1 +0 ⋅ 2 0 )=(100) 10
Exemplu
Să se calculeze N1 + N2, având N1=40 şi N2=90.
Rezolvare.
CD
N1 = (00101000 )2
CD
N2 = (01011010 )2
CD
N1 + N 2 = (10000010 )2
Exemplu
Să se calculeze N1+N2, având N1= -25 şi N2= -30.
Rezolvare.
CD
N1 = (1 0011001 )2
CD
N2 = (1 0011110 )2
CD
N1 + N 2 = (1 0110111 )2
Verificând:
N 1 +N 2 = -(0 ⋅ 2 6 +1 ⋅ 2 5 +1 ⋅ 2 4 +0 ⋅ 2 3 +1 ⋅ 2 2 +1 ⋅ 2 1 +1 ⋅ 2 0 )
N 1 +N 2 = -55, rezultat corect
Exemplu
Să se calculeze N1+N2, având N1= -75 şi N2= -80
Rezolvare.
CD
N1 = (11001011 )2
CD
N2 = (11010000 )2
CD
N1 + N 2 = (10011011 )2
CI
N2 = 2 -| N
8
|
2 CD -2 0
CI
N1 + N 2 = 28 + 28 -| N 2 |CD -| N 2 |CD - 2 0 - 2 0
CI
N1 + N 2 = 28 -(| N1|CD +| N 2 |CD ) - 2 0
apare necesar ca transportul de la cifra de semn să fie adunat la cifra cea mai
puţin semnificativă,
Sisteme de calcul şi operare
CI
Bitul CMPS
N1 + N 2 = 28 - (| N1|CD +| N 2 |CD ) - 20 + 28 - 20
Exemplu.
Să se calculeze N1+N2, având: N1= -30 şi N2= -14.
Rezolvare
CI
N1 = ( 1110 0001 )2
CI
N 2 = ( 1111 0001 )2
CI
N1 + N 2 = (1 1101 0010 )2 +
1
CI
N1 + N 2 = (1101 0011 )2
CD
N1 + N 2 = (1010 1100 )2
Exemplu.
Să se calculeze N1+N2, având N1= -81 şi N2= -72
Rezolvare.
CI
N1 = ( 1010 1110 )2
CI
N 2 = ( 1011 0110 )2
CI
N1 + N 2 = (1 0110 0100 )2 +
1
CI
N1 + N 2 = (0110 0101 )2 N1 + N 2 > 0
Rezultatul este eronat, deoarece cel mai mic număr întreg ce se poate
reprezenta în cod invers pe un octet este -127.
CI
N 2 = 28 -| N 2 |CD - 2 0
CI
N1 + N 2 = 28 -(| N 2 |CD -| N1|CD ) - 2 0
Exemplu.
Să se calculeze N1 + N2, având N1=91 şi N2=-20.
Rezolvare.
CI
N1 = ( 0101 1011 )2
CI
N 2 = ( 1110 1011 )2
CI
N1 + N 2 = (1 0100 0110 )2 +
1
CI
N1 + N 2 = (0100 0111 )2 → rezultat corect
Exemplu.
Să se calculeze N1+N2, având N1= -91 şi N2= 20.
Rezolvare.
CI CI
N1= ( 1010 0100 ) 2 N 2 = ( 0001 0100 ) 2
CI CD
N1 + N 2 = (1011 1000 ) 2 N1 + N 2 = (1100 0111 ) 2
CC CC
N1 = 28 -| N1|CD N 2 = 28 -| N 2 |CD
CC
N1 + N 2 = 28 -(| N1|CD +| N 2 |CD ) + 28
Exemplu.
Rezolvare.
CC CC
N1 = ( 1111 0010 )2 N 2 = ( 1011 1000 )2
CC
N1 + N 2 = (1 1010 1010 )2
Se ignoră
CD
N1 + N 2 = (11010110 )2 = - (1 ⋅ 26 + 1 ⋅ 24 + 1 ⋅ 22 + 1 ⋅ 21) = - 86
CC
N2 = 28 -| N 2 |CD
Prin adunare avem:
CC
N1 + N 2 = 28 -(| N 2 |CD - | N1|CD )
Dacă ⏐N1⏐ > ⏐N2⏐ rezultatul va fi pozitiv, iar pentru ⏐N1⏐ < ⏐N2⏐
rezultatul va fi negativ.
Bazele numerice ale calculatoarelor
Exemplul.
Să se calculeze N1 + N2, având N1= 33 şi N2= -23.
Rezolvare.
CC CC
N1 = ( 0010 0001 )2 N 2 = ( 1110 1001 )2
CC
N1 + N 2 = (1 0000 1010 )2
Verificarea: N 1 +N 2 = 1 ⋅ 2 3 +1 ⋅ 2 1 =(10) 1 0
Exemplu.
Să se calculeze N1+N2, având N1 = -33 şi N2 = 3
CC CC
N1 = ( 1101 1111 )2 N 2 = ( 0001 0111 )2
CC
N1 + N 2 = ( 1111 0110 )2
a) Adunarea/scăderea
a1) n1=n2
N 1 +N 2 =2 n 1 × (f 1 +f 2 )
Dacă f1+f2 ≥ 1 sau f1-f2 < 1/2 , rezultatul se va normaliza, prin
deplasarea cu o poziţie spre stânga sau dreapta virgulei, concomitent cu
adunarea sau scăderea unei unităţi din zona exponent.
b) Înmulţirea şi împărţirea
N1 = 2n1 ⋅ ( f 1 )2 N 2 = 2n 2 ⋅ ( f 2 )2
N1 * N 2 = 2n1+n 2 x ( f 1 x f 2 )2 iar
N1 / N 2 = 2n1-n 2 x ( f 1 / f 2 )2
Exemplu.
Să se adune în codul numeric 8421 numerele N=883 şi M= 592.
Exemplu
Să se scadă, în codul 8421, din numărul N= 1032, numărul M = 974.
5
BAZELE LOGICE
ALE CALCULATOARELOR
a) idempotenţă: x ∩ x = x; x ∪ x = x
b) comutativitate: x ∩ y = y ∩ x; x ∪ y = y ∪ x
c) asociativitate: (x ∩ y) ∩ z = x ∩ (y ∩ z)
(x ∪ y) ∪ z = x ∪ (y ∪ z)
d) absorbţie: x ∩ (x ∪ y) =x ; x ∪ (x ∩ y) = x
e) distributivitate: x ∩ (y ∪ z) = (x ∩ y) ∪ (x ∩ z)
x ∪ (y ∩ z) = (x ∪ y) ∩ (x ∪ z)
Sisteme de calcul şi operare
Exemplul 1.
E (x1, x2, x3) = x1 ∪ x2 ∪ (x2 ∩ x3 )
E (0 , 0 , 1 ) = 0 ∪ 0 ∪ (0 ∩ 1) = 0
Spunem că expresia booleană E1 (x1, x2,..., xn) este echivalentă cu
E2 (x1, x2,..., xn) dacă E1 (i1j, i2j,..., inj) ≡ E2 (i1j, i2j,...,inj) pentru ∀ j = 1, 2 n .
Exemplul 2.
E1 (x1, x2 ,x3) = x2 ∪ ( x1 ∩ x2 ∩ x3)
f : B 2 X B 2 X...X B 2 → B 2
astfel încât f (i1j, i2j,..., inj) ∈ {0,1} ∀ j = 1 , 2 n (Unele funcţii logice pot fi
incomplet definite).
Exemplul 3.
Fie f: B2 x B2 x B2 → B2 , astfel:
f(0,0,0) = 0, f(0,0,1) = 0, f(0,1,0) =1,
f(0,1,1) = 1, f(1,0,0) = 0, f(1,0,1) = 1, f(1,1,1) = 0.
În figura 5.1 avem reprezentarea grafică a acestei funcţii.
0 0 1 0 0 1 1
0 1 1 1 0 0 1
1 0 0 1 0 0 1
1 1 0 1 1 0 0
Exemplul 5.
Exemplul 6.
Reciproc, dacă avem tabelul de adevăr al funcţiei, putem determina
expresia funcţiei. Din tabelul de adevăr, funcţia f are valoarea 1 pentru
următoarele valori ale lui x şi y:
Considerăm acum valorile lui x şi y pentru care funcţia f este zero:
⎧x = 0, y = 1
⎨
⎩x = 1, y = 0
sau
⎧⎪x = 0, y = 0
⎨
⎪⎩x = 0, y = 0
f 2 ( x, y) = ( x ∪ y)(x ∪ y)
f 2 (x, y) = (x ∪ y)(x ∪ y) = x • x ∪ x • y ∪ y • x ∪ y • y =
= x • y ∪ x • y = f1(x, y)
⎧x = y = 0
⎨
⎩x = y = 1
sau
⎧ x = 1, y = 1
⎨
⎩x = y = 1
f1 ( x, y ) = x • y ∪ x • y
Sisteme de calcul şi operare
2n
f( x1 , x 2 , ... x n ) = ∪ f(i1 k , i 2 k ,..., i nk ) ⋅ x1i1k ⋅ x 2i2 k ⋅ ... x n ink
k =1
⎧⎪ x j dacă i jk = 1
având x ji jk = ⎨
⎪⎩ x j dacă i jk = 0
iar f(i1 k , i 2 k , ..., i nk ) = 1 pentru ∀ k = 1, 2n
⎧x j dacă i jk = 0
⎪
având x ijjk = ⎨
⎪
⎩ x j dacă i jk = 1
f(i1 k , i 2 k , ...i nk ) = 0 pentru ∀ k = 1, 2n
Exemplul 7.
Fie funcţia f (x,y,z) o funcţie booleană care are valoarea logică "1",
dacă cel puţin două dintre argumentele sale sunt egale cu "0". Să se scrie FCD
şi FCC pentru funcţia f(x,y,z).
Rezolvare.
Alcătuim tabelul de valori (tabelul 5.1), în care vom trece mintermenii
(mi) şi maxtermenii (Mi). Fiind o funcţie de trei variabile vom avea un număr
de 8 seturi de valori (23).
Sisteme de calcul şi operare
Tabelul 5.1
x y z f(x,y,z) mi Mi
0 0 0 1 M0= x + y + z
m0= x y z
0 0 1 1
m1= x yz M1= x + y+ z
0 1 0 1
m2= x yz M2= x + y+ z
0 1 1 0
m3= x yz M3= x + y+ z
1 0 0 1
m4= x y z M4= x + y+z
1 0 1 0
m5= x yz M5= x + y+z
1 1 0 0
m6= x y z M6= x + y+ z
1 1 1 0 m7= x y z M7= x + y+ z
f1 (x,y,z) = m0 + m1 + m2 + m4 =
x y z + x y z+ x y z + x y z
Bazele logice ale calculatoarelor
f 2 (x,y,z) = M 3 ⋅ M 5 ⋅ M 6 ⋅ M 7 =
(x + y + z)(x + y + z)(x + y + z)(x + y + z)
mi ⋅ m j = 0, ∀i ≠ j
M i ∪ M j = 1, ∀i ≠ j
2 n −1
f ( x1 ,K , xn ) = U (α
i =0
i ⋅ mi )
2 n −1
f ( x1 ,K, xn ) = I (α i ∪ M i ), α i ∈ {0,1} - numere caracteristice
i =0
Sisteme de calcul şi operare
2 n −1
f ( x1 ,K, xn ) = U (α i ⋅ mi )
i =0
2 n −1
f ( x1 ,K , xn ) = I (α i ∪ M i ),α i ∈ {0,1}
i =0
2 n −1
f ( x1 , K, xn ) = Um i = 1 (FCD)
i =0
2 n −1
f ( x1 ,K, xn ) = IM i = 0 (FCC)
i =0
mi = I M j , j = 0 K 2 n − 1
j ≠i
M i = U m j , j = 0K 2n − 1
j ≠i
Bazele logice ale calculatoarelor
f ( x) = ax ∪ b x
⎧a = f (1,1)
⎪
⎪⎪b = f (1,0)
⎨
⎪c = f (0,1)
⎪
⎪⎩d = f (0,0)
⎧a = f (0,0)
⎪b = f (0,1)
⎪
⎨
⎪c = f (1,0)
⎪⎩d = f (1,1)
j=0
Au fost incluse: funcţia zero şi funcţia unitate.
Bazele logice ale calculatoarelor
Exemplul 8.
Mulţimea funcţiilor de două variabile este prezentată în tabelul 5.2.
Dacă f : B2 X B2 X ... X B2 → B2 este o funcţie de n variabile,
analizând tabelul 5.2, putem spune că principalele funcţii elementare sunt:
3) Funcţia ŞI: f1 (x1, x2,..., xn) = x1 . x2 . ... . xn, această funcţie are
valoarea logică 1 dacă toate variabilele au valoarea logică 1.
5) Funcţia ŞI-NU, are valoarea logică 1 dacă cel puţin o variabilă are
valoarea logică 0:
f14 ( x1 , x2 , .. , x n ) = x1 ⋅ x2 ⋅ .. ⋅ x n = x1 + x2 + .. + x n
f 8 ( x1 , x2 , .., x n ) = x1 + x2 + .. + x n = x1 ⋅ x2 ⋅ .. ⋅ x n
7) Funcţia INHIBARE:
8) Funcţia IMPLICARE:
Tabelul 5.2
Denumirea
x 0 0 1 1 Funcţia FCD
funcţiei
y 0 1 0 1
f0 0 0 0 0 f0=0 f0=0 ZERO
f1 0 0 0 1 f1=xy f1=m3 ŞI
f2 0 0 1 0 f2=m2 INHIBARE
f2= x y
f3 0 0 1 1 f3=x f3=m2+m3 IDENTITATE
f4 0 1 0 0 f4=m1 INHIBARE
f4= x y
f5 0 1 0 1 f5= y f5=m1+m3 IDENTITATE
f6 0 1 1 0 f6= x ⊕ y f6=m1+m2 SAU EXCLUSIV
f7 0 1 1 1 f7= x + y f7=m1+m2+m3 SAU [INCLUSIV]
f8 1 0 0 0 f8=m0 SAU-NU [NICI,NOR]
f8= x + y
f9 1 0 0 1
f9= x y + xy f9=m0+m3 COINCIDENŢĂ
f10 1 0 1 0 f10=m0+m2 NU
f10= y
f11 1 0 1 1 f11=m0+m2+m3 IMPLICARE
f11= x + y
f12 1 1 0 0 f12= x f12=m0+m1 NU
f13 1 1 0 1 f13=m0+m1+m3 IMPLICARE
f13= x + y
f14 1 1 1 0 f14=m0+m1+m2 ŞI-NU [NAND]
f14= x ⋅ y
f15 1 1 1 1 f15=1 f15=m0+m1+m2+m3 UNU
5.6.1 Introducere
Simplificarea (minimizarea) funcţiilor logice are ca efect obţinerea
unor funcţii în formă elementară cu un număr minim de variabile şi
elemente constitutive. Minimizarea se poate face fie prin calcul direct
utilizând procedee algebrice elementare, fie utilizând diagrame ce conduc la
proceduri rapide de simplificare.
Bazele logice ale calculatoarelor
Exemplul 9.
Să se minimizeze funcţia:
f(x, y, z) = x y z + x y z + x y z = x y z
Rezolvare.
Se ştie că:
x y z+ x y z = x y z (proprietatea de idempotenţă).
f(x,y,z)= x y z + x y z + x y z + x y z + x y z + x y z
f(x,y,z)= x y ( z + z ) + x z ( y + y ) + y z ( x + x )
f(x,y,z)= x y + x z + y z .
FCD FCC
Bazele logice ale calculatoarelor
Exemplul 10.
Exemplul 11.
Rezolvare.
Vom atribui valoarea logică 1 pentru contact închis şi valoarea
logică 0 pentru contact deschis. Tabelul de adevăr pentru funcţia cerută este
prezentat în tabelul 5.3.
Sisteme de calcul şi operare
Tabelul 5.3
a b c f(a,b,c)
0 0 0 1
0 0 1 - La o funcţionare normală,
aceste combinaţii
nu pot să apară
0 1 0 -
0 1 1 -
1 0 0 0
1 0 1 -
1 1 0 1
1 1 1 0
0 +5 V +5 V 0V
Nivelul de tensiune -5 V 0V 0V -5 V
-5 V +5 V +5 V -5 V
x f(x)= x
0 1
1 0
Sisteme de calcul şi operare
Circuitul logic ŞI
x1 x2 f(x1,x2)= x1 x2
0 0 0
0 1 0
1 0 0
1 1 1
x1 x2 f(x1,x2) = x1 + x2
0 0 0
0 1 1
1 0 1
1 1 1
Bazele logice ale calculatoarelor
x1 x2 f(x1,x2)= x1 x2
0 0 1
0 1 1
1 0 1
1 1 0
x1 x2 f(x1,x2)= x1 + x2
0 0 1
0 1 0
1 0 0
1 1 0
x1 x2 f(x1, x2)= x1 x2
0 0 0
0 1 1
1 0 1
1 1 0
Bazele logice ale calculatoarelor
Dacă se va nega una din intrările unei porţi ŞI se obţine circuitul logic
de INHIBARE.
Prin negarea uneia din intrările unui circuit logic SAU se va obţine
un circuit logic de IMPLICARE.
Observaţie.
Utilizând circuitul logic NAND sau NOR se pot obţine implementări
pentru funcţiile NU, ŞI (figura 5.14), SAU.
Aşa cum poarta (ŞI, SAU etc.) este element combinaţional de bază,
circuitul basculant bistabil este folosit ca element de bază pentru memorare
(memorie RAM de un bit).
Circuitul basculant bistabil (CBB) se caracterizează prin două stări
stabile. Trecerea dintr-o stare în alta se face prin aplicarea unei comenzi
exterioare.
Din categoria circuitelor basculante mai avem:
Circuite basculante monostabile, ce se caracterizează printr-o
singură stare stabilă. Cu ajutorul unei comenzi exterioare se
poate trece într-o altă stare, în care va rămâne un interval de timp
determinat de elementele circuitului, după care revine în starea
iniţială. Acestea sunt utilizate ca elemente de temporizare.
Circuite basculante astabile, nu prezintă nici o stare stabilă.
Trecerea dintr-o stare în alta se realizează fără o comandă
exterioară. Perioada semnalelor generate depinde de valorile
parametrilor circuitului. Acestea sunt folosite drept circuite
oscilante.
Sisteme de calcul şi operare
S(t) 0 0 0 0 1 1 1 1
R(t) 0 0 1 1 0 0 1 1
Q(t-τ) 0 1 0 1 0 1 0 1
Q(t) 0 1 0 0 1 1 ? ?
Bazele logice ale calculatoarelor
Q(t) = S(t) R(t) Q(t-τ) +S(t) R(t) Q(t-τ) +S(t) R(t) Q(t-τ)
Circuitul bistabil JK
Bistabilul RST
Bistabilul JKT
5.8.1 Registrul
Tabelul de adevăr
Tabelul 5.4
Intrări Qi Ieşirea
Modul de
operare
PL CE CP DS D0-D7 Q0 Q1-Q6 Q7
Încărcarea L * * * L L L L
paralelă L * * * H H H H
Deplasarea H L L-H L * L Q0-Q5 Q6
serială H L L-H H * H Q0-Q5 Q6
Starea
H H * * * Q0 Q1-Q6 Q7
nemodificată
Bazele logice ale calculatoarelor
5.8.2 Numărătorul
Stările
Impuls Valoarea
Q3 Q2 Q1
ceas zecimală
T1 0 0 0 0
T2 0 0 1 1
T3 0 1 0 2
T4 0 1 1 3
T5 1 0 0 4
T6 1 0 1 5
T7 1 1 0 6
T8 1 1 1 7
c)
Figura 5.27 Numărător asincron direct
a) schema b) diagrama de semnale c) stările
Dezavantaj: limitarea vitezei de lucru, din cauza timpului mare de
propagare.
Avantaje:
impulsurile de numărare acţionează asupra unui singur CBB şi
deci nu este necesară o putere mare a generatorului de impulsuri;
controlul numărării este foarte simplu, fiind suficientă oprirea
basculării primului CBB din lanţ pentru ca numărarea să fie
oprită.
Bazele logice ale calculatoarelor
Stările
Impuls Valoarea
Q3 Q2 Q1
ceas zecimală
T1 0 0 0 0
T2 1 1 1 7
T3 1 1 0 6
T4 1 0 1 5
T5 1 0 0 4
T6 0 1 1 3
T7 0 1 0 2
T8 0 0 1 1
c)
Numărătoare reversibile
Intrări Ieşiri
ai bi Ti Si Ti+1
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Sisteme de calcul şi operare
Ö utilizare:
 matrice pentru codificare;
 matrice pentru decodificare;
 matrice pentru selecţie;
 matrice pentru distribuţie.
Tabel de adevăr
Tabelul 5.5
Tabelul. 5.6
Familia de CI Circuite combinaţionale Circuite secvenţiale
Porţi: NU, ŞI, SAU, NAND, Circuite basculante
NOR bistabile