Sunteți pe pagina 1din 266

CZU 004(075.

3)
G 80
Elaborat conform curriculumului disciplinar n vigoare i aprobat prin Ordinul minis
trului educaiei (nr. 211 din
11 aprilie 2012). Editat din sursele financiare ale Fondului Special pentru Manu
ale.
Comisia de experi: Teodora Gherman, dr. n pedagogie, confereniar, ef Catedr Tehnologi
i Informaionale
Aplicate, Academia de Administrare Public de pe lng Preedintele Republicii Moldova;
Gheorghe Chistruga,
prof. c., grad did. superior, Liceul Teoretic Mihai Eminescu , Drochia; Mihai Chigai
, prof. c., grad did. I,
Liceul Teoretic Caplani, rn. tefan-Vod
Recenzeni: Gheorghe Ciocanu, dr. habilitat n informatic, profesor universitar, Univ
ersitatea de Stat din Moldova;
Valeriu Cabac, dr. n fizic i matematic, confereniar universitar, Universitatea de Sta
t Alecu Russo , Bli;
Mihai leahtichi, dr. n psihologie i pedagogie, confereniar universitar, Universitatea
Liber Internaional din
Moldova; Tatiana Cartaleanu, dr. n filologie, confereniar universitar, Universitat
ea Pedagogic de Stat Ion
Creang , Chiinu; Alexei Colbneac, Maestru n Arte, profesor universitar, Academia de Muz
ic, Teatru i
Arte Plastice, Chiinu

Redactor: Vasile Bahnaru


Corectori: Mariana Belenciuc, Oana Stoian
Redactor tehnic: Nina Duduciuc
Machetare computerizat: Anatol Andrichi
Copert: Vitaliu Pogola
ntreprinderea Editorial-Poligrafic tiina,
str. Academiei, nr. 3; MD-2028, Chiinu, Republica Moldova;
tel.: (+373 22) 73-96-16; fax: (+373 22) 73-96-27;
e-mail: prini@stiinta.asm.md
DIFUZARE:
M Societatea de Distribuie a Crii PRO-NOI
str. Alba-Iulia, nr. 23/1A; MD-2051, Chiinu;
tel.: (+373 22) 51-68-17, 51-57-49; fax: (+373 22) 50-15-81;
e-mail: info@pronoi.md; www.pronoi.md
Toate drepturile asupra acestei ediii aparin ntreprinderii Editorial-Poligrafice tii
na.
Descrierea CIP a Camerei Naionale a Crii
Gremalschi, Anatol
Informatic: Man. pentru clasa a 10-a / Anatol Gremalschi, Iurie Mocanu, Ludmila G
remalschi;
Min. Educaiei al Rep. Moldova.
Ch.: .E.P. tiina, 2012 (Tipogr. SEREBIA SRL).
188 p.
ISBN 978-9975-67-818-6
004(075.3)
ISBN 978-9975-67-818-6
Anatol Gremalschi, Iurie Mocanu,
Ludmila Gremalschi. 2007, 2012
ntreprinderea Editorial-Poligrafic
tiina. 2007, 2012

Introducere
Pagina
Real
Coninuturi
Umanist
CUPRINS
5
1. TIPURI DE DATE STRUCTURATE
1.1. Tipuri de date tablou (array)
1.2. Tipuri de date ir de caractere
1.3. Tipuri de date articol (record)
1.4. Instruciunea with
1.5. Tipuri de date mulime (set)
1.6. Generaliti despre fiiere
1.7. Fiiere secveniale
1.8. Fiiere text
Test de autoevaluare nr. 1

7
14
18
23
26
31
34
38
44
2. INFORMAIA
2.1. Cantitatea de informaie
2.2. Codificarea i decodificarea informaiei
2.3. Coduri frecvent utilizate
2.4. Informaia mesajelor continue

2.5. Cuantizarea imaginilor


2.6. Reprezentarea i transmiterea informaiei
Test de autoevaluare nr. 2

46
49
51
56
60
62
66

68
71
73
76
78
79
82
86

88
91
94
96
3. BAZELE ARITMETICE ALE TEHNICII DE CALCUL

3.1. Sisteme de numeraie


3.2. Conversiunea numerelor dintr-un sistem n altul
3.3. Conversiunea din binar n octal, hexazecimal i invers
3.4. Operaii aritmetice n binar
3.5. Reprezentarea numerelor naturale n calculator
3.6. Reprezentarea numerelor ntregi
3.7. Reprezentarea numerelor reale
Test de autoevaluare nr. 3
4. ALGEBRA BOOLEAN
4.1. Variabile i expresii logice
4.2. Funcii logice
4.3. Funcii logice frecvent utilizate
Test de autoevaluare nr. 4

6. STRUCTURA I FUNCIONAREA CALCULATORULUI


6.1. Schema funcional a calculatorului
6.2. Formatul instruciunilor
6.3. Tipuri de instruciuni
6.4. Limbajul cod calculator i limbajul de asamblare
6.5. Resursele tehnice i resursele programate ale calculatorului
6.6. Memorii externe pe benzi i discuri magnetice
6.7. Memorii externe pe discuri optice
6.8. Vizualizatorul i tastatura
6.9. Imprimantele
6.10. Clasificarea calculatoarelor
6.11. Microprocesorul
Test de autoevaluare nr. 6
7. REELE DE CALCULATOARE
7.1. Introducere n reele
7.2. Tehnologii de cooperare n reea
7.3. Topologia i arhitectura reelelor
7.4. Reeaua Internet
7.5. Servicii Internet
Test de autoevaluare nr. 7

Pagina
5. CIRCUITE LOGICE
5.1. Circuite logice elementare
5.2. Clasificarea circuitelor logice
5.3. Sumatorul
5.4. Circuite combinaionale frecvent utilizate
5.5. Bistabilul RS
5.6. Circuite secveniale frecvent utilizate
5.7. Generatoare de impulsuri
Test de autoevaluare nr. 5
Real
Umanist
Coninuturi

98
103
103
107
110
113
116
118

121
123
126
127
130
131
135
139
141
144
145
147

150
153
155
158
163
168
Rspunsuri la testele de autoevaluare
170
Bibliografie
187

INTRODUCERE
Impresionantele realizri n domeniul informaticii, crearea supercalculatoarelor i
a calculatoarelor personale, apariia ciberspaiului, a realitii virtuale i a Internetu
lui presupun o cunoatere profund a principiilor de funcionare i a structurii calcula
toarelor moderne. Din motive justificate, aceste principii au devenit o cluz demn
de toat ncrederea ntr-o lume aflat mereu n schimbare.
Manualul de fa are drept scop nsuirea de ctre elevi a cunotinelor necesare pentru prel
crarea automat a informaiei cu ajutorul calculatoarelor numerice.
Capitolul 1 include un amplu material teoretic i practic referitor la definirea i
prelucrarea datelor structurate: a tablourilor, a irurilor de caractere, a artico
lelor, a mulimilor i fiierelor. Snt prezentate metodele de creare i de prelucrare a f
iierelor: asocierea fiierelor PASCAL cu fiiere externe, scrierea i citirea component
elor unui fiier.
Capitolul 2 include expunerea unor cunotine fundamentale din teoria informaiei,
i anume: cantitatea de informaie din mesajele continue i discrete, codificarea i dec
odificarea informaiei, prezentarea informaiei n calculator.
n Capitolul 3 snt expuse cunotine fundamentale din domeniul aritmeticii sistemelor d
e calcul: sisteme de numeraie i operaii aritmetice n sistemul binar, reprezentarea
numerelor naturale, numerelor ntregi i a numerelor reale n calculator.
Capitolul 4 include unele cunotine fundamentale din domeniul algebrei booleene.
Snt expuse noiunile de variabil, constant i funcii booleene, se examineaz funciile
logice frecvent utilizate.
n Capitolul 5 se studiaz circuitele logice ale unui calculator numeric: sumatorul,
comparatorul, codificatorul i decodificatorul, bistabilul, registrul, numrtorul, ge
neratorul de impulsuri.
Structura i funcionarea calculatorului snt descrise n Capitolul 6. Materialul este
expus n aa mod nct structura unui calculator numeric poate fi neleas i nsuit
metodic, de la pori logice, dispozitive i uniti la sisteme de calcul. O atenie deoseb
it se
acord interdependenei dintre conceptele matematice i realizarea fizic a echipamentel
or unui sistem de calcul, interconexiunilor dintre resursele tehnice i cele progr
amate ale
calculatorului.
n Capitolul 7 se studiaz reelele de calculatoare. Snt expuse tehnologiile de coopera
re n reea, topologia i arhitectura reelelor locale, regionale i globale. Pentru a fac
ilita explorarea ciberspaiului, acest capitol include cunotine fundamentale despre
Internet i serviciile din reea: transferul fiierelor, pota electronic, paginile Web.
Manualul este realizat n conformitate cu Curriculumul disciplinar de informatic pe
ntru
nvmntul liceal, aprobat prin Ordinul Ministerului Educaiei al Republicii Moldova
umanist i rea
nr. 244 din 27 aprilie 2010. Repartizarea materialului pe profiluri
l
este reflectat n cuprinsul manualului.
5

Capitolul 1
TIPURI DE DATE STRUCTURATE
1.1. Tipuri de date tablou (array)
Mulimea de valori ale unui tip de date array este constituit din tablouri (tabele)
. Tablourile snt formate dintr-un numr fixat de componente de acelai tip, denumit t
ip de baz. Referirea componentelor se face cu ajutorul unui indice.
Un tip de date tablou se definete printr-o construcie de forma
type <Nume tip> = array [T1] of T2;
unde T1 este tipul indicelui care trebuie s fie ordinal, iar T2 este tipul compon
entelor (tipul de baz) care poate fi un tip oarecare.
Exemple:
1)
type Vector = array [1..5] of real;
var x : Vector;
2) type Zi = (L, Ma, Mi, J, V, S, D);
Venit = array [Zi] of real;
var v : Venit;
z : Zi;
3) type Ora = 0..23;
Grade = -40..40;
Temperatura = array [Ora] of Grade;
var t : Temperatura;
h : Ora;
Structura datelor din exemplele n studiu este prezentat n figura 1.1.
Fiecare component a unei variabile de tip tablou poate fi specificat explicit,
prin numele variabilei urmat de indicele respectiv ncadrat de paranteze ptrate.
Exemple:
1) x[1], x[4];
2) v[L], v[Ma], v[J];
3) t[0], t[15], t[23];
4) v[z], t[h].
7

Fig. 1.1. Structura datelor de tip Vector, Venit i Temperatura


Asupra componentelor datelor de tip tablou se pot efectua toate operaiile
admise de tipul de baz respectiv. Programul ce urmeaz afieaz pe ecran suma
componentelor variabilei x de tip Vector. Valorile componentelor x[1], x[2], ...
,
x[5] se citesc de la tastatur.
Program P77;
{ Suma componentelor variabilei x de tip Vector }
type Vector = array [1..5] of real;
var x : Vector;
i : integer;
s : real;
begin
writeln(Dati 5 numere: );
for i:=1 to 5 do readln(x [i]);
writeln( Ati introdus: );
for i:=1 to 5 do writeln(x [i]);
s:=0;
for i:=1 to 5 do s:=s+x [i];
writeln(Suma=, s);
readln;
end.
Pentru a extinde aria de aplicare a unui program, se recomand ca numrul
de componente ale datelor de tip array s fie specificate prin constante.
De exemplu, programul P77 poate fi modificat pentru a nsuma n numere
reale, n100:
8

Program P78;
{ Extinderea domeniului de aplicare a programului P77 }
const nmax = 100;
type Vector = array [1..nmax] of real;
var x : Vector;
n : 1..nmax;
i : integer;
s : real;
begin
write(n=); readln(n);
writeln( Dati , n, numere:);
for i:=1 to n do readln(x [i]);
writeln( Ati introdus: );
for i:=1 to n do writeln(x [i]);
s:=0;
for i:=1 to n do
s:=s+x[i];
writeln(Suma=, s);
readln;
end.
Tablourile bidimensionale se definesc cu ajutorul construciei
type <Nume tip> = array [T1, T2] of T3;
unde T1 i T2 specific tipul indicilor, iar T3
tipul componentelor.
Pentru exemplificare, n figura1.2 este prezentat structura datelor tipului:
Matrice = array [1..3, 1..4] of real
Fig. 1.2. Structura datelor de tip Matrice
Componentele unei variabile de tip tablou bidimensional se specific explicit
prin numele variabilei urmat de indicii respectivi separai prin virgul i ncadrai de p
aranteze ptrate.
De exemplu, n prezena declaraiei
var m : Matrice;
9

notaia m[1,1] specific componenta din linia 1, coloana 1 (vezi fig.1.2); notaia
m[1,2] specific componenta din linia 1, coloana 2; notaia m[i,j] specific
componenta din linia i, coloana j.
Programul ce urmeaz afieaz pe ecran suma componentelor variabilei m de
tip Matrice. Valorile componentelor m[1,1], m[1,2], ..., m[3,4] se citesc de la
tastatur.
Program P79;
{ Suma componentelor variabilei m de tip Matrice }
type Matrice = array [1..3, 1..4] of real;
var m : Matrice;
i, j : integer;
s : real;
begin
writeln( Dati componentele m[i,j]: );
for i:=1 to 3 do
for j:=1 to 4 do
begin
write(m[, i, ,, j, ]=);
readln(m[i,j]);
end;
writeln( Ati introdus: );
for i:=1 to 3 do
begin
for j:=1 to 4 do write(m[i,j]);
writeln;
end;
s:=0;
for i:=1 to 3 do
for j:=1 to 4 do
s:=s+m[i,j];
writeln(Suma=, s);
readln;
end.
n general, un tip tablou n-dimensional (n=1, 2, 3 etc.) se definete cu
ajutorul diagramelor sintactice din Bigura 1.3. Atributul packed (mpachetat)
indic cerina de optimizare a spaiului de memorie pentru elementele tipului
array. Menionm c n majoritatea compilatoarelor actuale utilizarea acestui
atribut nu are niciun efect, ntruct optimizarea se efectueaz n mod automat.
Fiind date dou variabile de tip tablou de acelai tip, numele variabilelor pot
aprea ntr-o instruciune de atribuire. Aceast atribuire nseamn copierea tuturor compone
ntelor din membrul drept n cel stng.
De exemplu, n prezena declaraiilor
var a, b : Matrice;
10

Fig. 1.3. Diagrama sintactic <Tip tablou>


instruciunea
a:=b
este corect.
n exemplele de mai sus tipul de baz (tipul componentelor) a fost de fiecare
dat un tip simplu. Deoarece tipul de baz poate fi, n general, un tip arbitrar,
devine posibil definirea tablourilor cu componente de tip structurat. Considerm ac
um un exemplu n care tipul de baz este el nsui un tip array:
Type Linie = array [1..4] of real;
Tabel = array [1..3] of Linie;
var L : Linie;
T : Tabel;
x : real;
Variabila T este format din 3 componente: T[1], T[2] i T[3] de tipul
Linie. Variabila L este format din 4 componente: L[1], L[2], L[3] i L[4] de
tipul real.
Prin urmare, atribuirile
L[1]:=x; x:=L[3]; T[2]:=L; L:=T[1]
snt corecte.
Elementele variabilei T pot fi specificate prin T[i][j] sau prescurtat T[i,j].
Aici i indic numrul componentei de tip Linie n cadrul variabilei T, iar j
numrul componentei de tip real n cadrul componentei T[i] de tip Linie.
Subliniem faptul c declaraiile de forma
array [T1, T2 ] of T3
i
array [T1] of array [T2] of T3
11

definesc tipuri distincte de date. Prima declaraie definete tablouri bidimensional


e cu componente de tipul T3. A doua declaraie definete tablouri unidimensionale cu
componente de tipul array[T2] of T3.
n programele PASCAL tablourile se utilizeaz pentru a grupa sub un singur
nume mai multe variabile cu caracteristici identice.
ntrebri i exerciii
Precizai tipul indicilor i tipul componentelor din urmtoarele declaraii:
type P = array
Culoare =
R = array
S = array
T = array
[1..5] of integer;
(Galben, Verde, Albastru, Violet);
[Culoare] of real;
[Culoare, 1..3] of boolean;
[boolean] of Culoare;
Reprezentai structura datelor de tipul P, R, S i T pe un desen (fig.1.1 i 1.2).
Indicai pe diagrama sintactic din figura1.3 drumurile care corespund declaraiilor di
n exerciiul 1.
Scriei formulele metalingvistice care corespund diagramei sintactice <Tip tablou>
din figura1.3.
Se consider declaraiile:
type Vector = array [1..5] of real;
var x, y : Vector;
Scriei expresia aritmetic a crei valoare este:
a) suma primelor trei componente ale variabilei x;
b) suma tuturor componentelor variabilei y;
c) produsul tuturor componentelor variabilei x;
d) valoarea absolut a componentei a treia a variabilei y;
e) suma primelor componente ale variabilelor x i y.
Se consider declaraiile
type Zi = (L, Ma, Mi, J, V, S, D);
Venit = array [Zi] of real;
var v : Venit;
Componentele variabilei v reprezint venitul zilnic al unei ntreprinderi. Elaborai u
n program care:
a) calculeaz venitul sptmnal al ntreprinderii;
b) calculeaz media venitului zilnic;
c) indic ziua n care s-a obinut cel mai mare venit;
d) indic ziua cu venitul cel mai mic.
Se consider declaraiile
type Ora = 0..23;
Grade = -40..40;
Temperatura = array [Ora] of Grade;
var t : Temperatura;
12

Componentele variabilei t reprezint temperaturile msurate din or n or pe


parcursul a 24 de ore. Elaborai un program care:
a) calculeaz temperatura medie;
b) indic maximul i minimul temperaturii;
c) indic ora (orele) la care s-a nregistrat temperatura maxim;
d) indic ora (orele) la care s-a nregistrat temperatura minim.
Se consider declaraiile
type Oras = (Chisinau, Orhei, Balti, Tighina, Tiraspol);
Zi = (L, Ma, Mi, J, V, S, D);
Consum = array [Oras, Zi] of real;
var C : Consum;
r : Oras;
z : Zi;
Componenta C[r,z] a variabilei C reprezint consumul de energie electric a
oraului r n ziua z. Elaborai un program care:
a) calculeaz energia electric consumat de fiecare ora pe parcursul unei sptmni;
b) calculeaz energia electric consumat zilnic de oraele n studiu;
c) indic oraul cu un consum sptmnal maxim;
d) indic oraul cu un consum sptmnal minim;
e) indic ziua n care oraele consum cea mai mult energie electric;
f) indic ziua n care oraul consum cea mai puin energie electric.
Se consider declaraiile
type Vector = array [1..5] of real;
Matrice = array [1..3, 1..4] of real;
Linie = array [1..4] of real;
Tabel = array [1..3] of Linie;
var V : Vector;
M : Matrice;
L : Linie;
T : Tabel;
x : real;
i : integer;
Care dintre atribuirile ce urmeaz snt corecte?
a) T[3]:=T[1];
h)
i:=M[1,2];
b) M:=T;
i)
x:=V[4];
c) L:=V;
j)
L[3]:=V[4];
d) L[3]:=x;
k)
T[1]:=4;
e) x:=i;
l)

T[2]:=V;
f)
m) L:=T[3];
i:=x;
g) L[3]:=i;
n)
T[1,2]:=M[1,2];
13

o) T[1,2]:=M[1,2];
s)
x:=M[1];
p) M[1]:=4;
t)
L:=M[1];
q) M[1,3]:=L[2];
u)
V[5]:=M[3,4];
r) x:=T[1][2];
v)
L:=M[3,4].
Utiliznd un tip de date tablou, elaborai un program care realizeaz algoritmul
lui Eratostene pentru calcularea numerelor prime mai mici dect un numr
natural dat n (n200).
1.2. Tipuri de date ir de caractere
n limbajul-standard tipul de date ir de caractere reprezint un caz special al
tipului array i se definete printr-o construcie de forma
<Nume tip> ::= packed array [1..n] of char;
Mulimea de valori ale tipului de date n studiu este format din toate irurile
ce conin exact n caractere.
Exemplu:
Program P80;
{ Siruri de caractere de lungime constanta }
type Nume = packed array [1..8] of char;
Prenume = packed array [1..5] of char;
var N : Nume;
P : Prenume;
begin
N:=Munteanu;
P:=Mihai;
writeln(N);
writeln(P);
readln;
end.
Rezultatul afiat pe ecran:
Munteanu
Mihai
ntruct irurile de lungime diferit aparin unor tipuri distincte de date, n
cadrul programului P80 nu snt admise atribuiri de genul:
N:= Olaru;
P:= Ion.
14

n astfel de cazuri, programatorul va completa datele respective cu spaiul pn


la numrul stabilit de caractere n, de exemplu:
N:= Olaru ;
P:= Ion .
Valorile unei variabile v de tip packed array [1..n] of char pot fi
introduse de la tastatur numai prin citirea separat a componentelor respective:
read(v[1]); read(v[2]); ...; read(v[n]).
n schimb, o astfel de valoare poate fi afiat n totalitatea ei printr-un singur
apel write(v) sau writeln(v).
Subliniem faptul c irurile de caractere de tip packed array [1..n] of
char conin exact n caractere, adic snt iruri de lungime constant. Evident, lungimea l
or nu poate fi modificat pe parcursul derulrii programului
respectiv. Acest fapt complic elaborarea programelor destinate prelucrrii unor
iruri arbitrare de caractere.
Pentru a elimina acest neajuns, versiunile actuale ale limbajului permit utiliza
rea irurilor de caractere de lungime variabil. n Turbo PASCAL un tip de
date ir de caractere de lungime variabil se declar printr-o construcie de
forma:
type <Nume tip> = string;
sau
type <Nume tip> = string [nmax];
unde nmax este lungimea maxim pe care o pot avea irurile respective. n
255 de c
lipsa parametrului nmax lungimea maxim se stabilete implicit, n mod obinuit
aractere.
Asupra irurilor de tip string se poate efectua operaia de concatenare (juxtapunere
), notat prin semnul + . Lungimea curent a unei valori v de tip string
poate fi aflat cu ajutorul funciei predefinite length(v) care returneaz o valoare d
e tip integer. Indiferent de lungime, toate irurile de caractere de tip
string snt compatibile.
Exemplu:
Program P81;
{ Siruri de caractere de lungime variabila }
type Nume = string [8];
Prenume = string [5];
NumePrenume = string;
var N : Nume;
P : Prenume;
NP : NumePrenume;
L : integer;
15

begin
N:=Munteanu;
P:=Mihai;
NP:=N+ +P;
N:=Olaru;
P:=Ion;
NP:=N+ +P;
readln;
end.
L:=length(N);
L:=length(P);
L:=length(NP);
L:=length(N);
L:=length(P);
L:=length(NP);
writeln(N, L:4);
writeln(P, L:4);
writeln(NP, L:4);
writeln(N, L:4);
writeln(P, L:4);
writeln(NP, L:4);
Rezultatele afiate pe ecran:
Munteanu
8
Mihai
5
Munteanu Mihai
Olaru
5
Ion
3
Olaru Ion 9
14
Se observ c pe parcursul derulrii programului n studiu lungimea irurilor
de caractere N, P i NP se schimb.
Asupra irurilor de caractere snt admise operaiile relaionale <, <=, =, >=, >,
<>. irurile se compar component cu component de la stnga la dreapta n
conformitate cu ordonarea caracterelor n tipul de date char. Ambii operanzi
trebuie s fie de tip packed array [1..n] of char cu acelai numr de
componente sau de tip string. Evident, operanzii de tip string pot avea lungimi
arbitrare.
De exemplu, rezultatul operaiei
AC < BA
este true, iar rezultatul operaiei
AAAAC < AAAAB
este false.
O variabil de tip ir de caractere poate fi folosit fie n totalitatea ei, fie parial,
prin referirea unui caracter din ir.
De exemplu, pentru P=Mihai avem P[1]=M, P[2]=i, P[3]=h .a.m.d.
Dup executarea secvenei de instruciuni
P[1]:=P;
P[2]:=e;
P[3]:=t;
P[4]:=r;
P[5]:=u

variabila P va avea valoarea Petru.


16

Programul ce urmeaz citete de la tastatur iruri arbitrare de caractere i


afieaz pe ecran numrul de spaii n irul respectiv. Derularea programului se
termin dup introducerea irului Sfirsit .
Program P82;
{ Numarul de spatii intr-un sir de caractere }
var S : string;
i, j : integer;
begin
writeln( Dati siruri de caractere: );
repeat
readln(S);
i:=0;
for j:=1 to length(S) do
if S[j]= then i:=i+1;
writeln( Numarul de spatii=, i);
until S= Sfirsit ;
end.
ntrebri i exerciii
Cum se definete un tip de date ir de caractere?
Ce operaii pot fi efectuate asupra irurilor de caractere?
Comentai urmtorul program:
Program P83;
{ Eroare }
var S : packed array [1..5] of char;
begin
S:=12345;
writeln(S);
S:=Sfat;
writeln(S);
end.
Elaborai un program care:
a) determin numrul de apariii ale caracterului A ntr-un ir;
b) substituie caracterul A prin caracterul *;
c) radiaz din ir caracterul B;
d) determin numrul de apariii ale silabei MA ntr-un ir;
e) substituie silabele MA prin silaba TA;
f) radiaz din ir silaba TO.
Precizai rezultatul operaiilor relaionale:
a) B < A;
c) BAAAA < AAAAA;
b) BB > AA;
d) CCCCD > CCCCA;
17

e) A A = AA;
h) Aa > aA;
f)
i)
123 = 321;
j)
12345 > 12345.
BB < B B;
g) A = a;
Se consider iruri de caractere formate din literele mari ale alfabetului latin i sp
aii.
Elaborai un program care afieaz irurile n studiu dup urmtoarele reguli:
fiecare liter de la A pn la Y se nlocuiete prin urmtoarea liter din alfabet;
fiecare liter Z se nlocuiete prin litera A;
fiecare spaiu se nlocuiete prin -.
Elaborai un program care descifreaz irurile cifrate conform regulilor din exerciiul
6.
Se consider m, m 100 iruri de caractere formate din literele mici ale alfabetului
latin. Elaborai un program care afieaz pe ecran irurile n studiu n
ordine alfabetic.
irul S este compus din cteva propoziii, fiecare terminndu-se cu punct, semn
de exclamare sau semnul ntrebrii. Elaborai un program care afieaz pe ecran
numrul de propoziii din irul n studiu.
1.3. Tipuri de date articol (record)
Mulimea de valori ale unui tip de date record este constituit din articole
(nregistrri). Articolele snt formate din componente, denumite cmpuri. Spre
deosebire de componentele unui tablou, cmpurile pot fi de tipuri diferite. Fiecar
e cmp are un nume (identificator de cmp).
Un tip de date articol se definete printr-o structur de forma
type <Nume tip> = record
<Nume cmp 1> : T1;
<Nume cmp 2> : T2;
...
<Nume cmp n> : Tn;
end;
unde T1, T2, .., Tn specific tipul cmpurilor respective. Tipul unui nume de cmp
este arbitrar, astfel un cmp poate s fie la rndul lui tot de tip articol. Prin urma
re, se pot defini tipuri imbricate.
Exemple:
1) type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
var E1, E2 : Elev;
18

2)
type Punct = record
x : real; { coordonata x }
y : real; { coordonata y }
end;
var P1, P2 : Punct;

3) type Triunghi = record


A : Punct; { virful A }
B : Punct; { virful B }
C : Punct; { virful C }
end;
var T1, T2, T3 : Triunghi;
Structura datelor din exemplele n studiu este prezentat n figura1.4.
Fiind date dou variabile de tip articol de acelai tip, numele variabilelor pot
aprea ntr-o instruciune de atribuire. Aceast atribuire nseamn copierea tuturor cmpuril
r din membrul drept n membrul stng. De exemplu, pentru tipurile de date i variabile
le declarate mai sus instruciunile
E1:=E2;
T2:=T3;
P2:=P1
snt corecte.
Fiecare component a unei variabile de tip record poate fi specificat explicit, pri
n numele variabilei i denumirile de cmpuri, separate prin puncte.
Exemple:
1) E1.Nume, E1.Prenume, E1.NotaMedie;
2) E2.Nume, E2.Prenume, E2.NotaMedie;
Fig. 1.4. Structura datelor de tip Elev, Punct i Triunghi
19

3) P1.x, P1.y, P2.x, P2.y;


4) T1.A, T1.B, T1.C, T2.A, T2.B, T2.C;
5) T1.A.x, T1.A.y, T2.B.x, T2.B.y.
Evident, componenta E1.Nume este de tip string; componenta P1.x este de
tip real; componenta T1.A este de tip Punct; componenta T1.A.x este de tip
real .a.m.d.
Asupra componentelor datelor de tip articol se pot efectua toate operaiile
admise de tipul cmpului respectiv. Programul ce urmeaz compar notele medii
a doi elevi i afieaz pe ecran numele i prenumele elevului cu nota medie mai
bun. Se consider c elevii au note medii diferite.
Program P84;
{ Date de tipul Elev }
type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
var E1, E2, E3 : Elev;
begin
writeln( Dati datele primului elev: );
write(Numele:);
readln(E1.Nume);
write(Prenumele:); readln(E1.Prenume);
write(Nota medie:); readln(E1.NotaMedie);
writeln( Dati datele elevului al doilea: );
write(Numele:);
readln(E2.Nume);
write(Prenumele:); readln(E2.Prenume);
write(Nota medie:); readln(E2.NotaMedie);
if E1.NotaMedie > E2.NotaMedie then E3:=E1 else E3:=E2;
writeln( Elevul cu media mai buna: );
writeln(E3.Nume, , E3.Prenume, :, E3.NotaMedie : 5:2);
readln;
end.
Orice tip de date record poate servi ca tip de baz pentru formarea altor
tipuri structurate.
Exemplu:
type ListaElevilor = array [1..40] of Elev;
var LE : ListaElevilor;
20

Evident, notaia LE[i] specific elevul i din list; notaia LE[i].Nume specific numele a
cestui elev .a.m.d. Programul ce urmeaz citete de la tastatur
datele referitoare la n elevi i afieaz pe ecran numele, prenumele i nota medie
a celui mai bun elev. Se consider c elevii au note medii diferite.
Program P85;
{ Tablou cu componente de tipul Elev }
type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
ListaElev = array [1..40] of Elev;
var E : Elev;
LE : ListaElev;
n : 1..40;
i : integer;
begin
write(n=); readln(n);
for i:=1 to n do
begin
writeln( Dati datele elevului , i);
write(Numele: ); readln(LE[i].Nume);
write(Prenumele: );
readln(LE[i].Prenume);
write(Nota Medie: );
readln(LE[i].NotaMedie);
end;
E.NotaMedie:=0;
for i:=1 to n do
if LE[i].NotaMedie > E.NotaMedie then E:=LE[i];
writeln(Cel mai bun elev:);
writeln(E.Nume, , E.Prenume, :, E.NotaMedie : 5:2);
readln;
end.
n general, un tip de date articol se definete cu ajutorul diagramelor sintactice d
in figura1.5. n completare la articolele cu un numr fix de cmpuri, limbajul
PASCAL permite utilizarea articolelor cu variante. Aceste tipuri de date se stud
iaz n cursurile avansate de informatic.
ntrebri i exerciii
Care este mulimea de valori ale unui tip de date articol?
Indicai pe diagrama sintactic din figura 1.5 drumurile care corespund definiiilor t
ipurilor de date articol din programele P84 i P85.
21

Fig. 1.5. Diagrama sintactic <Tip articol>


Scriei formulele metalingvistice pentru diagrama sintactic din figura1.5.
Se consider urmtoarele tipuri de date
type Data = record
Ziua : 1..31;
Luna : 1..12;
Anul : integer;
end;
Persoana = record
NumePrenume : string;
DataNasterii : Data;
end;
ListaPersoane = array [1..50] of Persoana;
Elaborai un program care citete de pe tastatur datele referitoare la n persoane (n50
) i afieaz pe ecran:
a) persoanele nscute n ziua z a lunii;
b) persoanele nscute n luna l a anului;
c) persoanele nscute n anul a;
d) persoanele nscute pe data z.l.a;
e) persoana cea mai n vrst;
f) persoana cea mai tnr;
g) vrsta fiecrei persoane n ani, luni, zile;
h) lista persoanelor care au mai mult de v ani;
i) lista persoanelor n ordine alfabetic;
j) lista persoanelor ordonat conform datei naterii;
k) lista persoanelor de aceeai vrst (nscui n acelai an).
Se consider n puncte (n30) pe un plan euclidian. Fiecare punct i este definit
prin coordonatele sale. Distana dintre punctele i i j se calculeaz dup formula
.
Elaborai un program care afieaz pe ecran punctele distana dintre care este
maxim.
Aria triunghiului este dat de formula lui Heron
,
22

unde p este semiperimetrul, iar a, b i c snt lungimile laturilor respective.


Utiliznd tipurile de date Punct i Triunghi din paragraful n studiu, elaborai un prog
ram care citete de la tastatur informaiile referitoare la n triunghiuri (n10) i afieaz
pe ecran:
a) aria fiecrui triunghi;
b) coordonatele vrfurilor triunghiului cu aria maxim;
c) coordonatele vrfurilor triunghiului cu aria minim;
d) informaiile referitoare la fiecare triunghi n ordinea creterii ariilor.
1.4. Instruciunea with
Componentele unei variabile de tip articol se specific explicit prin numele
variabilei i denumirile de cmpuri, separate prin puncte.
De exemplu, n prezena declaraiilor
type Angajat = record
NumePrenume
ZileLucrate
PlataPeZi
PlataPeLuna
end;
var A : Angajat;
:
:
:
:
string;
1..31;
real;
real;
componentele variabilei A se specific prin A.NumePrenume, A.ZileLucrate,
A.PlataPeZi i A.PlataPeLuna.
ntruct numele A al variabilei de tip articol se repet de mai multe ori, acest
mod de referire a componentelor este, n anumite situaii, incomod. Repetrile
obositoare pot fi evitate cu ajutorul instruciunii with (cu).
Sintaxa instruciunii n studiu este:
<Instruciune with> ::= with <Variabil> {,<Variabil>} do <Instruciune>
Diagrama sintactic este prezentat n figura 1.6.
n interiorul unei instruciuni with componentele uneia sau a mai multe variabile de
tip articol pot fi referite folosind numai numele cmpurilor respective.
Exemplu:
with A do PlataPeLuna:=PlataPeZi*ZileLucrate
Fig. 1.6. Diagrama sintactic a instruciunii with
23

Aceast instruciune este echivalent cu urmtoarea:


A.PlataPeLuna:=A.PlataPeZi*A.ZileLucrate
Utilizarea instruciunii with necesit o atenie sporit din partea programatorului, car
e este obligat s specifice univoc componentele variabilelor de tip articol. n inte
riorul unei instruciuni with, la ntlnirea unui identificator, prima
dat se testeaz dac el poate fi interpretat ca un nume de cmp al articolului
respectiv. Dac da, identificatorul va fi interpretat ca atare, chiar dac n acel
moment este accesibil i o variabil avnd acelai nume.
Exemplu:
type Punct = record
x : real;
y : real;
end;
Segment = record
A : Punct;
B : Punct;
end;
var P : Punct;
S : Segment;
x : integer;
n cazul nostru identificatorul x poate s reprezinte fie variabila x de tip
integer, fie cmpul P.x al articolului P.
n instruciunea
x:=1
identificatorul x se refer la variabila x de tip integer.
n instruciunea
with P do x:=1
identificatorul x se refer la cmpul P.x al variabilei de tip articol P.
ntruct variabila de tip articol S nu conine niciun cmp cu numele S.x, n
instruciunea
with S do x:=1
identificatorul x va fi interpretat ca variabila x de tip integer.
O instruciune de forma
with v1, v2, ..., vn do <Instruciune>,
unde v1, v2, ..., vn snt variabile de tip articol, este echivalent cu instruciunea
with v1 do
with v2 do
24

{...}
with vn do <Instruciune>.
Evident, componentele variabilelor v1, v2, ..., vn trebuie specificate univoc pr
in
denumirile cmpurilor respective.
De exemplu, pentru variabilele P i S, declarate mai sus, putem scrie:
with P, S do
begin
x:=1.0;
{ referire la P.x }
y:=1.0;
A.x:=0;
{ referire la S.A.x }
A.y:=0;
B.x:=2.0; { referire la S.B.x }
B.y:=2.0;
end;
n mod obinuit, instruciunea with se utilizeaz numai n cazurile n care se
ajunge la o reducere semnificativ a textului unui program.
ntrebri i exerciii
Indicai pe diagrama sintactic din figura 1.6 drumurile care corespund instruciunilo
r with din exemplele paragrafului n studiu.
Care este destinaia instruciunii with?
Utiliznd instruciunea with, excludei din programele P84 i P85 din paragraful precede
nt repetrile de genul
E1.Nume, E1.Prenume, ...,
LE[i].Nume, LE[i].Prenume.
Se consider urmtoarele tipuri de date:
type Angajat = record
NumePrenume : string;
ZileLucrate : 1..31;
PlataPeZi : real;
PlataPeLuna : real;
end;
ListaDePlata = array [1..50] of Angajat;
Plata pe lun a fiecrui angajat se calculeaz nmulind plata pe zi cu numrul
de zile lucrate. Elaborai un program care:
a) calculeaz plata pe lun a fiecrui angajat;
b) calculeaz salariul mediu al angajailor inclui n list;
c) afieaz pe ecran datele despre angajaii cu plata lunar maxim;
d) afieaz lista angajailor ordonat alfabetic;
e) afieaz lista angajailor n ordinea creterii plilor pe zi;
25

f) ordoneaz lista angajailor n ordinea creterii plilor pe lun;


g) afieaz lista angajailor n ordinea creterii numrului de zile lucrate.
Un cerc poate fi definit prin coordonatele x, y i raza r. Elaborai un program care
citete de la tastatur datele referitoare la n cercuri (n50) i afieaz pe ecran:
a) coordonatele centrului i raza cercului cu aria maxim;
b) numrul de cercuri incluse n cercul cu raza maxim i coordonatele centrelor respect
ive;
c) coordonatele centrului i raza cercului cu aria minim;
d) numrul de cercuri n care este inclus cercul cu raza minim i coordonatele
centrelor respective.
1.5. Tipuri de date mulime (set)
Un tip de date mulime (set) se definete n raport cu un tip de baz care
trebuie s fie ordinal:
<Tip mulime> ::= [packed] set of <Tip>
Valorile unui tip de date set snt mulimi formate din valorile tipului de baz.
Dac tipul de baz are n valori, tipul mulime va avea 2n valori. n implementrile limbaj
ului valoarea lui n este limitat, de regul n256.
n PASCAL o mulime poate fi specificat enumerndu-i-se elementele ntre
parantezele ptrate [ i ] , care in locul acoladelor din matematic.
Notaia [] reprezint mulimea vid.
Exemple:
type Indice = 1..10;
Zi = (L, Ma, Mi, J, V, S, D);
MultimeIndicii = set of Indice;
ZileDePrezenta = set of Zi;
var MI : MultimeIndicii;
ZP : ZileDePrezenta;
Tipul ordinal Indice are n=10 valori: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10.
Tipul MultimeIndicii are 210 =1 024 de valori, i anume:
[], [1], [2], ..., [1, 2], [1, 3], ...,
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10].
Prin urmare, variabila MI poate s aib oricare din aceste valori, de exemplu:
MI:= [1, 3].
Tipul ordinal Zi are n=7 valori: L, Ma, Mi, J, V, S, D. Tipul ZileDePrezenta are 2
7=128 de valori, i anume:
[], [L], [Ma], [Mi], ..., [L, Ma], [L, Mi], ...,
[L, Ma, Mi, J, V, S, D].
26

Variabila ZP poate s aib oricare dintre aceste valori, de exemplu,


ZP:= [L, Ma, Mi, V]
O valoare de tip mulime poate fi specificat printr-un constructor (generator) de m
ulime. Diagrama sintactic a unitii gramaticale <Constructor mulime> este prezentat n f
gura 1.7.
Fig. 1.7. Diagrama sintactic <Constructor mulime>
Un constructor conine specificarea elementelor mulimii, separate prin virgule i inc
luse ntre paranteze ptrate. Un element poate s fie o valoare concret a
tipului de baz sau un interval de forma:
<Expresie>..<Expresie>.
Valorile expresiilor n studiu precizeaz limitele inferioare i superioare ale
intervalului.
Exemple :
1) [];
2) [1, 2, 3, 8];
3) [1..4, 8..10];
4) [i-k..i+k];
5) [L, Ma, V..D].
Asupra valorilor unui tip de date mulime se pot efectua operaiile uzuale:
+ reuniunea;
* intersecia;
- diferena,
rezultatul fiind de tip mulime i operaiile relaionale:
= egalitatea;
<> inegalitatea;
27

<=, >= incluziunea;


in apartenena,
rezultatul fiind de tip boolean.
Programul ce urmeaz afieaz pe ecran rezultatele operaiilor +, * i -, efectuate asupra
valorilor de tip MultimeIndicii.
Program P86;
{ Date de tip MultimeIndicii }
type Indice = 1..10;
MultimeIndicii = set of Indice;
var A, B, C : MultimeIndicii;
i : integer;
begin
A:= [1..5, 8];
{ A contine 1, 2, 3, 4, 5, 8 }
B:= [1..3, 9, 10]; { B contine 1, 2, 3, 9, 10 }
C:= [];
{ C este o multime vida }
C:=A+B;
{ C contine 1, 2, 3, 4, 5, 8, 9, 10 }
writeln(Reuniune);
for i:=1 to 10 do
if i in C then write(i:3);
writeln;
C:=A*B;
{ C contine 1, 2, 3 }
writeln( Intersectie );
for i:=1 to 10 do
if i in C then write(i:3);
writeln;
C:=A-B;
{ C contine 4, 5, 8 }
writeln( Diferenta );
for i:=1 to 10 do
if i in C then write(i:3);
writeln;
readln;
end.
Spre deosebire de tablouri i articole, componentele crora pot fi referite direct,
respectiv prin indicii i denumiri de cmpuri, elementele unei mulimi nu
pot fi referite. Se admite numai verificarea apartenenei elementului la o mulime (
operaia relaional in). n pofida acestui fapt, utilizarea tipurilor de date
mulime mrete viteza de execuie i mbuntete lizibilitatea programelor
PASCAL. De exemplu, instruciunea:
if (c=A) or (c=E) or (c=I) or (c=O) or (c=U) then ...
28

poate fi nlocuit cu o instruciune mai simpl:


if c in [A,E,I,O,U] then ...
Un alt exemplu sugestiv este utilizarea tipurilor de date mulime n calcularea
numerelor prime mai mici dect un numr natural dat n. Pentru aceasta se folosete alg
oritmul Ciurul (sita) lui Eratostene:
1) n sit se depun numerele 2, 3, 4, ..., n;
2) din sit se extrage cel mai mic numr i;
3) numrul extras se include n mulimea numerelor prime;
4) din sit se elimin toi multiplii m ai numrului i;
5) procesul se ncheie cnd sita s-a golit.
Program P87;
{ Ciurul (sita) lui Eratostene }
const n = 50;
type MultimeDeNumere = set of 1..n;
var Sita, NumerePrime : MultimeDeNumere;
i, m : integer;
begin
{1} Sita:= [2..n];
NumerePrime:=[];
i:=2;
repeat
{2}
while not (i in Sita) do i:=succ(i);
{3}
NumerePrime:=NumerePrime+[i];
write(i:4);
m:=i;
{4}
while m<=n do
begin Sita:=Sita-[m]; m:=m+i; end;
{5} until Sita=[];
writeln;
readln;
end.
Corespondena dintre punctele algoritmului i instruciunile care le exprim
este indicat n comentariile din partea stng a liniilor de program.
ntrebri i exerciii
Enumerai valorile posibile ale variabilelor din declaraiile ce urmeaz:
var V
S
I
J
:
:
:
:
set
set
set
set
of
of
of
of
A..C;

(A, B, C);
1..2;
1..2;
29

Comentai urmtorul program :


Program P88;
{ Eroare }
type Multime = set of integer;
var M : Multime;
i : integer;
begin
M:=[1, 8, 13];
for i:=1 to MaxInt do
if i in M then writeln(i);
end.
Se consider urmtoarele declaraii:
type Culoare = (Galben, Verde, Albastru, Violet);
Nuanta = set of Culoare;
var NT : Nuanta;
Care snt valorile posibile ale variabilei NT?
Scriei formula metalingvistic care corespunde diagramei sintactice <Constructor mu
lime> din figura 1.7.
Se consider tipul de date MultimeIndicii din paragraful n studiu. Precizai
mulimile specificate de constructorii ce urmeaz:
a) [];
f)
[4..3];
b) [1..10];
g)
[1..3, 7..6, 9];
c) [1..3, 9..10];
h)
[4-2..7+1];
d) [1+1, 4..7, 9];
i)
[7-5..4+4];
e) [3, 7..9];
j)
[6, 9, 1..2].

Elaborai un program care afieaz pe ecran toate submulimile mulimii {1, 2, 3, 4}.
Elaborai un program care afieaz pe ecran toate submulimile mulimii
{ A , B , C , D }.
Se d un ir de caractere n care cuvintele snt separate fie prin spaiu, fie prin
caracterele punct, virgul, punct i virgul, semnul exclamrii i semnul ntrebrii. Elabora
un program care afieaz pe ecran cuvintele irului de caractere citit de la tastatur.
Se d un ir de caractere. Elaborai un program care afieaz pe ecran numrul de vocale di
ir.
Elaborai un program care citete de la tastatur dou iruri de caractere i
afieaz pe ecran:

a) caracterele care se ntlnesc cel puin n unul dintre iruri;


b) caracterele care apar n ambele iruri;
c) caracterele care apar n primul i nu apar n irul al doilea.
Scriei un program care verific dac numele unei persoane este introdus corect (numel
e este un ir de caractere ce nu conine cifre).
30

n implementrile actuale ale limbajului numrul valorilor tipului de baz al


unui tip mulime este limitat, obinuit n256. n consecin, programul P87 nu
poate calcula numere prime mai mari dect n. Elaborai un program pentru
calcularea numerelor prime din intervalul 8, ..., 10 000.
Indicaie: Sita din algoritmul lui Eratostene poate fi reprezentat printr-un
tablou, componentele cruia snt mulimi.

1.6. Generaliti despre fiiere


Prin fiier se nelege o structur de date care const dintr-o secven de componente. Fieca
e component din secven are acelai tip, denumit tip de baz.
Numrul componentelor din secven nu este fixat, ns sfritul secvenei este
indicat de un simbol special, notat EOF (End of File
sfrit de fiier). Fiierul
care nu conine nicio component se numete fiier vid.
Un tip de date fiier se definete printr-o declaraie de forma:
<Tip fiier> ::= [packed] file of <Tip>;
unde <Tip> este tipul de baz. Tipul de baz este un tip arbitrar, exceptnd tipul
fiier (nu exist fiier de fiiere ).
Exemple:
1)
type FisierNumere = file of integer;
var FN : FisierNumere;
n : integer;
2) type FisierCaractere = file of char;
var FC : FisierCaractere;
c : char;
3) type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
FisierElevi = file of Elev;
var FE : FisierElevi;
E : Elev;
Structura datelor n studiu este prezentat n figura 1.8. Subliniem faptul c
elementul EOF, care indic sfritul secvenei, nu este o component a fiierului.
Variabilele FN, FC, FE .a. de tip fiier se numesc fiiere logice, fiiere PASCAL
sau, pur i simplu, fiiere. Spre deosebire de celelalte tipuri de date, valorile cro
ra se pstreaz n memoria intern a calculatorului, datele fiierelor PASCAL se
pstreaz pe suporturile de informaie ale echipamentelor periferice (discuri i
benzi magnetice, discuri optice, hrtia imprimantei sau a dispozitivului de citit
31

Fig. 1.8. Structura datelor de tip FisierNume, FisierCaractere i FisierElevi

documente .a.). Informaia pe suporturile n studiu este organizat n form de


fiiere externe n conformitate cu cerinele sistemului de operare. Prin urmare, nainte
de a fi utilizat, o variabil fiier trebuie asociat cu un fiier extern.
Metodele de asociere snt specifice implementrii limbajului i sistemului de operare
al calculatorului-gazd.
n limbajul-standard asocierea se realizeaz prin includerea variabilelor de
tip fiier ca argumente n antetul de program.
n Turbo PASCAL asocierea unei variabile de tip fiier f cu un fiier extern se
realizeaz prin apelul de procedur
assign(f, s);
unde s este o expresie de tip string care specific calea de acces i numele fiierulu
i extern.
Exemple:
1) assign(FN, A:\REZULTAT\R.DAT)
fiierul FN se asociaz cu fiierul extern R.DAT din directorul REZULTAT de
pe discul A.
2) assign(FC, C:\A.CHR)
fiierul FC se asociaz cu fiierul A.CHR din directorul-rdcin al discului C.
3) write( Dati un nume de fisier: );
readln(str);
assign(FE, str);
fiierul FE se asociaz cu un fiier extern numele cruia este citit de la tastatur i dep
s n variabila de tip string str.
Dup executarea instruciunii assign(f, s) toate operaiile referitoare la fiierul PASC
AL f se vor efectua asupra fiierului extern s.
32

Cele mai uzuale operaii asupra unui fiier snt citirea i scrierea unei componente.
Citirea unei componente se realizeaz printr-un apel de forma
read( f, v),
unde v este o variabil declarat cu tipul de baz al fiierului f.
Scrierea unei componente se realizeaz printr-un apel de forma:
write( f, e),
unde e este o expresie asociat cu tipul de baz al fiierului f.
Exemple:
1) read(FN, n);
2) write(FC, c);
3) read(FE, E).
Dup tipul operaiilor permise asupra componentelor, fiierele se clasific n:
fiiere de intrare (este permis numai citirea);
fiiere de ieire (este permis numai scrierea);
fiiere de actualizare (snt permise att scrierea, ct i citirea).
Dup modul de acces la componente, fiierele se clasific n:
fiiere cu acces secvenial sau secveniale (accesul la componenta i este permis dup ce
s-a citit/scris componenta i 1);
fiiere cu acces aleatoriu sau direct (orice component se poate referi direct
prin numrul ei de ordine i n fiier).
Menionm c n limbajul-standard snt permise numai fiiere secveniale de
intrare sau ieire.
Tipul fiierului (de intrare, ieire sau de actualizare) i modul de acces (secvenial
sau direct) se stabilesc printr-o operaie de validare, numit deschidere a fiierului
. Pentru aceasta, n limbajul-standard se utilizeaz urmtoarele proceduri:
reset( f)
pregtete un fiier existent pentru citire;
rewrite( f) creeaz un fiier vid i l pregtete pentru scriere.
Cnd prelucrarea componentelor se termin, fiierul trebuie nchis. La nchiderea unui fiie
r sistemul de operare nscrie elementul EOF, nregistreaz fiierul extern nou-creat n di
rectorul respectiv .a.m.d.
n limbajul-standard se consider c fiierele vor fi nchise implicit la terminarea execui
ei programului respectiv. n Turbo PASCAL fiierul f ce nchide prin
apelul de procedur close( f).
n concluzie, prezentm ordinea n care trebuie apelate procedurile destinate
prelucrrii datelor de tip fiier:
1) assign( f, s) asocierea fiierului PASCAL f cu fiierul externs;
2) reset( f)/rewrite( f ) deschiderea fiierului f pentru citire/scriere;
3) read( f, v)/write( f, e)
citirea/scrierea unei componente a fiierului f;
4) close( f) nchiderea fiierului f.
33

Dup nchiderea fiierului, variabila f poate fi asociat cu un alt fiier extern.


ntruct valorile variabilelor de tip fiier se pstreaz pe suporturile externe de
informaie, n PASCAL atribuirile de fiiere snt interzise.
ntrebri i exerciii
Explicai termenii fiier PASCAL, fiier extern.
Unde se pstreaz datele unui fiier PASCAL? Care este destinaia procedurii
assign?
Reprezentai pe un desen structura urmtoarelor tipuri de date:
a) type Tabel = array [1..5, 1..10] of real;
FisierTabele = file of Tabel;
b) type Multime = set of A..C;
FisierMultimi = file of Multime;
c) type Punct = record x, y:real end;
Segment = record A, B:Punct end;
FisierSegmente = file of Segment;
Pentru ce snt necesare operaiile de deschidere i nchidere a fiierelor? Cum
se realizeaz aceste operaii?
Explicai destinaia procedurilor read i write. Ce tip trebuie s aib variabila
v ntr-un apel de forma read(f, v)? Ce tip trebuie s aib expresia e ntr-un apel
de forma write(f, e)?
Cum se clasific fiierele n funcie de operaiile permise i modul de acces?
Variabilele A i B snt introduse prin declaraia
var A, B : file of integer;
Este oare corect instruciunea
A:=B
Argumentai rspunsul.
1.7. Fiiere secveniale
Fie definiiile PASCAL
type FT = file of T;
var f : FT; v : T;
prin care au fost introduse tipul fiier FT cu tipul de baz T, variabila de tip fiie
r
f i variabila v de tipul T.
34

Pentru a deschide un fiier secvenial de ieire, se apeleaz procedura


rewrite(f). n continuare n fiier se nscriu componentele respective. O component se nsc
rie printr-un apel de forma
write(f, e),
unde e este o expresie de tipul T. O instruciune de forma
write(f, e1, e2, ..., en)
este echivalent cu secvena de instruciuni
write(f, e1) ; write(f, e2); ...; write(f, en).
Dup nscrierea ultimei componente fiierul trebuie nchis.
Exemplu:
Program P89;
{ Crearea unui fisier cu componente de tipul Elev }
type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
FisierElevi = file of Elev;
var FE : FisierElevi;
E : Elev;
str : string;
i, n : integer;
begin
write(Dati numele fisierului de creat: );
readln(str);
assign(FE, str);
rewrite(FE);
{ asociaza FE cu numele din str }
{ deschide FE pentru scriere }
write( Dati numarul de elevi: ); readln(n);
for i:=1 to n do
begin
writeln( Dati datele elevului , i);
{ citeste cimpurile variabilei E de la tastatura }
readln(E.Nume);
write(Numele: );
write(Prenumele: ); readln(E.Prenume);
write(Nota medie: ); readln(E.NotaMedie);
{ scrie valoarea variabilei E in fisierul FE }
35

write(FE, E);
end;
close(FE);
readln;
end.
{ inchide fisierul FE }
Pentru a deschide un fiier secvenial de intrare, se apeleaz procedura
reset(f). Componenta curent se citete din fiier printr-un apel de forma:
read(f, v).
O instruciune de forma
read(f, v1, v2, ..., vn)
este echivalent cu secvena de instruciuni
read(f, v1); read (f, v2); ..., read (f, vn).
Sfritul de fiier este semnalizat de funcia boolean eof(f) care ia valoarea
true dup citirea ultimei componente.
Exemplu:
Program P90;
{ Citirea unui fisier cu componente de tipul Elev }
type Elev = record
Nume : string;
Prenume : string;
NotaMedie : real;
end;
FisierElevi = file of Elev;
var FE : FisierElevi;
E : Elev;
str : string;
begin
write( Dati numele fisierului de citit: );
readln(str);
assign(FE, str);
reset(FE);
{ asociaza FE cu numele din str }
{ deschide fisierul FE pentru citire }
while not eof(FE) do
begin
{ citeste E din fiierul FE }
read(FE, E);
{ afiseaza E pe ecran }
writeln(E.Nume, , E.Prenume, :,
E.NotaMedie : 5:2);
end;
36

close(FE);
readln;
end.
{ inchide fisierul FE }
Subliniem faptul c numrul de componente ale unui fiier nu este cunoscut
din declaraia tipului respectiv. Teoretic, ntr-un fiier secvenial de ieire poate
fi nscris un numr infinit de componente. Practic, numrul componentelor este
limitat de capacitatea de memorare a suportului extern de informaie. Citirea
consecutiv a componentelor unui fiier secvenial de intrare se ncheie cnd se
ajunge la elementul EOF.
ntrebri i exerciii
Cte componente poate avea un fiier? n ce ordine se scriu/citesc componentele
unui fiier secvenial?
Se consider urmtoarele tipuri de date:
type Data = record
Ziua : 1..31;
Luna : 1..12;
Anul : integer;
end;
Persoana = record
NumePrenume : string;
DataNasterii : Data;
end;
FisierPersoane = file of Persoana;

Elaborai un program care citete de la tastatur datele referitoare la n persoane i le


nscrie ntr-un fiier. Creai fiierele FILE1.PRS, FILE2.PRS, FILE3.PRS
care trebuie s conin datele referitoare, respectiv, la 2, 7 i 10 persoane.
Elaborai un program care citete fiiere create de programul din exerciiul
precedent i afieaz pe ecran:
a) toate persoanele din fiier;
b) persoanele nscute n anul a;
c) persoanele nscute pe data z.l.a;
d) persoana cea mai n vrst;
e) persoana cea mai tnr.
Elaborai un program care afieaz pe ecran media aritmetic a numerelor nscrise ntr-un fi
er de tipul file of real.
ntr-un fiier de tipul file of char snt nscrise caractere arbitrare. Elaborai un progr
am care afieaz pe ecran numrul vocalelor din fiier.
Comentai urmtorul program:
Program P91;
{ Eroare }
type FisierNumere = file of integer;
37

var FN : FisierNumere;
i : integer;
r : real;
s : string;
begin
Writeln( Dati numele fisierului de creat: );
readln(s);
assign(FN, s);
rewrite(FN);
i:=1;
write(FN, i);
i:=10;
write(FN, i);
r:=20;
write(FN, r);
close(FN);
end.

1.8. Fiiere text


E cunoscut faptul c datele fiierelor PASCAL se pstreaz pe suporturile externe de inf
ormaie. n cazul fiierelor definite prin declaraii de forma
file of T componentele de tip T snt reprezentate pe suporturile respective n
forma intern, i anume, prin secvene de cifre binare. Acest mod de reprezentare a da
telor este convenabil n cazul memoriilor externe (discurile i benzile
magnetice, discurile optice .a.). n cazul echipamentelor de intrare ieire
(tastatura, ecranul, imprimanta etc.) datele respective trebuie reprezentate n
forma extern, i anume, prin secvene de caractere.
Pentru a facilita interaciunea ntre om i sistemul de calcul, n PASCAL
informaia destinat utilizatorului se reprezint n form de fiiere text. Un fiier text es
e format dintr-o secven de caractere divizat n linii (fig. 1.9). Lungimea liniilor e
ste variabil. Sfritul fiecrei linii este indicat de un element
special, notat EOL (End Of Line
sfrit de linie). ntruct lungimea liniilor este
Fig. 1.9. Structura unui fiier text
38

variabil, poziia unei linii n cadrul fiierului nu poate fi calculat din timp. n
consecin, accesul la componentele fiierelor text este secvenial.
Un fiier text se definete printr-o declaraie de forma:
var f : text;
tipul predefinit text fiind cunoscut oricrui program PASCAL. Subliniem faptul
c tipurile text i file of char snt distincte, ntruct fiierul file of char
nu include elemente EOL (fig. 1.8).
Fiierele text pot fi prelucrate cu ajutorul procedurilor cunoscute, aplicabile
oricrui tip de fiiere: assign, reset, rewrite, read, write, close. n completare, li
mbajul include proceduri speciale, destinate prelucrrii elementelor EOL:
writeln(f) nscrie n fiier elementul EOL (sfrit de linie);
readln(f) trece la linia urmtoare.
Sfritul de linie este semnalat de funcia boolean eoln(f) care ia valoarea
true dup citirea ultimului caracter din linie.
O instruciune de forma
writeln(f, e1, e2, ..., en)
este echivalent cu secvena de instruciuni
write(f, e1, e2, ..., en); writeln(f).
O instruciune de forma
readln(f, v1, v2, ..., vn)
este echivalent cu secvena de instruciuni
read(f, v1, v2, ..., vn); readln(f).
Pentru introducerea i extragerea datelor, de regul, se utilizeaz fiierele
text predefinite Input i Output. Fiierul Input este destinat numai pentru
operaii de citire i este asociat cu fiierul de intrare al sistemului de operare
(de regul, tastatura). Fiierul Output este destinat numai pentru operaii de
scriere i este asociat cu fiierul-standard de ieire al sistemului de operare (de
regul ecranul). Aceste fiiere snt deschise i nchise automat la nceputul i,
respectiv, la sfritul execuiei programului. Dac numele fiierului nu este specificat n
lista parametrilor unui apel de subalgoritm, se presupune c fiierul
text implicit este Input sau Output, n funcie de natura subalgoritmului. De
exemplu, read(c)este echivalent cu read(Input,c), iar write(c) este echivalent c
u write(Output,c).
Pentru exemplificare prezentm programul P93 care creeaz pe discul curent
fiierul text FILE.TXT. Liniile fiierului snt introduse de la tastatur (fiierul
Input). Sfritul liniei se indic prin acionarea tastei <ENTER>, iar sfritul
fiierului prin acionarea tastelor <CTRL+Z >, <ENTER>.
39

Program P93;
{ Crearea fisierului text FILE.TXT }
var F : text;
c : char;
begin
assign(F, FILE.TXT); { asociaza F cu FILE.TXT }
rewrite(F);
{ deschide fisierul F pentru scriere }
while not eof do
{ eof(Input) }
begin
while not eoln do { eoln(Input) }
begin
read(c);
{ citeste c din Input }
write(F, c);
{ scrie c in F }
end;
writeln(F);
{ scrie EOL in F }
readln;
{ trece la linia urmatoare din Input }
end;
close(F);
{ inchide F }
end.
Programul ce urmeaz afieaz coninutul fiierului FILE.TXT pe ecran.
Program P94;
{ Citirea fisierului text FILE.TXT }
var F : text;
c : char;
begin
assign(F, FILE.TXT); { asociaza F cu FILE.TXT }
reset(F);
{ deschide F pentru citire }
while not eof(F) do
begin
while not eoln(F) do
begin
read(F, c);
{ citeste c din F }
write(c);
{ scrie c in Output }
end;
readln(F);
{ trece la linia urmatoare din F }
writeln;
{ scrie EOL in Output }
end;
close(F);
{ inchide F }
readln;
end.
Explorarea caracter cu caracter a fiierelor text este greoaie n situaia
cnd secvenele de caractere din text trebuie interpretate ca formnd date de
tip integer, real, boolean, ir de caractere. Conversiunea ntre forma extern
40

i reprezentarea intern a acestor tipuri ar cdea n sarcina programatorului. n


consecin, procedurile de citire/nscriere snt extinse n felul urmtor.
n cazul fiierelor text variabila v dintr-un apel read(f, v) poate fi de tipul
integer, real, char sau ir de caractere. La citire secvena de caractere care
reprezint variabila v va fi transformat n reprezentarea intern.
Expresia e dintr-un apel write(f, e) poate fi urmat de specificatori de format. V
aloarea expresiei poate fi de tipul integer, real, boolean, char sau ir
de caractere. La scriere valoarea respectiv este transformat din reprezentarea
intern ntr-o secven de caractere.
Secvenele de caractere citite/scrise de procedurile read/write se conformeaz sinta
xei constantelor de tipul variabilei/expresiei v/e.
Pentru exemplificare prezentm programul P95 care citete de la tastatur
cte trei numere reale a, b, c pe care le scrie n fiierul IN.TXT. Apoi citind aceste
trei numere, reprezentnd laturile unui triunghi, scrie n fiierul OUT.TXT numerele a
, b i c, semiperimetrul p i aria triunghiului s. n continuare, coninutul
fiierului OUT.TXT este afiat pe ecran.
Program P95;
{ Prelucrarea fisierelor IN.TXT si OUT.TXT }
var F, G : text;
a, b, c, p, s : real;
str : string;
begin
assign(F, IN.TXT);
{ asociaza F cu IN.TXT }
rewrite(F);
{ deschide F pentru scriere }
writeln( Dati numerele reale a, b, c: );
while not eof do
begin
readln(a, b, c); { citeste a, b, c de la tastatura }
writeln(F, a:8:2, b:8:2, c:8:2); { scrie a, b, c, in F }
end;
close(F);
{ inchide F }
reset(F);
{ deschide F pentru citire }
assign(G, OUT.TXT); { asociaza G cu OUT.TXT }
rewrite(G);
{ deschide G pentru scriere }
while not eof(F) do
begin
readln(F, a, b, c); { citeste a, b, c din F }
write(G, a:8:2, b:8:2, c:8:2); { scrie a, b, c in G }
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
41

writeln(G, p:15:2, s:15:4); { scrie p, s in G }


end;
close(F);
close(G);
reset(G);
while not eof(G) do
begin
readln(G, str);
writeln(str);
end;
close(G);
readln;
end.
{ inchide F }
{ inchide G }
{ deschide G pentru citire }
{ citeste str din G }
{ afiseaza str pe ecran }
{ inchide G }
Pentru datele de intrare
1 1 1 <ENTER>
3 4 6 <ENTER>
<CTRL+Z ><ENTER>
programul P95 afieaz pe ecran:
1.00 1.00 1.00 1.50 0.4330
3.00 4.00 6.00 6.50 5.3327
ntrebri i exerciii
Care este diferena dintre un fiier text i un fiier file of char?
Explicai semnificaia elementelor EOL i EOF.
Care este diferena dintre procedurile read i readln? Dar dintre procedurile
write i writeln?
Lansai n execuie urmtorul program:
Program P96;
{ Asocierea fisierului FN cu consola }
type FisierNumere = file of integer;
var FN : FisierNumere;
i : integer;
begin
assign(FN, CON);
rewrite(FN);
i:=1;
write(FN, i);
i:=2;
write(FN, i);
42

i:=3;
write(FN, i);
close(FN);
readln;
end.

Explicai rezultatele afiate pe ecran.


Elaborai un program care afieaz pe ecran coninutul oricrui fiier text.
Elaborai un program care afieaz pe ecran numrul de vocale dintr-un fiier text.
Datele de intrare ale unui program snt nmagazinate ntr-un fiier text. Fiecare linie
a fiierului conine dou numere ntregi i trei numere reale separate
prin spaii. Elaborai un program care afieaz suma numerelor ntregi i suma
numerelor reale din fiecare linie pe ecran.
Datele de intrare ale unui program snt nmagazinate ntr-un fiier text. Fiecare linie
a fiierului conine trei numere reale separate prin spaiu i unul din
cuvintele ADMIS, RESPINS. Elaborai un program care:
a) afieaz coninutul fiierului n studiu pe ecran;
b) creeaz o copie de rezerv a fiierului;
c) creeaz un fiier text liniile cruia conin media celor trei numere reale din
liniile respective ale fiierului de intrare;
d) afieaz pe ecran liniile fiierului de intrare, precedate de numerele de ordine
1, 2, 3 .a.m.d.
Fiecare linie a unui fiier text conine urmtoarele date, separate prin spaii:
numrul de ordine (integer);
numele (un string ce nu conine spaii);
prenumele (un string ce nu conine spaii);
nota la disciplina 1 (real);
nota la disciplina 2 (real);
nota la disciplina 3 (real).
Elaborai un program care:
a) creeaz o copie de rezerv a fiierului n studiu;
b) afieaz coninutul fiierului pe ecran;
c) creeaz un fiier text liniile cruia conin urmtoarele date separate prin
spaii:
numrul de ordine (integer);
numele (string);
prenumele (string);
nota medie (real).
Fiierul creat n punctul c trebuie afiat pe ecran.
43

Test de autoevaluare nr. 1


1. Se consider declaraiile
type Obiect = (
Istoria, Geografia, Matematica,
Informatica, Fizica);
Nota = 1..10;
SituatiaScolara = array [Obiect] of Nota;
Reprezentai pe un desen structura datelor de tipul SituatiaScolara.
2. Precizai tipul indicilor i tipul componentelor tipului de dat OrarulLectiilor di
n
declaraiile ce urmeaz:
type ZiDeScoala = (L, Ma, Mi, J, V, S);
Lectie = 1..6;
Obiect = (LimbaRomana, LimbaModerna, Istoria,
Geografia, Matematica,Informatica, Fizica,
Chimia);
OrarulLectiilor = array [ZiDeScoala, Lectie] of Obiect;
3. Se consider declaraiile:
type Tablou = array [1..10] of integer;
var x, y : Tablou;
Scriei expresia aritmetic a crei valoare este:
a) suma primelor patru componente ale variabilei x;
b) suma ultimelor patru componente ale variabilei y;
c) valoarea absolut a componentei a treia a variabilei x;
d) valoarea absolut a componentei a asea a variabilei y;
e) suma primei componente a variabilei x i a ultimei componente a variabilei y.
4. Se consider n (n50) numere ntregi a1, a2, a3, ..., an. Elaborai un program PASCAL
care
citete numerele respective de la tastatur i le afieaz pe ecran n ordinea invers citiri
: an, ...,
a3, a2, a1.
5. Ce operaii pot fi efectuate asupra irurilor de caractere de tip string? Precizai
tipul
rezultatelor acestor operaii.
6. Elaborai un program PASCAL care afieaz pe ecran n ordine invers irul de caractere c
itit de la tastatur. De exemplu, irul soare va fi afiat la ecran ca eraos.
7. Reprezentai pe un desen structura datelor de tipul Data i Persoana din declaraii
le
ce urmeaz:
type Data = record
Ziua : 1..31;
Luna : 1..12;
Anul : integer;
end;
Persoana = record
NumePrenume : string;
DataNasterii : Data;
end;
44

8. Se consider urmtoarele tipuri de date:


type Angajat = record
NumePrenume : string;
Salariu : real;
end;
ListaDePlata = array[1..100] of Angajat;
Elaborai un program care citete de la tastatur datele despre n (n100) angajai i afieaz
e ecran informaiile despre angajatul (angajaii) care au cel mai mare salariu.
9. Care este destinaia instruciunii with?
10. Enumerai valorile posibile ale variabilelor din declaraiile ce urmeaz:
var V : set of X..Z;
I : set of 8..9;
11. Se consider iruri de caractere formate din literele mari ale alfabetului latin
. Elaborai
un program care afieaz pe ecran numrul de vocale din irul de caractere S citit de la
tastatur.
12. Unde se pstreaz datele fiierelor PASCAL? Care este destinaia procedurii assign?
13. Cum se clasific fiierele n funcie de operaiile permise i modul de acces?
14. Se consider urmtoarele tipuri de date:
type Angajat = record
NumePrenume : string;
Salariu : real;
end;
FisierAngajati = file of Angajat;
Elaborai un program care creeaz fiierul SALARII.DAT i nscrie n acest fiier datele
referitoare la n angajai. Datele respective se citesc de la tastatur.
15. Elaborai un program PASCAL care afieaz pe ecran coninutul fiierului SALARII.DAT
creat n itemul precedent.
16. Datele de intrare ale unui program snt nmagazinate n fiierul text REZULTAT.TXT.
Fiecare linie a fiierului conine cte dou numere reale separate prin spaiu i unul din c
uvintele BUN, DEFECT. Elaborai un program care:
a) creeaz fiierul text MEDIA.TXT liniile cruia conin media celor dou numere reale i
cuvintele BUN sau DEFECT din liniile respective ale fiierului de intrare;
b) afieaz pe ecran liniile fiierului creat.
45

Capitolul 2
INFORMAIA
2.1. Cantitatea de informaie
Sensul uzual al cuvntului informaie tire, comunicare verbal, scris sau
transmis prin alte metode despre anumite fapte, evenimente, activiti etc. se
concretizeaz ntr-un compartiment special al matematicii, denumit teoria informaiei.
Conform acestei teorii, sursa de informaie se descrie printr-o variabil S care po
ate lua valori dintr-o mulime finit de elemente distincte {s1, s2,
..., sn}. Se consider c valorile curente ale variabilei S nu snt cunoscute din timp
.
E cunoscut numai mulimea {s1, s2, ..., sn}, denumit mulimea mesajelor posibile.
De exemplu, semaforul de circulaie poate fi reprezentat ca o surs de informaie, muli
mea de mesaje posibile ale cruia este {verde, galben, rou}. Aparatul de telegrafia
t reprezint o surs de informaie, mulimea de mesaje posibile
ale cruia include literele A, B, C, ..., Z, cifrele 0, 1, 2, ..., 9 i semnele de p
unctuaie. Mesajele posibile ale tastaturii snt: Este acionat tasta A , Este acionat
tasta B , ..., Este acionat tasta F1 , Este acionat tasta F2 , ..., Snt acionate
concomitent tastele CTRL i BREAK
etc.
Mesajele se transmit de la surs ctre destinatar printr-un mediu fizic, numit
canal de transmisie (fig. 2.1). De exemplu, mesajele telegrafice se transmit pri
n
fir, mesajele radio prin eter, mesajele tastaturii printr-un set de conductori.
Perturbaiile (zgomotele) din mediul fizic amintit pot altera mesajele transmise.
Fig. 2.1. Schema general a unui sistem de transmisie a informaiei
Evident, valoarea curent a variabilei S devine cunoscut destinatarului numai
dup recepionarea mesajului respectiv.
Cantitatea de informaie I ce este coninut ntr-un mesaj emis de surs se
determin din relaia:
46

I = loga n,
unde n este numrul de mesaje posibile ale sursei. Valoarea concret a constantei
a se stabilete prin alegerea unitii de msur a cantitii de informaie.
De obicei, ca unitate de msur se utilizeaz bitul.
Un bit este cantitatea de informaie din mesajul unei surse cu numai
dou mesaje posibile.
Prin urmare, ca i n cazul altor mrimi (lungimea, masa, temperatura etc.),
cantitatea de informaie se msoar prin compararea cu etalonul. ntruct pentru sursa-eta
lon n = 2, din ecuaia:
loga 2 = 1 (bit)
obinem a = 2. n consecin, cantitatea de informaie I, msurat n bii, se
determin din relaia:
I = log2 n (bit).
n tabelul 2.1 snt prezentate valorile frecvent utilizate ale funciei log2 n.
Tabelul 2.1
Valorile funciei log2n
n
log2 n
n
log2 n
1
0,000
21
4,392
2
1,000
22
4,459
3
1,585
23
4,524
4
2,000
24
4,585
5
2,322

25
4,644
6
2,585
26
4,700
7
2,807
27
4,755
8
3,000
28
4,807
9
3,170
29
4,858
10
3,322
30
4,907
11
3,459
31
4,954
12
3,585
32
5,000

13
3,700
33
5,044
14
3,807
34
5,087
15
3,907
35
5,129
16
4,000
36
5,170
17
4,087
37
5,209
18
4,170
38
5,248
19
4,248
39
5,285
20
4,322

40
5,322
47

S analizm cteva exemple. Cantitatea de informaie a unui mesaj de semafor


este de
I = log2 3 1,585 bii.
Cantitatea de informaie a unei litere a alfabetului latin {A, B, C, ..., Z}, n =
26,
este de
I = log2 26 4,700 bii.
Cantitatea de informaie a unei litere a alfabetului grec {A, B, , , ..., },
n = 24, este de
I = log2 24 4,585 bii.
Dac se cunoate cantitatea de informaie I ce este coninut ntr-un mesaj,
cantitatea total de informaie emis de surs se determin din relaia:
V = N I,
unde N este numrul de mesaje transmise.
Cantitile mari de informaie se exprim prin multiplii unui bit:
1 Kilobit (Kbit) = 210 = 1 024 bii (103 bii);
1 Megabit (Mbit) = 220 = 1 048 576 bii (106 bii);
1 igabit ( bit) = 230 109 bii;
1 Terabit (Tbit) = 240 1012 bii;
1 Petabit (Pbit) = 250 1015 bii.
ntrebri i exerciii

Cum se definete o surs de informaie? Dai cteva exemple.


Care este destinaia canalului de transmisie?
Cum se determin cantitatea de informaie dintr-un mesaj? Dar din N mesaje?
Care este unitatea de msur a informaiei i ce semnificaie are ea?
Determinai cantitatea de informaie ntr-un mesaj al surselor cu urmtoarele
mesaje posibile:
a) literele mari i mici ale alfabetului latin;
b) literele mari i mici ale alfabetului grec;
c) literele mari i mici ale alfabetului romn;
d) cifrele zecimale 0, 1, 2, ..., 9;
e) cifrele 0, 1, 2, ..., 9, semnele +, , , / i parantezele ( );
f) indicaiile numerice de forma hh:mm (hh
ora, mm
minutele) ale unui ceas
electronic;
g) indicaiile numerice de forma hh:mm:ss (ss
secundele) ale unui ceas electronic;
h) indicaiile numerice de forma zz.ll.aa (zz ziua, ll luna, aa
anul) ale unui
calendar electronic.
Pentru fiecare dintre sursele indicate n exerciiul 5 determinai cantitatea de
informaie ce este coninut n 1 000 de mesaje emise de surs.
Elaborai un program care calculeaz cantitatea de informaie din N mesaje
emise de o surs cu n mesaje posibile.
48

2.2. Codificarea i decodificarea informaiei


Se numete semn un element al unei mulimi finite de obiecte ce se pot distinge. O m
ulime de semne ordonate liniar se numete alfabet.
Prezentm n continuare unele dintre nenumratele alfabete folosite de oameni:
a) alfabetul cifrelor zecimale: 0, 1, 2, ..., 9;
b) alfabetul literelor latine mari: A, B, C, ..., Z;
c) mulimea semnelor zodiacului;
d) mulimea fazelor lunii.
O importan deosebit o au alfabetele de numai dou semne. Aceste alfabete
se numesc alfabete binare, iar semnele respective
semne binare.
Prezentm cteva exemple de alfabete binare:
a) cifrele {0, 1};
b) perechea de culori {rou, galben};
c) perechea de stri {nchis, deschis};
d) perechea de rspunsuri {da, nu};
e) perechea de tensiuni {0V, 2V};
f) perechea de stri {magnetizat, nemagnetizat};
g) perechea de semne {+, } etc.
S-a convenit ca semnele unui alfabet binar s fie reprezentate prin cifrele {0, 1}
,
denumite cifre binare (binary digit).
Un ir finit din m semne, dintre care unele se pot repeta, formeaz un cuvnt,
m reprezentnd lungimea cuvntului. Cuvintele formate din semne binare se
numesc cuvinte binare. Evident, cuvintele pot avea lungime variabil sau constant. n
ultimul caz ele se numesc cuvinte m-poziionale. n continuare prezentm unele mulimi
de cuvinte cu lungime constant:
1-poziionale: {0, 1};
2-poziionale: {00, 01, 10, 11};
3-poziionale: {000, 001, 010, 011, 100, 101, 110, 111};
4-poziionale: {0000, 0001, ..., 1110, 1111}.
Se observ c cuvintele (m + 1)-poziionale se formeaz cte dou din cuvintele
m-poziionale prin adugarea cifrelor binare 0 i 1. Prin urmare, mulimea cuvintelor mpoziionale include 2m cuvinte distincte.
Cuvintele binare se utilizeaz pentru reprezentarea, transmiterea, pstrarea
i prelucrarea mesajelor s1, s2, ..., sn ale sursei de informaie (fig. 2.2).
Fig. 2.2. Codificarea i decodificarea mesajelor
n sistemele de transmisie a informaiei
49

Regula de transBormare a mesajelor n cuvinte se numete cod, iar operaia respectiv


diBicare. Operaia invers codiBicrii se numete
decodiBicare. Dispozitivele tehnice care realizeaz operaiile n cauz
se numesc, respectiv, codiBicator i decodiBicator.
Cel mai simplu este codul n care mesajelor posibile s1, s2, ..., sn le corespund
cuvinte binare de lungime constant m. Acest cod denumit cod m-poziional
poate fi definit cu ajutorul unui tabel. n figura 2.3 snt prezentate tabelele resp
ective pentru surse cu n = 2, 3, 4, ..., 8 mesaje posibile.
n=2, m=1
0
s1
1
s2
n=5, m=3
s1 000
s2 001
s3 010
s4
011
s5 100
n=3, m=2
00
s1
01
s2
s3
10
n=6, m=3
s1 000
s2 001
s3 010
s4
011
s5 100
s6 101
n=7, m=3
s1 000
s2 001
s3 010
s4
011
s5 100
s6 101
s7
110
n=4, m=2
s1 00
s2 01
s3 10
s4 11
n=8, m=3
s1 000
s2 001
s3 010
s4

co

011
s5 100
s6 101
s7
110
s8
111
Fig. 2.3. Coduri de cuvinte cu lungime constant (coduri m-poziionale)
Operaiile de codificare i decodificare constau n extragerea datelor necesare
din tabel. Evident, decodificarea va fi univoc numai atunci cnd cuvintele binare i
ncluse n tabel snt distincte. Acest lucru este posibil dac lungimea m a cuvintelor
de cod satisface inegalitatea
Dup logaritmare obinem:
2m n.
m log2 n.
ntruct expresia log2 n exprim cantitatea de informaie, se poate afirma:
Lungimea cuvintelor unui cod poziional trebuie s Bie mai mare sau
egal cu cantitatea de inBormaie a unui mesaj.
De exemplu, lungimea cuvintelor pentru codificarea literelor mari ale alfabetulu
i latin {A, B, C, ...Z}, n = 26, se determin din relaia
m log2 26 4,700.
Stabilind m = 5, putem forma cuvintele binare ale codului 5-poziional:
A 00000
B 00001
C 00010
50

D 00011
E 00100
...
Z 11001.
Un astfel de cod a fost propus de filosoful i omul de stat englez Francis Bacon
nc n anul 1580.
Algoritmii de elaborare a codurilor cu cuvinte de lungime variabil snt
mult mai complicai i se studiaz n cursurile avansate de informatic.
ntrebri i exerciii
Ce este un alfabet? Dai exemple de alfabete binare.
Cum se reprezint semnele oricrui alfabet binar?
Explicai cum pot fi formate cuvintele binare (m+1)-poziionale. Care este numrul cuv
intelor binare m-poziionale distincte?
Care este destinaia unui cod? Cum se definete codul m-poziional?
Cum se efectueaz codificarea i decodificarea mesajelor n cazurile cnd codul
este definit printr-un tabel?
Codificai mesajele s3, s4 i s6 ale unei surse cu 7 mesaje posibile. Utilizai codul
3-poziional din figura 2.3.
Decodificai mesajele 100, 000 i 010, reprezentate n codul 3-poziional din
figura 2.3, n = 5.
Cum se determin numrul de semne binare necesare pentru formarea cuvintelor de lung
ime constant ale unui cod?
Utiliznd codul 3-poziional din figura 2.3, n = 6, codificai irul de mesaje s1, s2,
s6, s5, s3, s6, s3, s2, s1.
Cum influeneaz cantitatea de informaie a unui mesaj asupra lungimii cuvintelor de c
od?
Explicai sensul termenilor cantitate de informaie i informaie.
Elaborai un program care codific i decodific literele alfabetului latin. Se va
utiliza codul propus de Francis Bacon.
Elaborai un program care alctuiete tabelul unui cod m-poziional pentru o
surs cu n mesaje posibile.
2.3. Coduri frecvent utilizate
Orice cod, utilizat pentru reprezentarea, transmiterea, pstrarea i prelucrarea inf
ormaiei, trebuie s fie econom i insensibil la perturbaii, iar echipamentele respecti
ve de codificare i decodificare
s fie simple. Pe parcursul dezvoltrii tehnicii de c
alcul au fost elaborate mai multe coduri. Aceste coduri se clasific
n coduri numerice i coduri alfanumerice.
Codurile numerice ofer posibilitatea reprezentrii cifrelor {0, 1, 2, ..., 9}
prin cuvinte binare 4-poziionale. Exemple de coduri numerice snt prezentate n
tabelul 2.2.
51

Tabelul 2.2
Coduri numerice
Cifra
Direct
Denumirea codului
ray
Aiken
Exces 3
0
0000
0000
0000
0011
1
0001
0001
0001
0100
2
0010
0011
0010
0101
3
0011
0010
0011
0110
4
0100
0110
0100

0111
5
0101
0111
1011
1000
6
0110
0101
1100
1001
7
0111
0100
1101
1010
8
1000
1100
1110
1011
9
1001
1101
1111
1100
Codurile alfanumerice reprezint prin cuvinte binare cifrele 0, 1, 2, ..., 9,
literele mari i mici ale alfabetului, semnele de punctuaie, semnele operaiilor
aritmetice etc. n tabelul 2.3 este prezentat codul ASCII (American Standard
Code Bor InBormation Interchange), inventat n anul 1968.
Tabelul 2.3
Codul ASCII

P
Cuvnt
binar
1010000
Echivalent
zecimal
80
33
Q
1010001
81
0100010
34
R
1010010
82
0100011
35
S
1010011
83
$
0100100
36
T
1010100
84
%
0100101
37
U
1010101

85
&
0100110
38
V
1010110
86
'
0100111
39
W
1010111
87
(
0101000
40
X
1011000
88
)
0101001
41
Y
1011001
89
*
0101010
42
Z
1011010

90
+
0101011
43
[
1011011
91
,
0101100
44
\
1011100
92
0101101
45
]
1011101
93
.
0101110
46
^
1011110
94
/
0101111
47
_
1011111

95
Spaiu
Cuvnt
binar
0100000
Echivalent
zecimal
32
!
0100001
"
#
Simbol
52
Simbol

Cuvnt
binar
1100000
Echivalent
zecimal
96
a
1100001
97
50
b
1100010
98
0110011
51
c
1100011
99
4
0110100
52
d
1100101
100
5
0110101
53
e
1100101
101
6

0110110
54
f
1100110
102
7
0110111
55
g
1100111
103
8
0111000
56
h
1101000
104
9
0111001
57
i
1101001
105
:
0111010
58
j
1101010
106
;

0111011
59
k
1101011
107
<
0111100
60
l
1101100
108
=
0111101
61
m
1101101
109
>
0111110
62
n
1101110
110
?
0111111
63
o
1101111
111
@

1000000
64
p
1110000
112
A
1000001
65
q
1110001
113
B
1000010
66
r
1110010
114
C
1000011
67
s
1110011
115
D
1000100
68
t
1110100
116
E

1000101
69
u
1110101
117
F
1000110
70
v
1110110
118

1000111
71
w
1110111
119
H
1001000
72
x
1111000
120
I
1001001
73
y
1111001
121
J

1001010
74
z
1111010
122
K
1001011
75
{
1111011
123
L
1001100
76
|
1111100
124
M
1001101
77
}
1111101
125
N
1001110
78
~
1111110
126
O

1001111
79
Del
1111111
127
0
Cuvnt
binar
0110000
Echivalent
zecimal
48
1
0110001
49
2
0110010
3
Simbol
Simbol
Acest cod este 7-poziional i include 27 = 128 de simboluri. Primele 32 de simbolur
i (cuvintele binare 0000000, 0000001, 0000010, , 0011111) specific detaliile tehni
ce ale transmisiunilor de informaii i nu au fost incluse n tabel. Cuvintele binare
0100000, 0100001, 0100010, , 1111110 reprezint caracterele impri53

mabile din textele n limba englez. Cuvntul 1111111 reprezint caracterul neimprimabil
Delete (Anulare).
Codificarea mesajelor se realizeaz prin nlocuirea simbolurilor cu cuvintele
binare respective. De exemplu, cuvntul START se reprezint n codul ASCII
prin urmtoarea secven de cuvinte binare:
1010011
1010100
1000001
1010010
1010100.
Evident, decodificarea se va realiza n ordine invers. De exemplu, secvena
de cuvinte binare
1010011
1010100
1001111
1010000
reprezint n codul ASCII cuvntul STOP.
De regul, limbajele de programare opereaz nu cu cuvintele binare propriuzise, dar
cu echivalentele lor zecimale. n programele PASCAL echivalentele zecimale ale car
acterelor pot fi aflate cu ajutorul funciei predefinite ord. De exemplu:
ord(S)=83;
ord(T)=84;
ord(A)=65;
ord(R)=82
etc. Funcia predefinit chr returneaz caracterul care corespunde echivalentului zeci
mal indicat. Astfel,
chr(83)=S;
chr(84)=T;
chr(65)=A;
chr(82)=R.

Orientat la textele engleze, codul ASCII nu include literele cu semne diacritice


i
caracterele grafice speciale ntlnite n diferite limbi europene i n lucrrile tiinifice
De aceea pentru calculatoarele moderne s-au elaborat versiuni dedicate ale codul
ui
ASCII, denumite coduri ASCII extinse. Codurile extinse snt 8-poziionale i includ
28 = 256 de simboluri. Structura codurilor respective este prezentat n tabelul 2.4
.
Partea 1 a fiecrui cod extins include simbolurile de la 0 la 127 oferite de
codul ASCII. Partea a 2-a este specific fiecrei ri i include simbolurile de la
128 la 255. Aceste simboluri snt utilizate pentru reprezentarea literelor alfabet
elor naionale, precum i a caracterelor tiinifice frecvent utilizate. Pentru exemplif
icare, n tabelul 2.4 snt prezentate codurile literelor , , , , , , , , ,

din alfabetul limbii romne propuse n anul 1992 de firma TISH (Chiinu). Este
firesc ca utilizarea codurilor extinse s asigure prelucrarea informaiilor prezenta
te n diferite limbi.
Un alt exemplu de cod alfanumeric este codul binar 8-poziional EBCDIC
(Extended Binary Coded Data Interchange Code), care se utilizeaz pe calculatoarel
e mari.
Menionm c extinderea domeniului de aplicare a codurilor 8-poziionale a favorizat uti
lizarea octetului i a multiplilor lui pentru msurarea cantitii de informaie:
1 octet = 23 = 8 bii;
1 Gigaoctet = 230 109 octei;
1 Kilooctet = 210 103 octei;
1 Teraoctet = 240 1012 octei;
1 Megaoctet = 220 106 octei;
1 Petaoctet = 250 1015 octei.
n literatura de specialitate octetul este notat prin B (byte), iar multiplii resp
ectivi prin KB, MB, GB, TB i PB.
54

Tabelul 2.4
Structura codurilor ASCII extinse
Simbol
Spaiu
!
"
#
}
~
Del

~
Cuvnt
binar
00100000
00100001
00100010
00100011
01111101
01111110
01111111
10000000
10000001
10000010
11110000
11110001
11110010
11110011
11110100
11110101
11110110
11110111
11111000
11111001
11111010
11111011
11111100

11111101
11111110
11111111
Echivalent
zecimal
32
33
34
35
125
126
127
128
129
130
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
Observaii
Partea 1:
simbolurile codului ASCII
Partea a 2-a:
simboluri specifice limbilor naionale;
caractere grafice;
caractere tiinifice
ntrebri i exerciii

Cte mesaje posibile pot fi codificate cu ajutorul unui cod m-poziional?


Determinai codurile admise de sistemul de operare cu care lucrai dvs.
Codificai n codul Gray urmtoarele iruri de cifre zecimale: 123, 461, 952, 783, 472.
Decodificai mesajele reprezentate n codul Aiken:
a)
0011
1111

0100
b)
1110
0010
1101
55

c)
1111
0000
0100
e)
0011
1100
1111
d)
0010
0001
1011
f)
1111
1101
0000
Codificai n codul ASCII expresiile:
a)
A+B
d)
NEXT I
b)
FOR I=1 TO N
e)
PAUSE
c)
PRINT A$
f)
PROGRAM
Decodificai mesajele reprezentate n codul ASCII:
a)

1000010
1100101
1100111
1101001
b)
1010011
1110100
1101111
1110000;
c)
1000101
1101110
1100100;
d)
1101001
0111010
0111101
0110001
1101110;
0111011.
Elaborai un program care afieaz pe ecran codurile urmtoarelor caractere,
introduse de la tastatur:
a) cifrele zecimale 0, 1, 2, ..., 9;
b) literele latine mari A, B, C, ..., Z;
c) literele latine mici a, b, c, ..., z;
d) semnele operaiilor aritmetice;
e) caracterele speciale ;, <, =, >, ?, [, ], {, }, /, \.
2.4. Informaia mesajelor continue
Sursele de informaie studiate pn n prezent se definesc printr-o variabil S,
care poate lua valori dintr-o mulime finit de elemente distincte {s1, s2, ..., sn}
,
denumit mulimea mesajelor posibile. Practica ne demonstreaz c nu toate
sursele de informaie pot fi definite direct n acest mod. Drept exemplu vom remarca
termometrele cu mercur sau alcool, vitezometrele automobilelor, microfoanele, c
amerele de luat vederi etc. Astfel de surse pot fi definite printr-o variabil S (
temperatura, viteza momentan, tensiunea la bornele de ieire ale microfonului etc.)
care poate lua orice valoare ntr-un anumit interval [smin, smax].
Sursele de informaie care snt definite printr-o variabil S ce ia valori
dintr-o mulime finit de elemente distincte se numesc surse cu mesaje discrete.

Sursele care se definesc printr-o variabil S ce poate lua orice valori ntr-un anum
it interval se numesc surse cu mesaje continue.
Ca i n cazul surselor discrete, mesajele continue se produc n timp. Prin
urmare, S este o funcie de timp, S = S(t). n scopul evalurii cantitii de informaie n m
sajele continue, vom analiza valorile funciei S(t) numai n momentele de timp t1, t
2, ..., tm (fig. 2.4). Valorile date, notate prin S(t1), S(t2), ..., S(tm), se
numesc eantioane (din francez echantillion cantitate mic luat dintr-un
produs pentru a determina calitatea lui ).
56

Fig. 2.4. Discretizarea mesajelor continue: a


mesaj continuu; b
mesaj discretiza
t
n timp (eantionat); c mesaj eantionat i discretizat n valoare (cuantificat)
De obicei, momentele de timp t1, t2, ..., tm se definesc conform relaiei:

ti = ti-1 + t.
Mrimea t se numete perioada de eantionare. Valoarea concret a perioadei de eantionare
este determinat de viteza cu care S(t) variaz n timp.
De exemplu, n meteorologie schimbrile de temperatur se produc pe parcurs de ore i t =
1 h, iar n tehnica prelucrrii semnalelor sonore t = 5 10 5 s.
Operaia de transBormare a mesajelor continue n eantioane se numete discretizare n tim
p sau eantionare.
57

Evident, pn la recepia mesajului continuu, valorile concrete ale eantioanelor S(t1),


S(t2), ..., S(tm) snt necunoscute destinatarului. Se cunoate numai intervalul [sm
in, smax] n care poate lua valori arbitrare orice eantion. n scopul evalurii cantitii
de informaie dintr-un eantion, vom rotunji valoarea S(ti) la una din
valorile prestabilite s1, s2, ..., sn (Big. 2.4).
Valorile prestabilite s1, s2, ..., sn se numesc cuante, iar operaia de transforma
re a valorilor curente ale mesajelor continue n cuante se numete discretizare
n valoare sau cuantificare.
De obicei,
s1 = smin,
s2 = smin + s,
...,
si = si 1 + s,
...,
sn = smax.

Mrimea s reprezint pasul sau intervalul de cuantificare. Valoarea concret a interval


ului de cuantificare depinde de natura fizic a sursei de informaie, precizia de msu
rare, puterea de rezoluie a destinatarului etc.
De exemplu, pentru un termometru medical smin = 34o, smax = 42o i s = 0,1o. n
meteorologie smin = 60o, smax = +60o, s = 1o. Pentru vitezometrul unui automobil
smin = 0, smax = 150 km/h, s = 5 km/h.
Numrul eantioanelor m i numrul cuantelor n se determin din urmtoarele relaii (fig. 2.4
b i c):
unde T este durata mesajului continuu.
ntruct cuantele s1, s2, ..., sn pot fi considerate mesaje discrete, cantitatea de
informaie ntr-un eantion
iar cantitatea de informaie ntr-un mesaj continuu:
De exemplu, pentru termometrul medical
iar pentru vitezometrul automobilului
Cantitatea de informaie dintr-o nregistrare audio, pentru care n = 256, t =
= 5 10 5 s i T = 45 min. este
58

Dac precizia de msurare i puterea de rezoluie a destinatarului cresc, perioada de ean


tionare t i pasul de cuantificare s pot fi micorate. n consecin, va crete i cantitat
informaie dintr-un mesaj continuu.
Informaia mesajelor continue poate fi reprezentat printr-un set de cuvinte
binare. Pentru aceasta, cuantele s1, s2, ..., sn se codific exact la fel ca i oric
are
alte mesaje discrete. De exemplu, indicaiile unui termometru medical (I 6,34 bii)
pot fi codificate cu un cod 7-poziional. Cel mai frecvent se utilizeaz codurile
numerice directe (tab. 2.2), cuvntul de cod reprezentnd numrul cuantei respective. n
unele aplicaii se utilizeaz codul ray, care este insensibil la perturbaii.
Dispozitivul care transform mesajul continuu aplicat la intrare ntr-o succesiune d
e cuvinte de cod se numete convertor analog-numeric. Operaia invers, i anume transfo
rmarea cuvintelor de cod aplicate la intrare n valorile
cuantelor respective, se efectueaz cu ajutorul convertoarelor numeric-analogice.
Utilizarea convertoarelor este necesar n cazurile n care informaia de
procesat este reprezentat prin mesaje continue: controlul proceselor tehnologice,
dirijarea obiectelor aflate n micare, monitorizarea parametrilor fiziologici
n medicin, filtrarea i mixajul semnalelor audio etc.

ntrebri i exerciii
Care este diferena dintre sursele cu mesaje discrete i sursele cu mesaje continue?
Dai cteva exemple de surse cu mesaje continue. Concretizai intervalul n care
ia valori variabila ce definete sursa.
Explicai cum se efectueaz operaia de eantionare. Cum se alege perioada de
eantionare?
Explicai cum se efectueaz operaia de cuantificare. Cum se alege pasul de
cuantificare?
Cum influeneaz valorile perioadei de eantionare i ale pasului de cuantificare cantit
atea de informaie extras dintr-un mesaj continuu?
Altimetrul cu impulsuri al unui avion poate msura nlimi de la 100 m pn la
20 km. Eroarea de msurare nu depete 1 m. Pentru a efectua o msurare
snt necesare 10 3 s. Determinai cantitatea de informaie furnizat de altimetru timp de
5 ore de zbor.
Temperatura din interiorul unui reactor chimic se nregistreaz pe o band de
hrtie milimetric. Pe axa absciselor se indic timpul (1 mm reprezint o or),
iar pe axa ordonatelor temperatura (1 mm reprezint 10oC). Ct informaie
conine o nregistrare efectuat timp de 30 de zile, dac temperatura poate
varia de la 80 pn la 1000oC ?
Pentru nregistrarea sunetului se utilizeaz microfoane, tensiunea de ieire a
crora variaz de la 0 pn la 100 V. Aparatul de nregistrare nu distinge tensiunile valor
ile crora difer cu mai puin de 0,1 V. Pentru a asigura o
reproducere fidel, n fiecare secund se iau 40 000 de eantioane. Ct informaie va furniz
microfonul dat timp de 3 ore?
Care este destinaia convertoarelor analog-numerice i numeric-analogice?
59

Elaborai un program care introduce de la tastatur valorile curente ale eantioanelor


i afieaz pe ecran codurile cuantelor corespunztoare.
Elaborai un program care simuleaz funcionarea unui convertor numeric-analog.
2.5. Cuantizarea imaginilor
Imagine se numete reprezentarea unui obiect, executat pe o suprafa prin
aciunea direct a utilizatorului sau prin intermediul unui echipament. Cu titlul
de exemplu amintim desenele, fotografiile, imaginile formate de diverse sisteme
optice, optico-mecanice sau optico-electronice: microscopul, telescopul, aparate
le
cinematografice, televiziunea etc.
Pentru a evalua cantitatea de informaie, imaginea este mprit n microzone, numite de ce
le mai multe ori puncte sau pixeli. Descompunerea imaginii n
puncte se realizeaz cu ajutorul unui rastru (de la cuvntul latin raster grebl ).
Rastrul reprezint o suprafa plan, n general dreptunghiular, pe care snt
trasate dou seturi de linii paralele, perpendiculare ntre ele (fig. 2.5). Densitat
ea
liniilor i, respectiv, densitatea punctelor caracterizeaz puterea de rezoluie a
echipamentelor pentru reproducerea sau formarea imaginilor.
Fig. 2.5. Descompunerea imaginii n microzone
De exemplu, pentru ilustraiile de gazet se folosesc rastre cu rezoluia 24 30
linii/cm (576 900 de puncte pe 1 cm2 ), iar pentru reproducerea tablourilor
rastre
cu 54 60 linii/cm. Rastrul vizualizatorului, adic desenul pe care-l formeaz
fasciculul de electroni pe ecranul tubului catodic, poate include 640 480, 800
600, 720 400, ..., 1024 1 024 de puncte.
Descompunerea imaginii n puncte (microzone) reprezint o procedur de discretizare n s
paiu.
60

n cazul imaginilor monocrome (alb-negru), fiecare microzon se descrie prin


luminana (strlucirea) sa, care n general este o mrime continu. Aceast mrime poate fi d
scretizat n valoare (cuantificat). Numrul cuantelor n va caracteriza puterea de rezo
luie a echipamentelor pentru reproducerea sau formarea imaginilor. Prin urmare, c
antitatea de informaie a unei imagini monocrome:
I = mx my log2 n,
unde mx i my reprezint numrul de microzone ale rastrului respectiv pe orizontal i ver
tical (fig. 2.5).
ntruct culorile pot fi redate prin suprapunerea a trei reprezentri ale aceleiai imag
ini n rou, verde i albastru, cantitatea de informaie dintr-o imagine
color se determin din relaia:
I = 3 mx my log2 n.
Imaginile obiectelor n micare se discretizeaz n timp, de obicei 24 (cinematograful)
sau 25 (televizorul) de cadre pe secund. Prin urmare, cantitatea de
informaie a unui film cu durata T se determin din relaia:
V = T f I,
unde f este frecvena cadrelor, iar I cantitatea de informaie dintr-un singur cadru
.
De exemplu, n televiziune mx my = 625, n = 32 i f = 25 de cadre pe secund.
Un cadru color va conine:
I = 3 625 625 log2 32 5,6 Mbii.
Un film color cu durata de 1,5 ore va conine:
V = 1,5 3 600 25 I 791 bii.
Setul de cuvinte binare care reprezint inBormaia microzonelor se
numete imagine numeric. Operaia de transBormare a imaginii
ntr-un set de cuvinte binare se numete cuantizarea imaginii.
Imaginile preluate de camerele video se cuantizeaz cu ajutorul convertoarelor ana
log-numerice. Imaginile de pe hrtie pot fi cuantizate cu ajutorul unui dispozitiv
special, numit scaner. Acest dispozitiv conine celule fotosensibile, convertoare
analog-numerice i mecanisme de avansare a hrtiei.
Imaginile numerice se transform n imagini propriu-zise cu ajutorul convertoarelor
numeric-analogice i al echipamentelor de formare a rastrului: tubul catodic i
sistemul de baleere n vizualizatoare, matricea de ace n imprimantele mecanice etc.
ntrebri i exerciii
Numii operaiile necesare pentru a cuantiza imaginea.
Care este destinaia rastrului? Din care considerente se alege densitatea liniilor
unui rastru?
Cum se evalueaz cantitatea de informaie dintr-o imagine monocrom?
Cum pot fi redate culorile unei imagini multicolore? Cum se evalueaz cantitatea d
e informaie dintr-o imagine color?
61

Evaluai cantitatea de informaie dintr-o fotografie de ziar cu dimensiunile


10 10 cm, redat cu ajutorul unui rastru ce conine 24 de puncte/cm. Fiecare
punct poate avea urmtoarele nuane: alb, gri-deschis, gri-nchis, negru.
Ct informaie conine o fotografie color cu dimensiunile 20 20 cm, reprodus
cu ajutorul unui rastru ce conine 60 de puncte/cm? Pot fi redate pn la 256 de
niveluri de luminan ale punctelor respective.
Rastrul unei camere de luat vederi este format din 1024 1024 de puncte. Pot fi
redate pn la 64 de niveluri de luminan ale punctelor respective. Ct informaie va coni
un film video cu durata de 3 ore?
Imaginea numeric conine cte un cuvnt binar pentru fiecare punct al rastrului unui vi
zualizator. Cte niveluri de luminan pot fi redate pe ecran dac
cuvintele imaginii numerice snt 3-poziionale? 5-poziionale? 8-poziionale?
2.6. Reprezentarea i transmiterea informaiei
Obiectul material folosit pentru pstrarea, transmiterea sau prelucrarea informaiei
se numete purttor de informaie. Deosebim purttori statici i
purttori dinamici de informaie.
Purttorii statici se utilizeaz pentru pstrarea informaiei sau, cu alte
cuvinte, pentru transmiterea ei n timp. Informaia nregistrat pe un purttor
static poate fi citit n scopul prelucrrii sau utilizrii ulterioare. Primii purttori s
tatici folosii de omenire au fost pietrele, plcile de lut ars, papirusul. Un alt
purttor static de informaie l constituie hrtia. Mesajele nregistrate pe hrtie
sub form de manuscrise, desene sau texte tiprite pot fi pstrate un timp foarte
ndelungat. n calculatoare, ca purttori statici, se utilizeaz:
hrtia pentru imprimantele mecanice, cu jet de cerneal, laser etc.;
straturile active ale benzilor, ale discurilor magnetice;
mediile reflectoare ale discurilor optice etc.
Transmiterea informaiei n spaiu se realizeaz cu ajutorul purttorilor
dinamici. n calitate de purttori dinamici tehnica actual folosete:
unde acustice n gaze (aer) sau lichide;
tensiuni i cureni electrici;
unde electromagnetice etc.
ntruct transmiterea informaiei se produce n spaiu i timp, cel puin o
mrime fizic a purttorului de informaie trebuie s se schimbe.
Se numete semnal variaia mrimii Bizice ce asigur transmiterea mesajelor. Caracterist
ica semnalului folosit pentru reprezentarea (descrierea) mesajelor se numete param
etru informaional al semnalului.
De exemplu, n transmisiunile radio i TV, n calitate de purttori se utilizeaz undele e
lectromagnetice. Amplitudinea sau frecvena acestor unde poate varia n timp (fig. 2
.6). n primul caz, parametrul informaional l constituie amplitudinea oscilaiilor, ia
r n al doilea
frecvena lor.
n calculatoarele electronice n calitate de purttor de informaie se folosete, de obice
i, curentul electric, tensiunea i intensitatea curentului fiind para62

Fig. 2.6. Parametrii informaionali ai undelor electromagnetice:


a amplitudinea; b
frecvena
metrii informaionali ai semnalului. Semnalele respective au formele prezentate n f
igura 2.7. n cazul nivelurilor de tensiune, unei valori a tensiunii i se
asociaz cifra binar 0, iar alteia cifra binar 1. Cifrele binare 0 i 1 pot fi de
asemenea asociate, respectiv, cu absen sau prezen de impuls sau cu impuls
negativ i impuls pozitiv.
Semnalul se numete discret, dac parametrul inBormaional respectiv poate lua numai u
n numr Binit de valori. Semnalul se numete
continuu dac parametrul inBormaional poate lua orice valoare ntr-un
anumit interval.
Fig. 2.7. Semnale utilizate n tehnica de calcul
63

De exemplu, semnalele din Bigura 2.6 snt semnale continue, iar semnalele
din Bigura 2.7 snt semnale discrete. Evident, semnalele discrete i continue snt
forme de reprezentare a mesajelor respective.
Orice sistem tehnic utilizeaz acele semnale care-i asigur o realizare ct
mai bun a funciilor pentru care a fost conceput. Calculatoarele actuale utilizeaz n
iveluri de tensiune, reelele telefonice
cureni electrici, iar radioul i
televiziunea unde electromagnetice etc. Practica demonstreaz c semnalele
continue pot fi transmise la distane mult mai mari dect cele discrete. Prin
urmare, pentru a asigura legtura ntre calculatoarele aflate la distan, la
emisie semnalele discrete vor fi transformate n semnale continue. La recepie
se va realiza transformarea invers: semnalul continuu va fi transformat
ntr-un semnal discret.
Operaia prin care parametrul inBormaional al semnalului continuu se
modific n Buncie de valorile semnalului discret se numete modulare.
Dispozitivul tehnic care realizeaz operaia n cauz se numete modulator.
Pentru exemplificare, n Bigura 2.8 snt prezentate operaiile de modulare n amplitudin
e i frecven.
Operaia de extragere a semnalului discret dintr-un semnal continuu
n Buncie de procedeul de modulare adoptat se numete demodulare.
Dispozitivul tehnic care realizeaz operaia respectiv se numete demodulator.
Fig. 2.8. Modularea semnalelor continue
64

Fig. 2.9. Schema detaliat a unui sistem de transmisie a informaiei


Schema detaliat a sistemului de transmisie a informaiei este prezentat n
Bigura 2.9.
Amintim destinaia componentelor sistemului examinat:
codificatorul
transform mesajele emise de surs n cuvinte binare;
modulatorul transform semnalele discrete ce reprezint cuvintele binare
n semnale continue;
mediul fizic reprezint conductorii, fibrele optice, eterul etc. prin care se
propag semnalele continue;
demodulatorul
transform semnalele continue n semnale discrete;
decodificatorul transform cuvintele binare n mesaje.
Evident, n cazul utilizrii codurilor corectoare i a codurilor detectoare de
erori, sistemul de transmisie va fi insensibil la perturbaii.
Caracteristica principal a oricrui sistem de transmisie a informaiei este
capacitatea de transmisie, exprimat n bii pe secund. Capacitatea de transmisie depin
de de caracteristicile fizice ale componentelor sistemului, metodele de
modulare-demodulare, caracteristicile statistice ale perturbaiilor. De exemplu,
capacitatea de transmisie a unui canal telefonic este de circa 34 Kbit/s; capaci
tatea unui canal radio, cu unde centimetrice circa 1 bit/s; capacitatea unui ca
nal
optic
1 Tbit/s.
ntrebri i exerciii
Care este deosebirea dintre purttorii statici i purttorii dinamici de informaie?
Determinai tipul urmtorilor purttori de informaie:
a) cartele perforate;
b) unde ultrasonore;
c) benzi perforate;
d) unde acustice;
e) pelicule fotosensibile;
65

B) unde gravitaionale;
g) hrtie fotografic.
Numii parametrii informaionali ai semnalelor emise de urmtoarele surse:
a) microfonul;
b) staia de radio, unde lungi, medii sau scurte;
c) instrumentul muzical;
d) staia de radio, unde ultrascurte;
e) camera de luat vederi.
Descriei purttorii de informaie i semnalele utilizate n calculatoarele actuale.
Explicai operaiile de modulare i demodulare a semnalelor.
Care este destinaia modulatorului? Dar a demodulatorului?
n figura 2.8 snt redate semnalele continue ce reprezint cuvntul binar 1001101.
n codul ASCII (tab. 2.3) acestui cuvnt i corespunde simbolul M. Redai pe un
desen semnalele continue ce corespund urmtoarelor simboluri:
a)
>;
e)
<;
b)
r;
f)
K;
c)
W;
g)
a;
d)
9;
h)
@.
De ce depinde capacitatea de transmisie a canalului? n ce uniti se msoar ea?
Cum influeneaz perturbaiile asupra capacitii de transmisie a canalului?
Test de autoevaluare nr. 2
1. Scriei mulimea cuvintelor 3-poziionale formate din cifrele binare {0, 1}.
2. n codul propus de filosoful englez Francis Bacon literele mari ale alfabetului
latin se

reprezint astfel:
A 00000, B
00001, C
00010, D 00011, ..., Z
11001.
Decodificai, utiliznd codul Bacon, cuvintele binare 00010, 00000, 00010, 00001. Co
dificai, utiliznd acelai cod, cuvntul BAC.
3. Se consider o surs de informaie, mulimea de mesaje posibile ale creia este format
din literele mari i mici ale alfabetului latin S = {A, B, C, ..., Z, a, b, c, ...
, z}. Determinai
lungimea minim m a cuvintelor binare ce vor asigura codificarea i decodificarea un
ivoc a
mesajelor.
4. Determinai lungimea minim m a cuvintelor binare ce vor asigura codificarea i dec
odificarea univoc a mesajelor numerice ale unui calendar electronic. Mesajele res
pective au
forma zz.ll.aa, unde zz reprezint ziua, ll
luna, iar aa anul (ultimele dou cifre).
5. Ct informaie se conine ntr-un simbol al codului ASCII extins?
6. Considernd c textul va fi reprezentat n codul ASCII extins, determinai cantitatea
de
informaie ntr-o dictare scris timp de 10 min. de un elev, care este capabil s scrie
circa 200
de caractere pe minut.
66

7. Elaborai un program PASCAL care afieaz pe ecran codurile caracterelor citite de


la
tastatur.
8. Elaborai un program PASCAL care afieaz pe ecran caracterele ce corespund coduril
or citite de la tastatur.
9. Calculai ct informaie conine o fotografie color cu dimensiunile 10 10 cm, reprodus
cu ajutorul unui rastru ce conine 30 de puncte/cm. Pot fi redate pn la 128 de nivel
uri de
luminan ale punctelor respective.
10. Selectai din lista ce urmeaz purttorii statici de informaie:
a) cartela perforat;
e) unda electromagnetic;
b) unda ultrasonor;
f)
c) banda magnetic;
g) curentul electric;
d) pelicula fotosensibil;
h) hrtia pentru imprimant.
cartela magnetic;

11*. Termometrul medical asigur msurarea temperaturilor din intervalul 34 42o cu o


precizie de 0,1o. Pe parcursul unei zile temperatura pacientului a fost msurat de
3 ori.
Ct informaie conin rezultatele acestor msurri?
12*. Calculai ct informaie conine o nregistrare audio cu perioada de eantionare t =
= 3 10 5 s, durata de T = 30 min. i numrul de cuante n = 128.
13*. Indicai corespondena ntre noiunile din coloana stng i definiiile din coloana dre
(a)
o tire, o comunicare verbal sau scris;
(b)
o mulime de numere binare;
(2) semnal;
(c)
o mulime ordonat de semne;
(3) informaie;
(d)
un anumit numr de bii;
(e)
regula de transformare a mesajelor n cuvinte binare;
(f)

variaia mrimii fizice ce asigur transmiterea mesajelor.


(1) cod;
(4) alfabet;
14*. Indicai corespondena ntre denumirile componentelor (coloana din stnga) ale unui
sistem de transmisie a informaiei i destinaia acestora (coloana din dreapta):
(a)
transform semnale continue n semnale discrete;
(b)
transform secvenele sonore n cuvinte binare;
(2) modulatorul;
(c)
transform mesajele emise de surs n cuvinte binare;
(3) demodulatorul;
(d)
transform imaginile grafice n cuvinte binare;
(e)
transform cuvintele binare n mesaje;
(f)
transform semnalele discrete n semnale continue.
(1) codificatorul;
(4) decodificatorul;
*
Numai pentru profilul real.
67

Capitolul 3
BAZELE ARITMETICE ALE TEHNICII
DE CALCUL
3.1. Sisteme de numeraie
n calculatoarele digitale informaia de orice categorie este reprezentat, stocat i pre
lucrat n form numeric. Numerele se reprezint prin simboluri elementare denumite cifre
.
Totalitatea regulilor de reprezentare a numerelor, mpreun cu mulimea cifrelor poart
denumirea de sistem de numeraie. Numrul cifrelor definete baza sistemului de numerai
e.
Prezentm cteva exemple de sisteme de numeraie:
sistemul zecimal este un sistem de numeraie n baza 10, numrul de cifre
utilizate fiind 10, respectiv, 0, 1, 2, ..., 9;
sistemul binar este un sistem de numeraie n baza 2, numrul de cifre
utilizate este 2, adic 0 i 1. Cifrele respective se numesc cifre binare sau bii;
sistemul ternar este un sistem de numeraie n baza 3, numrul de cifre
utilizate fiind 3, respectiv, 0, 1 i 2;
sistemul octal este un sistem de numeraie n baza 8, coninnd 8 cifre: 0, 1,
2, ..., 7;
sistemul hexazecimal este un sistem de numeraie n baza 16 i conine
16 cifre: 0, 1, 2, ..., 9, A (zece), B (unsprezece), C (doisprezece), D (treispr
ezece),
E (paisprezece), F (cincisprezece).
n tabelul 3.1 snt date reprezentrile unora i acelorai numere n diferite baze.
Tabelul 3.1
Reprezentarea unor numere n diferite baze
Zecimal
0
1
2
3
4
5
6
68
Binar
0
1
10
11
100
101
110
Octal
0
1
2
3
4
5
6
Hexazecimal
0
1
2
3

4
5
6
Zecimal
7
8
9
10
11
12
13
Binar
111
1000
1001
1010
1011
1100
1101
Octal
Hexazecimal
7
10
11
12
13
14
15
7
8
9
A
B
C
D

Zecimal
Binar
Octal
Hexazecimal
Zecimal
Binar
Octal
Hexazecimal
14
15
16
17
18
19
20
...
30
...
40
...
1110
1111
10000
10001
10010
10011
10100
...
11110
...
101000
...
16
17
20
21
22
23
24
...
36
...
50
...
E
F
10
11
12

13
14
...
1E
...
28
...
50
...
60
...
70
...
80
...
90
...
100
...
110010
...
111100
...
1000110
...
1010000
...
1011010
...
1100100
...
62
...
74
...
106
...
120
...
132
...
144
...
32
...
3C
...
46
...
50
...
5A
...
64
...

Regula de reprezentare a numerelor n sistemul zecimal rezult din urmtorul exemplu:


(3856,43)10 = 3 103 + 8102 + 5101 + 6100 + 4 10 1 + 310 2.
Se observ c n aceast reprezentare semnificaia (valoarea) fiecrei cifre depinde de pozi
a pe care o ocup n numr. De exemplu, cifra 3 se ntlnete de 2
ori: prima dat are semnificaia 3000, iar a doua oar semnificaia 0,03.
Sistemele n care semnificaia cifrelor depinde de poziia ocupat n
cadrul numerelor se numesc sisteme de numeraie poziionale.
Presupunem c numrul N are partea ntreag format din n+1 cifre, iar partea fracionar
d
m cifre:
N = cncn 1 ... c1c 0 ,c 1c 2 ... c m .
Valoarea acestui numr se evalueaz n funcie de baza sistemului:
(N )b = cnbn + cn 1bn 1 + ... + c1b1 + c0b0 + c 1b 1 + c 2b 2 + ... + c mb m.
Efectund calculele respective, se va realiza conversiunea numrului (N)b
din baza b n sistemul zecimal.
De exemplu,
(101,1)10 = 1102 + 0101 +1100 + 110 1 = 101,1;
(101,1)2 = 122 + 021 +120 + 12 1 = 5,5;
(101,1)3 = 132 + 031 +130 + 13 1 = 10,333...;
(101,1)8 = 182 + 081 +180 + 18 1 = 65,125;
(101,1)16 = 1162 + 0161 +1160 + 116 1 = 257,0625.
69

Formal, sistemul zecimal nu prezint niciun avantaj deosebit fa de alte sisteme de n


umeraie. Se presupune c acest sistem a fost adoptat nc din cele mai
vechi timpuri datorit faptului c procesul de numrare a folosit ca instrumente
iniiale degetele minilor.
Un calculator poate fi prevzut s funcioneze n orice sistem de numeraie.
Pe parcursul dezvoltrii tehnicii de calcul, s-a stabilit c cel mai avantajos este
sistemul binar. Acest sistem a fost preferat din urmtoarele motive:
simplitatea regulilor pentru operaiile aritmetice i logice;
materializarea fizic a cifrelor n procesul prelucrrii sau stocrii numerelor
se face mai uor pentru dou simboluri dect pentru zece: perforat neperforat,
contact nchis contact deschis, prezen sau absen de curent etc.;
circuitele care trebuie s diferenieze numai ntre dou stri snt mai sigure
n funcionare dect cele care trebuie s diferenieze ntre zece stri.
Menionm c n procesul dezvoltrii civilizaiei umane au fost create i sisteme de numerai
epoziionale. Drept exemplu poate servi sistemul roman, care utilizeaz cifrele I, V
, X, L, C, D, M. ntruct regulile de reprezentare
a numerelor i de efectuare a operaiilor aritmetice snt foarte complicate, sistemele
nepoziionale au o utilizare foarte restrns.
ntrebri i exerciii
Cum se definete un sistem de numeraie?
Care este deosebirea dintre sistemele de numeraie poziionale i nepoziionale?
Dai exemple de sisteme de numeraie poziionale. Cum se definete baza sistemului de nu
meraie?
Evaluai numrul (101,1)b scris n urmtoarele sisteme de numeraie:
b = 4, 5, 6, 7, 9, 11, 12, 13, 14 i 15.
Evaluai numerele ce urmeaz:
a) (328)9;
i)
(1010,01)3;
q)
(341,02)8;
b) (516)7;
j)
(201,12)4;
r)
(ABCD)16;
c) (1010,01)2;
k)
(341,02)6;
s)
(328)16;
d) (201,12)3;
l)

(1111)16;
t)
(516)16;
e) (341,02)5;
m) (328)11;
u)
(1010,01)16;
n)
(516)9;
v)
(201,12)16;
g) (328)10;
o)
(1010,01)8;
w) (341,02)12;
h) (516)8;
p)
(201,12)8;
x)
f)
(FFFF)16;
(F001)16.
Care factori au contribuit la utilizarea n tehnica de calcul a sistemului binar?
Elaborai un program PASCAL care evalueaz numerele scrise n baza b, b10.
Elaborai un program care evalueaz numerele scrise n baza b, 10b36.
70

3.2. Conversiunea numerelor dintr-un sistem n altul


Conversiunea numrului (N)b n echivalentul su zecimal se efectueaz conform formulei d
in paragraful precedent:
(N )b = cnbn + cn 1bn 1 + ... + c1b1 + c0b0 + c 1b 1 + c 2b 2 + ... + c mb m.
Conversiunea numrului zecimal (N)10 n echivalentul su n baza b se efectueaz conform u
rmtoarelor reguli:
se mparte la baza respectiv partea ntreag i cturile obinute dup fiecare mprire,
l zero; rezultatul conversiunii prii ntregi este
constituit din resturile obinute, considerate n ordinea invers de apariie;
se nmulete cu baza partea fracionar, apoi toate prile fracionare obinute din produ
erior, pn cnd partea fracionar a unui produs este zero
sau pn la obinerea unui numr de cifre fracionare dorit; rezultatul conversiunii prii f
acionare este constituit din prile ntregi ale produselor, considerate n ordinea aparii
ei.
S analizm cteva exemple.
1) S se transforme numrul zecimal 53,40625 n echivalentul su binar.
53 : 2 = 26 + 1/2;
26 : 2 = 13 + 0/2;
13 : 2 = 6 + 1/2;
6 : 2 = 3 + 0/2;
3 : 2 = 1 + 1/2;
1 : 2 = 0 + 1/2.
Prin urmare, partea ntreag a numrului binar va fi 110101.
0,40625 2 = 0,8125;
0,8125 2 = 1,625;
0,625 2 = 1,25;
0,25 2 = 0,5;
0,5 2 = 1,0.
Partea fracionar a numrului binar va fi 01101. Prin urmare,
(53,40625)10 = (110101,01101)2.
2) S se transforme numrul 23,7 din sistemul zecimal n sistemul binar.
23 : 2 = 11 + 1/2;
11 : 2 = 5 + 1/2;
5 : 2 = 2 + 1/2;
2 : 2 = 1 + 0/2;
1 : 2 = 0 + 1/2;
0,7 2 = 1,4;
0,4 2 = 0,8;
71

0,8 2 = 1,6;
0,6 2 = 1,2;
0,2 2 = 0,4;
0,4 2 = 0,8;
...
Se observ c operaia poate fi continuat la infinit, adic nu exist o conversiune exact a
numrului analizat. Prin urmare,
(23,7)10 = (10111,101100...)2.
3) S se efectueze conversiunea numrului 1996,0625 din sistemul zecimal n
sistemul octal.
1996 : 8 = 249 + 4/8;
249 : 8 = 31 + 1/8;
31 : 8 = 3 + 7/8;
3 : 8 = 0 + 3/8;
0,0625 8 = 0,5;
0,5 8 = 4.
Prin urmare,
(1996,0625)10 = (3714,04)8.
4) S se transforme numrul 2914,25 din sistemul zecimal n sistemul hexazecimal.
2914 : 16 = 182 + 2/16;
182 : 16 = 11 + 6/16;
11 : 16 = 0 + 11/16;
0,25 16 = 4.
Prin urmare,
(2914,25)10 = (B62,4)16.
ntrebri i exerciii
Cum se efectueaz conversiunea unui numr dintr-un sistem cu baza b n sistemul zecima
l?
Transformai n sistemul zecimal numerele ce urmeaz:
72
a) (100001,01111)2;
e) (AAA,BBB)16;
i)
(124,521)7;
b) (328,678)9;
f)
(EE,00F)16;
j)
(4231,124)5;
c) (100,100)16;
g) (1221,1112)3;
k) (50,505050)6;
d) (10,01)16;

h) (1321,1312)4;
l)
(7777,001)8.

Cum se efectueaz conversiunea unui numr zecimal n echivalentul su n


baza b?
Transformai n sistemul binar numerele zecimale ce urmeaz:
a) 13,889;
e) 93,447;
i)
58,749;
b) 38,668;
f)
70,212;
j)
4,345;
c) 53,536;
g) 8,347;
k) 3,156;
d) 29,261;
h) 39,764;
l)
91,428.
Verificai rezultatele efectund conversiunea binar-zecimal.
Transformai n sistemul octal numerele zecimale ce urmeaz:
a) 358,932;
e) 886,526;
i)
795,128;
b) 479,093;
f)
971,258;
j)
680,895;
c) 591,241;
g) 515,914;
k) 256,453;

d) 649,113;
h) 347,607;
l)
838,261.
Verificai rezultatele efectund conversiunea octal-zecimal.
Transformai n sistemul hexazecimal numerele zecimale ce urmeaz:
a) 1424,699;
e) 5818,961;
i)
4985,995;
b) 3517,315;
f)
9336,491;
j)
9721,678;
c) 9607,201;
g) 3442,722;
k) 5292,837;
d) 8974,664;
h) 4521,449;
l)
2734,592.
Verificai rezultatele, efectund conversiunea hexazecimal-zecimal.
Elaborai un program care transform numerele zecimale n echivalentele respective din
sistemul de numeraie n baza b, b<10.
Elaborai un program pentru transformarea numerelor zecimale n numere din
sistemul n baza b, 10<b36.
3.3. Conversiunea din binar n octal, hexazecimal
i invers
ntruct 8 = 23, conversiunea binar-octal i octal-binar se poate face
direct. Orice cifr octal se reprezint prin 3 cifre binare:
0 = 000;
4 = 100;
1 = 001;
5 = 101;

2 = 010;
6 = 110;
3 = 011;
7 = 111.
73

Dac este dat un numr octal, pentru conversiunea lui n binar se va scrie
fiecare cifr octal prin 3 cifre binare.
Exemple:
(247,315)8 = (010 100 111, 011 001 101)2;
(512,07)8 = (101 001 010, 000 111)2;
(3,146)8 = (011, 001 100 110)2.
Dac este considerat un numr binar, pentru conversiunea lui n octal se vor
grupa cte 3 cifre binare pornind de la poziia virgulei spre stnga pentru partea
ntreag, respectiv dreapta pentru partea fracionar, aflnd corespondentul n
octal. Pentru completarea unui grup de trei cifre binare, zerourile din faa numrul
ui, respectiv dup ultima cifr a prii fracionare, nu modific semnificaia
numrului.
Exemple:
(11,011101)2 = (011,011 101)2 = (3,35)8;
(10,11011)2 = (010,110 110)2 = (2,66)8;
(1001,01011)2 = (001 001,010 110)2 = (11,26)8.
n mod similar se procedeaz i n cazul sistemului hexazecimal, baza cruia
este 16 = 24. Orice cifr hexazecimal se reprezint prin 4 cifre binare:
0 = 0000;
8 = 1000;
1 = 0001;
9 = 1001;
2 = 0010;
A = 1010;
3 = 0011;
B = 1011;
4 = 0100;
C = 1100;
5 = 0101;
D = 1101;
6 = 0110;
E = 1110;
7 = 0111;
F = 1111.
Exemple:
(6AF3,B2)16 = (0110 1010 1111 0011, 1011 0010)2;
(6F1,3CA)16 = (0110 1111 0001, 0011 1100 1010)2;
(11,01101)2 = (0011, 0110 1000)2 = (3,68)16;
(10001,01011)2 = (0001 0001, 0101 1000)2 = (11,58)16.
74

ntrebri i exerciii
Cum se efectueaz conversiunea octal-binar i binar-octal?
Transformai n sistemul binar numerele octale ce urmeaz:
a) 15,006;
e) 21,626;
i)
42,322;
b) 13,06;
f)
6,3415;
j)
44,523;
c) 43,15;
g) 771,25;
k) 32,271;
d) 10,01;
h) 12,121;
l)
73,536.
Transformai n sistemul octal numerele binare ce urmeaz:
a) 1,1;
e) 1101,1;
b) 101,10101;
f)
c) 1111,000101;
g) 11110001,101;
k) 11001,00101;
d) 10101110,1001;
h) 0,00001;
l)
1,000001;
i)

10110,001011;
j)
11111,0010001;
1011,0001011.
Elaborai un program pentru conversiunea binar-octal i octal-binar.
Cum se efectueaz conversiunea hexazecimal-binar i binar-hexazecimal?
Transformai n sistemul binar numerele hexazecimale ce urmeaz:
a) FFF,AAA;
e) 3,1AB;
b) F,1A;
f)
c) 1,009;
g) 81,91A;
k) CAA,B;
d) 0,00F;
h) 10,01;
l)
AABB,0000F;
i)
C,DC1;
j)
942,14A;
DAD,ABA.
Transformai n sistemul hexazecimal numerele binare ce urmeaz:
a) 1001011101,01101;
e) 1011101,011;
b) 111,01;
f)
c) 1,1;
g) 11110,01111;
k) 0,00001;
d) 10101110111,00101;
h) 111011,0010000;

l)
11,001011101;
i)
1011,0101;
j)
11001,0110;
101,01011.
Elaborai un program pentru conversiunea binar-hexazecimal i hexazecimalbinar.
Transformai n sistemul hexazecimal numerele octale ce urmeaz:
a) 13,146;
e) 451,35;
i)
644,031;
b) 613,12;
f) 12,357;
j)
5,4312;
c) 541,723;
g) 53,627;
k) 675,542;
d) 104,527;
h) 572,004;
l)
372,271.
75

Transformai n sistemul octal numerele hexazecimale ce urmeaz:


a) AA;
e) 15F,6A1;
i)
BBB;
b) A2B,1F;
B) 3,281;
j)
AF,31B;
c) F,3A;
g) 9,AF;
k) 2C,ACB;
d) FFFF;
h) 3,418F;
l)
A1B,39E.
Elaborai un program pentru conversiunea octal-hexazecimal i hexazecimaloctal.
3.4. Operaii aritmetice n binar
Operaiile aritmetice cu numerele binare snt foarte simple. Regulile de operare n si
stemul binar snt prezentate n tabelele 3.2, 3.3 i 3.4.
Exemple:
Tabelul 3.2
Tabelul 3.3
Tabelul 3.4
Adunarea binar
Scderea binar
nmulirea binar
0+0=0
0 0=0
000=0
0+1=1
1 0=1
001=0

1+0=1
1 1=0
100=0
1 + 1 = 10
10

1 = 1

101=1
Exemple:
1) Se propune adunarea n binar a numerelor zecimale 29 i 43:
(29)10 = (11101)2;
(43)10 = (101011)2;
11101
+
101011
1001000
VeriBicare: (1001000)2 = (72)10, rezultatul este corect, ntruct (29)10 + (43)10 =
= (72)10.
2) Se propune scderea n binar a numrului zecimal 37 din numrul zecimal 46:
(37)10 = (100101)2;
(46)10 = (101110)2;
101110
100101
1001
VeriBicare: (1001)2 = (9)10, rezultatul este corect, ntruct (46)10
(37)10 = (9)10.
76

3) Se propune nmulirea n binar a numerelor zecimale 3,25 i 7,125:


(3,25)10 = (11,01)2;
(7,125)10 = (111,001)2;
11,01

111,001
1101
0000
0000
1101
1101
1101
10111,00101
VeriBicare: (10111,00101)2 = (23,15625)10, rezultatul este corect, ntruct (3,25)10

(7,125)10 = (23,15625)10.
4) Se propune mprirea n binar a numrului zecimal 211 la numrul zecimal 3:
(211)10 = (11010011)2;
(3)10 = (11)2;
11010011
11
11
1000110
00100
11
11
11
01
Deci 11010011 : 11=1000110, rest 1.
VeriBicare: (1000110)2 = (70)10, rezultatul este corect, ntruct (211)10 : (3)10 =
= (70)10 + (1)10.
Menionm c att la nmulire, ct i la mprire, fixarea virgulei care desparte partea n
fracionar se face la fel ca i n sistemul de numeraie
zecimal.
ntrebri i exerciii
Cum se execut operaiile aritmetice n sistemul binar?
Calculai n sistemul binar:
a) 34 + 251;
d) 14 8;
g) 2015 + 1995;
b) 68

7;

e) 63 : 3;
h) 28,5 + 0,75;
c) 1512 + 620;
f)
1996

51;

i)
63,125
77

4,125;

j)
3,0625 2,125;
n) 32 : 2;
r) 401 4;
k) 0,5 0,5;
o) 32 : 16;
s) 32 : 4;
l)
p) 401 8;
t)
q) 32 : 8;
u) 933 : 3.
1 : 0,5;
m) 40 : 0,125;
401 2;
Numerele analizate snt scrise n sistemul zecimal.
Elaborai un program pentru adunarea i scderea numerelor binare.
Elaborai un program pentru nmulirea i mprirea numerelor binare.
3.5. Reprezentarea numerelor naturale n calculator
Calculatoarele actuale utilizeaz sistemul de numeraie binar. Reprezentarea
numerelor naturale N = {0, 1, 2, ...} se realizeaz pe un numr fix de poziii binare,
de regul, 8, 16, 32 sau 64 (fig. 3.1 ).
Fig. 3.1. Reprezentarea numerelor naturale pe n poziii binare
n poziiile 0, 1, ..., n 1 snt nscrise cifrele binare ale numrului natural
reprezentat n sistemul de numeraie binar. Alinierea numerelor binare se realizeaz l
a dreapta, eventualele zerouri nesemnificative snt plasate n faa numrului binar.
Drept exemplu, n figura 3.2 este redat reprezentarea numrului natural
1039 = (10000001111)2
pe un numr de 16 poziii binare.
Fig. 3.2. Reprezentarea numrului natural 1039 pe 16 poziii binare
Numrul maxim ce poate fi reprezentat pe n poziii binare (fig. 3.3 ) este
1 20 + 1 21 + 1 22 + ... + 1 2n 1 = 2n
1.
78

Fig. 3.3. Reprezentarea numrului natural maxim pe n poziii binare


Prin urmare, pe n poziii binare pot fi reprezentate numere naturale din intervalu
l [0; 2n 1].
ntrebri i exerciii

Cum se reprezint numerele naturale n calculator?


Reprezentai numerele naturale 3, 112, 191, 204, 255 pe 8 poziii binare.
Reprezentai numerele naturale 3, 255, 1024, 2048, 4096, 65535 pe 16 poziii binare.
Calculai numerele naturale maxime ce pot fi reprezentate pe 4, 8, 12, 16, 24, 32
i 64 de poziii binare.
3.6. Reprezentarea numerelor ntregi
n calculator nu exist posibilitatea introducerii directe a semnelor + i , ataate nume
relor pozitive i negative. Din acest motiv, reprezentarea semnului numrului x se f
ace cu ajutorul unei cifre binare, denumit cifr-semn, aezat n
poziia n 1 (fig. 3.4):
Fig. 3.4. Reprezentarea numerelor ntregi pe n poziii binare
Numerele cu semn se reprezint cel mai des nu n sistemul binar direct, ci
ntr-un sistem binar codificat care ofer anumite avantaje n executarea operaiilor ari
tmetice cu numere algebrice. Din acest punct de vedere, se cunosc trei
moduri de reprezentare, denumite coduri binare pentru numere algebrice.
Codul direct (codul mrime i semn). Scrierea unui numr n acest cod este
foarte simpl: n cifra-semn se scrie 0, dac numrul este pozitiv, i 1, dac el este
negativ; n partea de valoare se nscrie numrul n sistemul binar obinuit.
79

Drept exemplu, n figura 3.5 snt redate reprezentrile numerelor +52 i


8 poziii binare.

52 pe

Fig. 3.5. Reprezentarea numerelor +52 i 52 n cod direct


n codul direct, pe n poziii binare se pot reprezenta numere ntregi pozitive i
negative N, astfel nct:
(2n 1 1) N (2n 1
1).
Menionm c n codul direct exist dou reprezentri binare pentru numrul 0:
00...0 i 10...0. Codul direct este rar utilizat n calculatoare, deoarece necesit al
goritmi complicai de executare a operaiilor aritmetice i verificare a rezultatelor.
Codul invers. Pentru numerele pozitive scrierea n cod invers este identic cu
cea din codul direct. Dac numrul este negativ, el se scrie mai nti ca i cum ar fi
pozitiv, apoi se inverseaz fiecare cifr binar, adic 1 devine 0 i 0 devine 1.
n figura 3.6 snt redate reprezentrile numerelor +52 i 52 n cod invers pe
8 poziii binare.
Se poate uor constata c intervalul numerelor ntregi N care se pot reprezenta n cod i
nvers este acelai ca i pentru reprezentarea n cod direct, iar numrul
0 are dou reprezentri binare: 00...0 i 11...1.
Fig. 3.6. Reprezentarea numerelor +52 i 52 n cod invers
80

Codul complementar. n acest cod numerele pozitive au aceeai reprezentare


ca i n codul direct i codul invers. Dac numrul este negativ, el se scrie mai nti n
codul invers, apoi se adun 1 la cifra cea mai puin semnificativ (poziia binar 0).
Drept exemplu, n figura 3.7 snt redate reprezentrile numerelor +52 i 52
n cod complementar.
Fig. 3.7. Reprezentarea numerelor +52 i 52 n cod complementar
Codul complementar este utilizat n marea majoritate a calculatoarelor datorit faci
litilor pe care le ofer la efectuarea operaiilor aritmetice i uurinei cu
care se face verificarea rezultatelor. n acest cod pe n poziii binare pot fi repre
zentate numere ntregi din intervalul [ 2n 1, 2n 1 1].
ntrebri i exerciii
Cum pot fi reprezentate n calculator numerele ntregi? Explicai cum se scriu
numerele negative n cod direct, cod invers i cod complementar.
Reprezentai n cod direct pe 8 poziii binare:
a) +12;
d) 12;
g) +21;
b) 21;
e) 64;
h) 68;
c) +68;
f)
+105;
i)
112.
Reprezentai n cod invers pe 8 poziii binare:
a) +10;
d)

10;

g) +65;
b) 65;
e) +101;
h) 101;
c) +112;
f)
112;
i)

105.
81

Reprezentai n cod complementar pe 8 poziii binare:


a) +40;
e)

40;

i)
+16;
b) +27;
f)
27;
j)
+101;
c) +109;
g)

109;

k) +111;
d) 16;
h) 101;
l)
111.
Elaborai un program care afieaz pe ecran reprezentrile n cod direct, cod
invers i cod complementar ale numerelor ntregi introduse de la tastatur pentru n =
8, 16 i 32.
Cum se reprezint numrul 0 n cod direct, cod invers i cod complementar?
Cte reprezentri are numrul 0 n codurile examinate?
Determinai numrul maxim ce poate fi reprezentat pe n poziii binare n cod
direct, cod invers i cod complementar.
3.7. Reprezentarea numerelor reale
Numerele reale se reprezint n calculator sub form fracionar prin intermediul reprezen
trii n virgul fix sau n virgul mobil (virgul flotant).
Reprezentarea n virgul fix. n acest caz se consider c toate numerele
au virgula plasat n aceeai poziie, chiar dac acest lucru nu corespunde formei
externe de reprezentare. Procesul de translatare din forma extern n forma intern i i
nvers se realizeaz cu ajutorul unor coeficieni de scalare alei n mod
corespunztor de programator.
De obicei, se consider c virgula este plasat imediat dup poziia cifrei-semn,
caz n care numerele snt fracii pure (fig. 3.8).
Fig. 3.8. Reprezentarea numerelor reale n virgul fix
Virgula nsi nu este materializat fizic n calculator. Din figura 3.8 rezult c
pe n poziii binare pot fi reprezentate numere reale, valoarea absolut a crora este
0,00...0 |x| 0,11 1
sau, n sistemul zecimal,
0 |x| 1
2 (n 1).
82

Ca i n cazul numerelor ntregi, numerele subunitare cu semn pot fi reprezentate, cu


unele modificri, n cod direct, cod invers sau cod complementar.
Drept exemplu, n figura 3.9 este redat reprezentarea numerelor
+ 0,9375 = + 15/16 = (0,1111)2,
0,9375 =
15/16 = ( 0,1111)2
n virgul fix pe 8 poziii binare n cod direct.
Fig. 3.9. Reprezentarea numerelor +0,9375 i 0,9375 n virgul fix n cod direct

Avantajul principal al reprezentrii n virgul fix const n faptul c operaiile aritmetic


u numere reale pot fi efectuate de dispozitivul aritmetic destinat
operrii cu numere ntregi.
Reprezentarea n virgul mobil. Operaiile n virgul fix snt comode
pentru circuitele omogene de date, cnd toate numerele reale snt subunitare. ns
aceast reprezentare este ineficient n calculele tiinifice, unde se lucreaz simultan cu
numere foarte mari i numere foarte mici al cror ordin de mrime
adesea este imprevizibil. Pentru astfel de probleme se utilizeaz reprezentarea n
virgul mobil.
Numerele reprezentate n virgul mobil pot fi numere ntregi sau fracionare
a cror valoare este dat de relaia:
x = M bE,
unde b este valoarea bazei, M este un numr subunitar numit mantis, iar E
este un exponent. n calculatoarele actuale se utilizeaz b = 2 sau 16.
Numrul reprezentat n virgul mobil este normalizat dac prima cifr dup
virgul a mantisei este diferit de zero.
Exemple:
1) Numrul 23 se va exprima n virgul mobil astfel:
23 = (10111)2 = 0,1011125,
unde M = 0,10111, b = 2, E = 5.
83

2) Numrul 4,9375 se scrie n virgul mobil n felul urmtor:


4,9375 = (100,1111)2 = 0,100111123,
M = 0,1001111, b = 2, E = 3.
3) Numrul
0,375 se scrie n virgul mobil dup cum urmeaz:
0,375 = ( 0,011)2 =
0,112 1,
M = 0,11, b = 2, E =
1.
Se observ c poziia real a virgulei n cadrul numrului depinde de valoarea
exponentului, adic virgula este mobil (flotant).
Exist mai multe variante de reprezentare a mantisei i a exponentului pe n
poziii binare. n figura 3.10 este redat reprezentarea n virgul mobil n formatul expone
t-mantis.
Fig. 3.10. Reprezentarea n virgul mobil, formatul exponent-mantis
Numrul poziiilor binare nE alocate exponentului determin domeniul de mrime al numere
lor care pot fi reprezentate, n timp ce numrul biilor pentru
mantis nM determin precizia de exprimare a numrului. n calculatoarele actuale nE = 6
...15 i nM = 24...64, fapt ce permite reprezentarea numerelor ntr-un
domeniu foarte larg al ordinului de mrime.
n figura 3.11 este redat reprezentarea numerelor n formatul caracteristic-mantis.
Fig. 3.11. Reprezentarea n virgul mobil, formatul caracteristic-mantis
Caracteristica C constituie o form de exprimare a exponentului E i se determin din
relaia
C = E + K.
84

n calculatoarele personale
K=2
nc

1
1,

unde nC este numrul de poziii binare alocate caracteristicii. n aceast reprezentare


caracteristica, spre deosebire de exponent, nu poate lua valori negative,
fapt ce simplific structura dispozitivelor aritmetice.
n particular, pentru n = 8, caracteristica este calculat astfel:
C = E + 127,
indicnd practic semnul exponentului:
dac C 127, atunci E 0;
dac C < 127, atunci E < 0.
n tabelul 3.5 snt prezentate formatele caracteristic-mantis, utilizate n
majoritatea calculatoarelor personale.
Tabelul 3.5
Formatele caracteristic-mantis n calculatoarele personale
Denumirea
formatului
n
nC
nM
Precizia mantisei, Domeniul de mricifre zecimale
me al numerelor
Simpl precizie
32
8
23
6 sau 7
10 37...1038
Dubl precizie
64
11
52
15 sau 16
10 307...10308
Precizie extins
80

15
64
19
10 4932...104932
ntruct conform condiiei de normalizare, prima cifr a mantisei ntotdeauna
este cifra 1, acest bit poate s se reprezinte (s ocupe o poziie) sau nu n memoria
calculatorului. n cazul n care nu se reprezint, acest bit se numete bit ascuns.
Accentum c tehnica bitului ascuns se refer doar la reprezentarea numerelor n
memoria calculatorului, nu i la operaiile efectuate de dispozitivul aritmetic.
ntrebri i exerciii
Care este deosebirea dintre reprezentarea n virgul fix i reprezentarea n
virgul mobil?
Reprezentai n virgula fix pe 8 poziii binare n cod direct:
a) +0,875;
e) 0,875;
b) 0,125;
f)
c) +0,4;
g) 0,4;
k) +0,15625;
d) 0,15625;
h) +0,21875;
l)
+0,3;
i)
+0,125;
j)
0,3;
0,21875.
Care snt avantajele i dezavantajele reprezentrii n virgul fix?
Cum se reprezint numerele reale n virgula mobil? Care numere reprezentate n virgul mo
bil respect condiia de normalizare?
Cum se efectueaz normalizarea numerelor reprezentate n virgul mobil?
85

Exprimai n virgul mobil urmtoarele numere:


a) +1,5;
e)

1,5;

b) +0,0625;
f)
c) 3,25;
g) 32,87;
k) 2,7;
d) 6,25;
h) +6,25;
l)
+3,25;
i)
0,0625;
j)
+2,7;
0,147.
De ce depinde precizia i domeniul de mrime ale numerelor reprezentate n
virgul mobil?
Care este deosebirea dintre formatele exponent-mantis i caracteristic-mantis? Cum se
calculeaz caracteristicile numerelor reprezentate n virgul mobil?
Calculai caracteristicile numerelor din exerciiul 6. Se consider c nC = 8.
Explicai termenul bit ascuns . Care snt avantajele acestei reprezentri?
Cum se reprezint numerele naturale, ntregi i reale n calculatorul la care lucrai dvs.
? Determinai numrul de poziii binare alocate fiecrei reprezentri.
Test de autoevaluare nr. 3
1. Transformai n sistemul zecimal numerele ce urmeaz:
a) (821)9;
b) (1011,121)3;
c) (341,52)7.
2. n care dintre sistemele de numeraie a), b), c), d) scrierea numrului 284,6 este
incorect? Argumentai rspunsul.
a) zecimal;
c) binar;
b) octal;
d) hexazecimal.
3. Elaborai un program PASCAL care transform n sistemul zecimal numerele scrise n

baza b, b < 10. Baza b se citete de la tastatur.


4. Transformai n sistemul binar numerele ce urmeaz:
a) (13,889)10;
b) (73,542)8;
c) (A8,74F)16.
5. Transformai n sistemul octal numerele ce urmeaz:
a) (9758,93)10;
b) (1011011011,01011101)2;
c) (DA86,B1)16.
6. Transformai n sistemul hexazecimal numerele ce urmeaz:
a) (9471,8362) 10;
b) (10110111011011,0101001101)2;
c) (425,376)8.
7. Scriei numerele (1000001111)2, (132)8, (BB)16, (222221)4 n ordine descresctoare.
8. Printre numerele de mai jos exist i numere egale. Scriei egalitile respective, de
exemplu, (1010)2 = (12)8 .
86
a) (1010)8;
c) (723)8;
e) (21)10;
b) (1D3)16;
d) (25)8;
f)
(A)16.

9. Elaborai un program PASCAL pentru conversiunea octal-binar.


10. Calculai n sistemul binar:
a) 110001101 + 10111010;
c) 111011 101;
b) 1101001010

101101001;

d) 101011100 : 110.
11. Reprezentai pe 8 poziii binare numrul natural 125.
12. Reprezentai pe 8 poziii binare n cod complementar numrul ntreg 91.
13. Cuvintele binare de mai jos reprezint numere ntregi scrise n cod invers pe 8 po
ziii
binare. Scriei aceste numere n sistemul zecimal.
a) 11111110;
b) 00111111;
c) 11011000.
14. Reprezentai n virgula fix pe 8 poziii binare n cod direct numrul 0,75.
15. Exprimai n virgul mobil urmtoarele numere:
a) +21,125;
b) 73,25;
c) 0,09375.
16. Cutia neagr transform numerele zecimale n numere scrise n baza b. Determinai
aceast baz i numrul x de la ieirea din cutia neagr n cazul al doilea.
17. Cuvintele binare de mai jos reprezint numere ntregi scrise n cod complementar p
e 8
poziii binare. Scriei aceste numere n sistemul zecimal.
a) 11100110;
b) 00101101;
c) 11111000.
18. Precizai intervalul numerelor ntregi N care se pot reprezenta n cod complementa
r pe
n poziii binare:
a) n = 4;
b) n = 8;
c) n = 16.
19. Cuvintele binare de mai jos reprezint numere subunitare n virgul fix scrise n cod
direct pe 4 poziii binare. Scriei aceste numere n sistemul zecimal.
a) 1011;
b) 0001;
c) 1100.
20. Scriei n sistemul zecimal cel mai mic (A) i cel mai mare (B) numere ce pot fi r
eprezentate n virgul fix n cod direct pe 8 poziii binare.

21. Cuvintele binare de mai jos reprezint numere reale n virgul mobil, baza b = 2,
formatul exponent-mantis, scrise n cod direct. Exponentul ocup nE = 2, iar mantisa
nM = 4
poziii binare. Scriei aceste numere n sistemul zecimal.
a) 11111110;
b) 00111111;
c) 11011000.
22. Reprezentai n virgil mobil, baza b = 2, formatul exponent-mantis, n cod direct
numrul 2,75. Exponentul ocup nE = 2, iar mantisa nM = 4 poziii binare.
23. Scriei n sistemul zecimal cel mai mic (A) i cel mai mare (B) numere ce pot fi r
eprezentate n virgul mobil, baza b = 2, formatul exponent-mantis, cod direct. Expone
ntul ocup nE = 2, iar mantisa nM = 4 poziii binare.
87

Capitolul 4
AL EBRA BOOLEAN
4.1. Variabile i expresii logice
Algebra boolean sau algebra logic este un compartiment al matematicii n
care legile gndirii
obiectul de studiu al logicii clasice
snt studiate cu ajutorul
metodelor simbolice. Denumirea aceasta a fost dat n onoarea matematicianului
englez eorge Boole, care n lucrarea The Laws of Thought ( Legile gndirii ),
publicat n 1853, a pus bazele acestei algebre. Muli ani algebra boolean a fost
considerat drept o simpl curiozitate matematic, fr a i se gsi o utilizare
ntr-un anumit domeniu al tiinelor aplicate. Ea a revenit n actualitate odat cu
apariia centralelor telefonice automate i a calculatoarelor numerice.
Din punct de vedere formal, algebra boolean poate fi definit printr-o mulime a elem
entelor {0, 1}, o mulime a operatorilor elementari {, &, M} i printr-un
set de postulate. Prin urmare, n algebra boolean orice variabil nu poate avea
dect una din cele dou valori posibile, notate simbolic prin 0 i 1, alte valori
neavnd nicio semnificaie.
Variabilele algebrei booleene se noteaz prin x, y, z, x1, x2, ... cu sau fr
indicii, iar elementele 0 i 1 se numesc constante logice.
Operatorii elementari ai algebrei booleene au urmtoarele denumiri:
negaia (inversia, operaia logic NU);
& conjuncia (produsul logic, operaia logic I);
M disjuncia (suma logic, operaia logic SAU).
Operatorii elementari se definesc cu ajutorul unor tabele speciale, numite tabel
e de adevr.
Tabelul de adevr este un tabel care include toate combinaiile posibile ale valoril
or variabilelor fa de care este definit operatorul i rezultatul operaiei respective.
n figura 4.1 snt prezentate tabelele de adevr ale negaiei, conjunciei i disjunciei.
x
0
1

1
0
x
0
0
1
1
y
0
1
0
1
x&y
0
0
0
1
x
0
0
1
1
y

0
1
0
1
Fig. 4.1. Tabelele de adevr ale operatorilor elementari
88
xMy
0
1
1
1

Menionm c n algebra boolean negaia se indic printr-o linie orizontal


amplasat deasupra variabilei respective.
ntruct variabila x poate avea numai valoarea 0 sau 1, tabelul de adevr al
negaiei conine dou rnduri. n cazurile conjunciei i disjunciei tabelele de adevr con
u rnduri, cte un rnd pentru fiecare din combinaiile posibile 00,
01, 10 i 11 ale variabilelor x i y.
Variabilele i constantele logice, reunite cu ajutorul operatorilor , & i M formeaz e
xpresii logice, de exemplu:
1) x & y M z;
4) 1 & x M y;
2) x M y & z;
5) 0 M x M y.
3) & y M z;
6) 1 M 0.

Valorile expresiilor logice pot fi calculate utiliznd tabelele de adevr ale operat
orilor elementari. Pentru evaluarea expresiilor se stabilete urmtoarea prioritate
a operaiilor logice:
1) negaia;
2) conjuncia;
3) disjuncia.
De exemplu, n expresia
xMy&z
mai nti se execut operaia &, iar dup aceea operaia M. n expresia
x&yM
se execut negaia, n continuare conjuncia i, n sfrit, disjuncia.
Ordinea executrii operaiilor logice poate fi schimbat cu ajutorul parantezelor ( i ) .
ident, n primul rnd, se execut operaiile dintre paranteze.
De exemplu, n cazul expresiei logice
x M y & M z
se execut negaia, conjuncia i disjunciile respective, iar n cazul expresiei
(x M y) & (M z)
dup negaie se vor executa disjunciile i, pe urm, conjuncia.
Pentru a sistematiza calculele, evaluarea expresiilor logice se efectueaz n
tabele speciale, numite tabele de adevr ale expresiilor logice.
Tabelul de adevr al expresiei logice include toate combinaiile posibile ale valori
lor variabilelor din expresia examinat i rezultatele operaiilor logice n ordinea cal
culrii lor.
De exemplu, n figura 4.2 este reprezentat tabelul de adevr al expresiei,
& y M z,
iar n figura 4.3
tabelul de adevr al expresiei
x & y M z.
89

x
0
0
0
0
1
1
1
1
y
0
0
1
1
0
0
1
1
z
0
1
0
1
0
1
0
1

1
1
1
1
0
0
0
0
&y
0
0
1
1
0
0
0
0
&ywz
0
1
1
1
0
1
0
1

Fig. 4.2. Tabelul de adevr al expresiei logice & y M z


x








y








z








x&y








x&ywz









x&ywz


Fig. 4.3. Tabelul de adevr al expresiei logice x & y M z
Menionm c, pentru a simplifica notaiile, se admite ca simbolul operatorului
& s fie omis din expresiile logice. De exemplu, expresiile logice
& y M z,
(x M y) & ( M z)
pot fi scrise i n forma:
y M z,
(x M y)(M z).
ntrebri i exerciii

90
Ce valori poate avea o variabil logic?
Care snt operatorii elementari ai algebrei booleene i cum se definesc ei?
Memorizai tabelele de adevr ale negaiei, conjunciei i disjunciei.
Cum se formeaz expresiile logice? Care este prioritatea operaiilor logice?
Explicai rolul parantezelor din componena expresiilor logice.
Alctuii tabelele de adevr ale urmtoarelor expresii logice:
a) y;
c) M y;
b) ;
d) x M y;

e) ;
f)
x;
j)
x M y M z;
k) xy M z;
x (y M z);
g) xy;
l)
h) M x;
m) M y M z;
i)
n) (y M z).
xyz;
Elaborai un program PASCAL care introduce valorile logice ale variabilelor x,
y, z i afieaz valorile uneia dintre expresiile ce urmeaz:
a) ;
f)
x M y M z;
b) xy
g) xy M z;
c) x M y;
h) x M y M z;
d) (x M y) z;
i)
x M xy;
e) xy M z;
j)
M y M z.
Elaborai un program PASCAL care afieaz tabelele de adevr ale conjunciei
i disjunciei.
Elaborai un algoritm repetitiv care formeaz toate combinaiile posibile ale
valorilor variabilelor x, y i z. Afiai combinaiile respective pe ecran.
Pentru fiecare dintre expresiile logice ce urmeaz elaborai cte un program
PASCAL care alctuiete tabelul de adevr respectiv:

a) x M ;
f)
b)
g) x M y M z;
x;
y;
c) x M y;
h) xyz;
d) xy;
i)
(x M y)( M y);
e) M y;
j)
(x M y)(x M ).
4.2. Funcii logice
Noiunea de funcie logic sau funcie boolean se definete n acelai
mod ca i n cazul algebrei clasice.
Vom nota prin x1, x2, ..., xn un grup arbitrar de variabile booleene, unde n = 1
, 2,
3, ... . ntruct fiecare variabil boolean poate avea numai valorile 0 sau 1, numrul tu
turor combinaiilor posibile ale valorilor variabilelor x1, x2, ..., xn este de 2n
.
Firete, pentru n = 1 avem 2 combinaii (0 i 1); pentru n = 2 snt 22 = 4 combinaii (00,
01, 10 i 11); pentru n = 3 exist 23 = 8 combinaii (000, 001, 010, 011,
100, 101, 110 i 111) etc.
91

Funcia logic de n variabile y = f (x1, x2, ..., xn) este o aplicaie care pune
n coresponden fiecrei combinaii de valori ale variabilelor x1, x2, ...,
xn valoarea 0 sau 1 a variabilei y.
Variabilele x1, x2, ..., xn se numesc variabile independente sau argumente,
iar variabila y
variabil dependent sau funcie de argumente x1, x2, ..., xn.
Prin urmare, domeniul de definiie al funciei y = f (x1, x2, ..., xn) este mulimea t
uturor combinaiilor posibile
0 0 ... 0
0 0 ... 1
...
1 1 ... 1
ale valorilor argumentelor x1, x2, ..., xn, n total 2n combinaii, iar domeniul val
orilor funciei logice este mulimea {0, 1}.
Ca i n cazul algebrei clasice, funciile logice pot fi definite prin tabele, formule
i metode grafice.
Tabelul de adevr al funciei logice y = f (x1, x2, ..., xn) este un tabel care
include toate combinaiile posibile ale valorilor argumentelor x1, x2, ...,
xn i valorile corespunztoare ale variabilei dependente y.
De exemplu, n figura 4.4 este prezentat tabelul de adevr al unei funcii logice de 3
variabile.
x1
0
0
0
0
1
1
1
1
x2 x 3
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
y
1
0
1
0
1
0
0
0
Fig. 4.4. Tabelul de adevr al unei funcii logice de trei variabile
Tabelul include 23 = 8 rnduri i are 2 coloane: prima pentru combinaiile posibile al
e valorilor argumentelor x1, x2, x3 i a doua pentru valorile corespunztoare
ale variabilei dependente y. Conform tabelului analizat, combinaiei x1 = 0, x2 =
0,
x3 = 0 i corespunde valoarea y = f (0,0,0) = 1; combinaiei x1 = 0, x2 = 0, x3 = 1
valoarea y = f (0,0,1) = 0 etc.
Definirea funciei logice prin formule se face atribuind variabilei dependente y v
alorile expresiilor logice ce conin argumentele x1, x2, ..., xn.

De
1)
3)
2)
92

exemplu,
y = x;
y = 1x2 M x3;
y = x1x2;

4) y = x1x2 M x3.

Natural, cunoscnd formula unei funcii logice, poate fi calculat tabelul ei de


adevr. De exemplu, tabelul de adevr al funciei
y = x1x2 M x3
va fi cel prezentat n figura 4.4. Ca s ne convingem de acest fapt, e suficient s
calculm tabelul de adevr al expresiei logice
x1x2 M x3
prezentat, prin alte notaii, n figura 4.3 din paragraful 4.1.
Exist mai multe metode grafice de definire a funciilor logice. Aceste
metode se bazeaz pe diagramele utilizate n teoria mulimilor i se studiaz n
cursurile avansate de informatic.
ntrebri i exerciii

Formulai definiia noiunii funcie logic .


Care snt domeniul de definiie i domeniul de valori ale unei funcii logice?
Prin ce metode poate fi definit o funcie logic de n variabile?
Cum se alctuiete tabelul de adevr al unei funcii de n variabile? Cte rnduri
conine acest tabel?
Cum poate fi alctuit tabelul de adevr al unei funcii logice atunci cnd se
cunoate formula ei?
Funcia logic de 3 variabile y = f (x1, x2, x3) este definit prin tabelul de adevr di
n
Bigura 4.4. Numii combinaiile valorilor argumentelor x1, x2, x3 pentru care funcia
dat are valoarea y = 1. Numii combinaiile respective pentru valoarea funciei y = 0.
Alctuii tabelele de adevr ale urmtoarelor funcii logice:
y = x1 M x2;
a) y = x;
f)
b) y = ;
g) y = x1x2x3;
c) y = x1x2;
h) y = x1(x2 M 3);
d) y = x1 M x2;
i)
y = 1 M x2 x3;
e) y = x1x2;
j)
y = x 1 M x2 x 3 .
Elaborai un program PASCAL care introduce valorile logice ale variabilelor x1,
x2, x3, x4 i afieaz valorile uneia dintre funciile ce urmeaz:
a) y = x1x2 M x3x4;
g) y = x12 M x34;

b) y = (x1 M x2)(x3 M x4);


h) y = 1x2 M 3x4;
c) y = x1x2x3x4;
i)
y = 12 M 34;
d) y = x1 M x2 M x3 M x4;
j)
y = x1x2x3x4 M 2x3x4;
e) y = x1x2 M x3x4;
k) y = x1 M x2 x3 M x4;
f)
y = (x1 M x2)(x3 M x4);
l)
y = x1 M x2 M x3 M 1234.
93

Elaborai un program PASCAL care alctuiete tabelul de adevr al uneia dintre


funciile ce urmeaz:
a) y = x;
h)
y = 12;
b) y = ;
i)
y = x1x2x3;
c) y = x1x2;
j)
y = 1 M 2 M 3;
d) y = x1 M x2;
k)
y = x1 M x2 M x3;
e) y = x1x2;
l)
y = 123;
f)
y = 1 M 2;
m) y = x1 M x2 M 1234;
g) y = x1 M x2;
n)
y = x1(x2 M 3 M 4).
4.3. Funcii logice frecvent utilizate
S admitem n variabile independente x1, x2, ..., xn. Apare ntrebarea, cte funcii
logice de n variabile exist n algebra boolean? Numrul funciilor logice posibile poate
fi determinat prin urmtoarele raionamente.
ntruct orice funcie logic poate fi definit cu ajutorul tabelului de adevr,
numrul funciilor posibile de n variabile coincide cu numrul tabelelor distincte
de adevr.
Pentru a defini o funcie logic, n coloana y a tabelului de adevr se indic
valorile funciei
0 sau 1 pentru fiecare dintre cele 2n combinaii ale valorilor
argumentelor. ntruct tabelul de adevr are 2n rnduri, exist
n
m = 22
funcii logice de n variabile. Funciile respective se noteaz prin yj , j = 0, 1, ...
, m 1.

1
De exemplu, n cazul n care n = 1, exist m = 22 = 22 = 4 funcii logice, reprezentate n
figura 4.5.
x
y0
y1
y2
y3
0
1
0
0
1
0
0
1
1
1
Fig. 4.5. Funcii logice de o singur variabil
Evident,

y0 = f (x) = 0;
y1 = f (x) = ;
y2 = f (x) = x;
y3 = f (x) = 1.
Funciile y0 i y3 se numesc funcia constanta 0 i, respectiv, constanta 1.
Funcia y1 este funcia logic NU sau negaia, iar funcia y2 se numete funcia de repetare.
94

Pentru n = 2 exist
2
m = 22 = 24 = 16
funcii logice, reprezentate n figura 4.6.
x1 x2
y0
y1
y2
y3
y4
y5
y6
y7
y8
y9
0
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
0
1
0
1
0

1
0
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
0
1
0
1
y10 y11
0
1
0
1
1
1
0
1
y12 y13 y14
0
0
1
1
1
0
1
1
0
1
1
1
y15
1
1
1
1

Fig. 4.6. Funcii logice de dou variabile


Funciile y0 i y15 snt funciile deja cunoscute, constanta 0 i, respectiv, constanta 1:
y0 = f (x1, x2) = 0;
y15 = f (x1, x2) = 1.
Funcia y8 poate fi scris n forma:
y8 = f (x1, x2) = x1x2.
n mod firesc, funcia y8 va avea denumirea funcia logic I sau conjuncia.
Funcia y14 poate fi scris n forma:
y14 = f (x1, x2) = x1 M x2.
Prin urmare, funcia y14 va avea denumirea funcia logic SAU sau disjuncia.
Funciile logice NU, I, SAU, induse de operatorii elementari, respectiv, , &, w se n
umesc funcii logice elementare.
Din figura 4.6 se observ c
y1 = x1 M x2.
Funcia dat se numete funcia logic SAU-NU.
n mod similar, funcia y7 poate fi exprimat n forma
y7 = f (x1, x2) = x1x2.
Funcia n cauz se numete funcia logic I-NU.
Funcia
y9 = f (x1, x2) = 12 M x1x2
are valoarea 1 numai cnd x1 = x2 = 0 sau x1 = x2 = 1. Aceast funcie se numete
funcia logic COINCIDEN sau echivalen i se noteaz prin simbolul .
Analiznd tabelul din figura 4.6, mai observm c
y3 = f (x1, x2) = 1 (negaia variabilei x1);
y12 = f (x1, x2) = x1 (repetarea variabilei x1);
y5 = f (x1, x2) = 2 (negaia variabilei x2);
y10 = f (x1, x2) = x2 (repetarea variabilei x2).
Pentru a fi mai uor memorizate, n figura 4.7 snt prezentate tabelele de adevr ale fu
nciilor logice NU, I, SAU, I-NU, SAU-NU i COINCIDEN.
95

NU
I
SAU
x

x1
x2
x 1x 2
x1
x2
x 1 M x2
0
1
1
0
0
0
1
1
0
1
0
1
0
0
0
1
0
0
1
1
0
1
0
1
0
1
1
1
I-NU
x 1 x2

0
0
1
1
0
1
0
1
SAU-NU
x 1x 2
x1 x 2
1
1
1
0
0
0
1
1
0
1
0
1
COINCIDEN
x1 M x 2
x 1 x2
1
0
0
0
0
0
1
1
0
1
0
1
x 1 / x2
1
0
0
1
Fig. 4.7. Funciile logice frecvent utilizate

n mod similar pot fi studiate funciile logice de 3 variabile, numrul crora


3
4
este de m = 22 = 28 = 256; funciile de 4 variabile, numrul crora este de m = 22 =
=216 = 65 536 etc. Se observ c, dei este finit, numrul funciilor booleene posibile es
te enorm. S-a demonstrat ns c orice funcie logic de n variabile,
n 2, poate fi exprimat printr-o formul care include numai operatorii
elementari , &, w. Aceast proprietate faciliteaz realizarea tehnic a dispozitivelor
destinate calculrii funciilor logice cu un numr arbitrar de argumente.
ntrebri i exerciii
Determinai numrul funciilor logice de 5 i de 6 variabile.
Numii funciile logice elementare i alctuii tabelele respective de
Memorizai tabelele de adevr ale funciilor logice frecvent utilizate
SAU, I-NU, SAU-NU i COINCIDEN.
Elaborai un program care va afia pe ecran tabelul de adevr al uneia
funciile logice y0, y1, y2, y3 de 2 variabile.
Elaborai un program care va afia pe ecran tabelul de adevr al uneia
funciile logice yj de n variabile.

adevr.
NU, I,
dintre
dintre

Test de autoevaluare nr. 4


1. Alctuii tabelul de adevr al expresiei logice x M y.
2. Care dintre expresiile logice ce urmeaz snt egale? Amintim c dou expresii logice
snt
egale dac valorile lor coincid pentru toate combinaiile posibile ale valorilor var
iabilelor respective.
96
a) ( M )(x M y);
c) (x M y) M xy;
b) xy M xy;
d) x M y.

3. Scriei toate combinaiile posibile de valori ale variabilelor x, y, z pentru car


e valoarea
expresiei xy M este egal cu 1.
4. Elaborai un program PASCAL care citete de la tastatur valorile variabilelor logi
ce x, y,
z i afieaz pe ecran valoarea expresiei x M z.
5. Elaborai un program PASCAL care afieaz pe ecran tabelul de adevr al expresiei
M z.
6. Indicai domeniul de definiie i domeniul de valori ale funciei logice y = x1(x2 M 3
).
7. Alctuii tabelul de adevr al funciei logice y = x1(2 M x3).
8. Elaborai un program PASCAL care citete de la tastatur valorile variabilelor logi
ce
x1, x2, x3 i afieaz pe ecran valoarea funciei y = x1(2 M 3).
9. Elaborai un program PASCAL care afieaz pe ecran tabelul de adevr al funciei logice
y = 1(x2 M x3).
10. Determinai numrul funciilor logice de 5 variabile.
11. Alctuii tabelele de adevr ale funciilor logice I-NU i SAU-NU.
12. Care dintre funciile logice ce urmeaz snt egale? Amintim c dou funcii logice snt
egale dac valorile lor coincid pentru toate combinaiile posibile ale valorilor var
iabilelor independente.
a) y = x1 M x2;
c) y = 12;
b) y = x1x2;
d) y = 1 M 2.
13. Funcia logic de trei variabile y = f (x1, x2, x3) este definit cu ajutorul urmto
rului tabel
de adevr:
x1 x2
0 0
0 0
0 1
0 1
1 0
1 0
1 1
1 1
x3
0
1
0
1
0
1
0
1
y

1
0
0
0
0
0
0
0
Selectai din expresiile ce urmeaz formula care, de asemenea, definete aceast funcie:
a) y = x1 M x2 M x3;
c) y = x1x2x3;
b) y = x1 M x2 M x3;
d) y = 1 M 2 M 3.
97

Capitolul 5
CIRCUITE LOGICE
5.1. Circuite logice elementare
Circuitul logic este un dispozitiv destinat calculrii funciilor logice. Pentru
a realiza circuitele logice, e necesar ca valorile binare 0 i 1 ale argumentelor i
funciilor respective s fie reprezentate prin valorile unor mrimi fizice, de exemplu
:
presiune, temperatur, tensiune sau curent electric, flux luminos etc. n funcie
de mrimile fizice utilizate, deosebim dispozitive logice mecanice, pneumatice,
hidraulice, electromecanice, electronice, optice etc. n dispozitivele hidraulice i
pneumatice valorile logice 0 sau 1 pot fi reprezentate prin valorile mici i, resp
ectiv, mari ale presiunii fluidului, n dispozitivele electromecanice i electronice
prin prezena sau absena curentului electric, prin niveluri de tensiune etc.
Pentru o nelegere clar a principiilor de funcionare a dispozitivelor logice,
vom studia mai nti circuitele cu contacte. Componentele de baz ale acestor
circuite snt elementele de comutare
contactele electrice normal deschise i
contactele electrice normal nchise.
n cazul contactelor normal deschise, circuitul electric este deschis dac
contactele nu snt acionate i nchis la acionarea lor. n cazul contactelor
normal nchise, circuitul electric este nchis dac contactele nu snt acionate
i deschis la acionarea lor (fig. 5.1).
Neacionate
Acionate
Contacte
normal deschise
Contacte normal
nchise
Fig. 5.1. Contacte normal deschise i normal nchise
De exemplu, contactele unui ntreruptor electric uzual snt contacte normal
deschise, iar contactele butonului de pauz al magnetofonului snt contacte normal nc
hise.
n circuitele cu contacte, valorile logice ale argumentelor snt reprezentate
prin strile contactelor electrice respective. Valorii logice 1 i corespunde starea
contactul este acionat , iar valorii logice 0 i corespunde starea contactul este
neacionat .
98

Circuitul electric care realizeaz funcia logic NU i simbolul utilizat snt


prezentate n figura 5.2.
Fig. 5.2. Circuit cu contacte pentru realizarea
funciei logice NU (a) i simbolul utilizat (b)
Argumentul x este materializat prin contactul normal nchis, iar valorile variabil
ei dependente y snt reprezentate prin strile becului electric: stins (valoarea log
ic 0) sau aprins (valoarea logic 1). Se observ c becul va fi aprins (y=1),
dac contactul normal nchis nu este acionat (x=0).
Funcia logic I se realizeaz prin conectarea n serie a contactelor electrice. Circuitu
l electric care realizeaz funcia I de dou variabile i simbolul utilizat snt prezentate
n figura 5.3.
Fig. 5.3. Circuit cu contacte pentru realizarea
funciei logice I (a) i simbolul utilizat (b)
Variabilele x1 i x2 snt materializate prin cele dou contacte normal deschise,
iar valorile variabilei y prin bec. Se observ c becul va fi aprins (y=1), numai
dac ambele contacte normal deschise snt acionate (x1=1 i x2=1).
Funcia logic SAU se realizeaz prin conectarea n paralel a contactelor
electrice. Circuitul respectiv este prezentat n figura 5.4.
99

Fig. 5.4. Circuite cu contacte pentru realizarea


funciei logice SAU (a) i simbolul utilizat (b)
Se constat c becul va fi aprins (y=1), dac cel puin unul dintre cele dou
contacte normal deschise este acionat ( x1=1 sau x2=1).
ntruct viteza de nchidere-deschidere a contactelor electrice este foarte mic,
n calculatoarele moderne valorile 0, 1 snt reprezentate prin niveluri de tensiune,
iar ca element de comutare se utilizeaz tranzistorul.
Tranzistorul este un dispozitiv electronic format n sau pe suprafaa unui
monocristal semiconductor. Tehnologiile avansate permit fabricarea a 106
107 de
tranzistoare pe o suprafa de 1 cm2 al monocristalului.
n regim de comutaie, tranzistorul poate fi considerat ca un ntreruptor obinuit, care n
tr-o stare conduce curentul (este nchis), iar n alta
nu (este deschis).
Spre deosebire ns de ntreruptorul obinuit, nchiderea sau deschiderea tranzistorului se
realizeaz cu ajutorul curentului electric.
Exist mai multe tipuri de tranzistoare. n figura 5.5 este prezentat tranzistorul n
-p-n (abrevierea se refer la structura intern a tranzistorului) i schemele
echivalente n regim de comutaie.
Fig. 5.5. Tranzistorul n-p-n
100

Tranzistorul n-p-n are trei terminale: emitorul E, baza B i colectorul C. n


regim de comutaie, emitorul i colectorul pot fi considerai drept contacte care se
nchid sau se deschid cu ajutorul unei tensiuni aplicate la baz. Menionm c
tranzistoarele moderne permit efectuarea a 106
109 nchideri deschideri pe secund. Ca
i n cazul contactelor electrice studiate mai sus, utilizarea diferitor
tipuri de tranzistoare i conectarea lor n serie sau n paralel permite realizarea
funciilor logice NU, I, SAU.
Circuitele destinate calculrii funciilor logice frecvent utilizate se
numesc circuite logice elementare sau pori logice.
Simbolurile utilizate pentru notarea porilor logice snt reprezentate n figura 5.6.
Fig. 5.6. Simbolurile porilor logice
E cunoscut faptul c orice funcie logic poate fi exprimat printr-o formul
care include numai simbolurile operatorilor elementari , &, . Prin urmare, orice f
uncie logic cu un numr arbitrar de argumente poate fi materializat prin conectarea p
orilor logice NU, I, SAU. De exemplu, funcia
y = x1x2 2x3
poate fi realizat cu ajutorul urmtoarelor pori logice:
o poart NU pentru calcularea 2;
dou pori logice I pentru calcularea conjunciilor x1x2 i 2x3;
o poart SAU pentru calcularea disjunciei x1x2 2x;
Schema circuitului logic pentru calcularea funciei respective este prezentat
n figura 5.7.
ntrebri i exerciii
Cum pot fi reprezentate valorile binare 0 i 1?
Cum funcioneaz contactele normal deschise i contactele normal nchise?
Care este reprezentarea valorilor binare 0 i 1 n circuitele cu contacte?
101

Fig. 5.7. Circuitul logic pentru realizarea funciei y = x1x2 2x3


Utiliznd trusa din laboratorul de fizic, montai circuitele din figurile 5.2, 5.3
i 5.4. Verificai tabelele de adevr ale funciilor realizate de circuitele n cauz.
Cum se realizeaz funciile NU, I, SAU n cazul circuitelor cu contacte electrice?
Care este rolul elementelor de comutare la realizarea circuitelor logice?
Care este rolul tranzistorului n calculatoarele moderne?
Memorizai simbolurile porilor logice. Explicai cum se utilizeaz porile logice
la realizarea funciilor logice arbitrare.
Utiliznd porile NU, I, SAU, elaborai circuitele logice pentru calcularea urmtoarelor
funcii:
a) y = x1x2x3;
i)
y = x1x2 x2x3;
b) y = x1 x2 x3;
j)
y = (x1 x2) (x2 x3);
c) y = 1x2x3;
k)
y = x1x2 1x3 x3x4;
d) y = 1 x2 x3;
l)
y = 1x2 1x3 x2x3;
e) y = x1x2 x3x4;
m) y = 1x2 x12;
n)
y = x1x2 12;
g) y = x1x2;
o)
y = x1(x2 x3 x4);
h) y = x1 x2;
p)
y = x1 x2x3x4.
f)
y = (x1 x2) (x3 x4);
Releul electromagnetic este un dispozitiv cu care se comand nchiderea sau
deschiderea contactelor electrice. Contactele respective snt acionate de un

electromagnet. Cum poate fi utilizat releul pentru realizarea funciilor logice


NU, I, SAU?
Cu piesele din trusa de fizic asamblai un releu electromagnetic i verificai
soluiile propuse de dvs.
Reprezentnd valorile binare ale variabilelor de ieire prin prezena (valoarea
1) sau absena (valoarea 0) a fluidului, elaborai circuitele hidraulice pentru
realizarea funciilor logice NU, I, SAU. Montai instalaiile respective utiliznd robine
tele i furtunurile din trusa de chimie. Verificai tabelele de adevr
ale funciilor logice realizate.
102

5.2. Clasificarea circuitelor logice


Circuitele logice se clasific n dou categorii: circuite combinaionale i circuite secv
eniale.
ntr-un circuit combinaional valorile variabilelor de ieire snt determinate n orice mo
ment de combinaia valorilor variabilelor de intrare conform funciilor logice ale c
ircuitului. ntr-un circuit secvenial valorile variabilelor de ieire
depind nu numai de combinaiile valorilor variabilelor de intrare, dar i de consecu
tivitatea aplicrii lor. Altfel spus, circuitele combinaionale reprezint circuite
logice lipsite de elemente de memorie, iar circuitele secveniale includ i elemente
le de memorie binar. Prin urmare, un circuit combinaional realizeaz o prelucrare nu
meric a informaiei, care poate fi n ntregime exprimat printr-un grup
de funcii logice n care nu intervine parametrul timp.
Schema-bloc a unui circuit combinaional este prezentat n figura 5.8.
Fig. 5.8. Schema-bloc a unui circuit logic combinaional:
a detaliat; b
generalizat
Circuitul are n variabile de intrare: X = < x1, x2, ..., xn >, i m variabile de i
eire:
Y = < y1, y2, ..., ym >. Conexiunile destinate transmiterii valorilor unui grup
de
variabile se reprezint prin linii duble. Dac e necesar, numrul de variabile se
indic lng o bar care ntretaie linia dubl a grupului de variabile. De exemplu,
n figura 5.8 b se indic c grupul X include n variabile, iar grupul Y
m variabile.
Din punctul de vedere al teoriei informaiei, circuitul combinaional reprezint un co
nvertor de cod: la intrrile X se aplic combinaiile admise de primul cod,
din care se face conversiunea, iar la ieirile Y apar combinaiile corespunztoare
n cel de al doilea cod, n care se face conversiunea.
De exemplu, primul cod poate fi codul EBCDIC, iar al doilea codul ASCII.

5.3. Sumatorul
Una dintre principalele sarcini ale unui calculator n momentul prelucrrii informaie
i const n efectuarea operaiilor aritmetice elementare i, n special, adunarea i scderea
Dispozitivele n care au loc aceste operaii au la baz circuite cu
ajutorul crora se efectueaz adunarea, respectiv scderea a dou cifre binare.
103

Semisumatorul este un circuit combinaional destinat adunrii a dou cifre


binare. Tabelul de adevr care pune n eviden funcionarea unui semisumator
rezult din regula de adunare a dou cifre binare i este prezentat n figura 5.9.
Aici a i b reprezint cele dou cifre binare care se adun, s
cifra-sum a rangului respe
ctiv, iar t
cifra de transport ctre rangul urmtor.
a
b
s
t
0
0
1
1
0
1
0
1
0
1
1
0
0
0
0
1
Fig. 5.9. Tabelul de adevr pentru adunarea
a dou cifre binare
Pentru a elabora o schem posibil a semisumatorului, exprimm funciile de
ieire s i t:
s = b a;
t = ab.
Schema care realizeaz funciile s, t i simbolul utilizat snt prezentate n figura 5.10.
Fig. 5.10. Schema semisumatorului (1) i simbolul utilizat (2)
S lum dou numere binare
i
A = an 1 an 2 ... aj ... a0
B = bn 1 bn 2 ... bj ... b0,
unde aj i bj reprezint cifrele binare din rangul (poziia) j. La nsumarea cifrelor
aj i bj din rangul j trebuie s se ia n considerare i cifra de transport tj 1 de la
rangul inferior j 1:
104

+
tj 1
an 1 an 2 ... aj ... a0
bn 1 bn 2 ... bj ... b0.
Se obine astfel un circuit combinaional care calculeaz suma tj 1 + aj + bj,
denumit sumator elementar.
Sumatorul elementar poate fi realizat prin conectarea n cascad a dou semisumatoare
SS1 i SS2 (fig. 5.11).
Fig. 5.11. Schema sumatorului elementar (1) i simbolul utilizat (2)
Semisumatorul SS1 calculeaz suma (aj + bj), iar semisumatorul SS2 nsumeaz
transportul tj 1 cu suma (aj + bj) calculat de primul semisumator. Transportul tj
ctre rangul superior j +1 se calculeaz de poarta logic SAU, care reunete transportur
ile intermediare de la ieirile respective ale semisumatoarelor SS1 i SS2.
Suma numerelor binare A i B se calculeaz cu ajutorul unui circuit combinaional denu
mit sumator. Un sumator poate fi realizat prin conectarea a n sumatoare elementa
re (fig.5.12).
Sumatorul elementar SM0 corespunztor cifrei celei mai puin semnificative
poate fi nlocuit cu un semisumator, deoarece pentru aceast poziie nu exist un
transport de la rangul precedent. Transportul de la ieirea sumatorului SMn 1 al
rangului cel mai semnificativ este folosit pentru a indica depirea capacitii
sumatorului de n bii.
Din analiza figurilor 5.10, 5.11 i 5.12 rezult c un dispozitiv complex sumatorul de
n bii este realizat prin reunirea a unor dispozitive mult mai simple, adic
a n sumatoare elementare. Fiecare sumator elementar, la rndul lui, este realizat
prin reunirea a cte dou semisumatoare i o poart logic SAU.
Metoda de elaborare a dispozitivelor complexe (de exemplu, sumatorul) prin reuni
rea mai multor dispozitive identice mai simple (sumatorul elementar) poart denumi
rea de metod de proiectare ierarhic. Conform acestei metode, componentele calculat
orului se caracterizeaz prin niveluri de ierarhie, de exemplu:
nivelul 1
tranzistoare;
nivelul 2 pori logice;
nivelul 3 semisumatoare, sumatoare elementare etc.;
nivelul 4 sumatoare, scztoare etc.;
nivelul 5 uniti aritmetice, uniti de comand etc.
105

Fig. 5.12. Schema sumatorului (1) i simbolul utilizat (2)


Componentele de un nivel ierarhic inferior snt utilizate n calitate de cubuoare eleme
ntare pentru realizarea componentelor de un nivel ierarhic superior.
Teoretic, dispozitivele unui calculator numeric pot fi elaborate i fr aplicarea
metodei de proiectare ierarhic. De exemplu, n cazul sumatorului elementar utilizar
ea semisumatorului nu este obligatorie. E suficient s alctuim tabelul de
adevr al sumatorului elementar, s exprimm funciile de ieire prin formule i
s reunim porile logice respective.
n cazul nivelurilor ierarhice superioare, neaplicarea metodei de proiectare
ierarhic face imposibil elaborarea dispozitivelor complexe. De exemplu, n cazul unu
i sumator de n bii, tabelul respectiv de adevr ar conine 22n rnduri.
Pentru n = 16 obinem 2216 = 232 109 rnduri. Evident, formulele funciilor de
ieire ale sumatorului de 16 bii practic nu mai pot fi scrise. Prin urmare, sntem
nevoii s aplicm metoda de proiectare ierarhic i s realizm sumatorul printr-o
reunire de n sumatoare elementare.
106

Aplicnd metoda de proiectare ierarhic, ntr-un mod similar pot fi elaborate


circuitele combinaionale destinate scderii numerelor binare: semiscztorul,
scztorul elementar i scztorul.

ntrebri i exerciii
Care este destinaia semisumatorului? Dar a sumatorului elementar? i n fine
a sumatorului de n bii?
Alctuii tabelul de adevr al sumatorului elementar. Tabelul va conine cinci
colonie: trei pentru intrrile aj, bj, tj 1 i dou pentru ieirile sj, tj .
Elaborai un program PASCAL care simuleaz funcionarea sumatorului elementar. Cifrele
binare aj, bj i cifra de transport tj 1 de la rangul inferior se
citesc de la tastatur, iar cifra-sum sj i cifra de transport tj ctre rangul superior
se afieaz pe ecran.
Explicai esena metodei de proiectare ierarhic a dispozitivelor unui calculator nume
ric. Este oare obligatorie aplicarea acestei metode? Argumentai rspunsul dvs.
Cte pori logice NU, I, SAU va conine un sumator de 16 bii? Dar de 32 de bii?
Semiscztorul este un circuit combinaional destinat scderii a dou cifre binare. Circui
tul respectiv are intrrile a, b i ieirile d, i. Prin termenul d se nelege diferena a b,
iar prin termenul i mprumutul de la cifra de rang imediat
superior. Alctuii tabelul de adevr i elaborai schema semiscztorului.
Scztorul elementar este un circuit combinaional capabil de a calcula diferena dj i mp
umutul ij ctre rangul imediat superior, dac se introduc la intrare desczutul aj, sczt
orul bj i mprumutul ij 1 de la rangul anterior. Aplicnd metoda de proiectare ierarhic,
elaborai schema scztorului elementar.
Aplicnd metoda de proiectare ierarhic, elaborai schema unui scztor de n bii.
Cte pori logice NU, I, SAU va conine un scztor de 16 bii? Dar de 32 de bii?
Este oare obligatorie aplicarea metodei de proiectare ierarhic n cazul elaborrii un
ui scztor de n bii? Argumentai rspunsul dvs.
5.4. Circuite combinaionale frecvent utilizate
Circuitele combinaionale frecvent utilizate snt prezentate n figura 5.13.
Sumatorul este un circuit combinaional destinat adunrii a dou numere
binare. Tabelul de adevr i schema sumatorului au fost studiate n paragraful
precedent.
Comparatorul este un circuit combinaional care compar numerele binare A i
B, indicnd prin cele trei ieiri una dintre situaiile posibile: A < B, A > B sau A =
B.
Codificatorul este un circuit combinaional care efectueaz conversiunea mesajelor s
1, s2, ..., sn n cuvintele binare din codul respectiv. Se consider c fiecare
dintre mesajele si este reprezentat prin valorile x1 = 0, ..., xi = 1, ..., xn =
0 aplicate la
intrarea codificatorului, iar cuvntul de cod
prin variabilele de ieire y1, y2, ...
, ym.
107

Fig. 5.13. Circuite combinaionale frecvent utilizate:


a sumatorul; b
comparatorul; c
codificatorul; d
e multiplexorul; f
demultiplexorul

decodificatorul;

De exemplu, variabilele x1, x2, x3, ... pot reprezenta starea tastelor <A>, <B>,
<C>, ... ale tastaturii. Codificatorul respectiv va furniza la ieire cuvntul de co
d
ASCII corespunztor tastei acionate.
Decodificatorul este un circuit combinaional care genereaz semnalul logic 1
pe o ieire distinct pentru fiecare combinaie a valorilor variabilelor de intrare.
Cu alte cuvinte, decodificatorul efectueaz operaia invers a unui codificator.
Decodificatoarele snt utilizate pentru a determina operaiile pe care trebuie
s le execute procesorul, pentru selectarea unitilor de intrare-ieire, sintetizarea s
imbolurilor etc.
Multiplexorul este un circuit combinaional destinat selectrii fluxurilor de
date. n figura 5.13 e este prezentat un multiplexor care transmite la ieire biii
numrului binar A (u = 0) sau B (u = 1). n calculatoarele moderne multiplexoarele s
e utilizeaz pentru transferul informaiei de la mai multe surse la un singur
destinatar.
Demultiplexorul distribuie fluxul de date de la intrarea X la una dintre ieirile
Y (u = 0) sau Z (u = 1). Drept exemplu, amintim transferul informaiei de la o
singur surs la mai muli destinatari.
ntrebri i exerciii
Explicai destinaia circuitelor combinaionale frecvent utilizate: sumatorul,
comparatorul, codificatorul, decodificatorul, multiplexorul i demultiplexorul.
Alctuii tabelul de adevr al unui comparator de 2 bii.
108

Cte intrri i cte ieiri poate avea un codificator? Cte intrri i cte ieiri poate
avea un decodificator?
Pe panoul de comand al imprimantei snt montate butoanele ON LINE (funcionare sub co
ntrolul unitii centrale), OFF LINE (funcionare autonom), LINE
FEED (avans de linie) i FORM FEED (avans de pagin). Alctuii tabelul de
adevr al codificatorului care furnizeaz la ieire urmtoarele combinaii binare:
00
ON LINE;
01 OFF LINE;
10 LINE FEED;
11 FORM FEED.
Pe panoul de comand al imprimantei snt montate becurile (diodele luminiscente) ind
icatoare READY (disponibil), PAPER (lipsa de hrtie), TEST (regimul de testare) i LO
AD (regimul de ncrcare a informaiei). Alctuii tabelul
de adevr al decodificatorului care aprinde becurile n cauz. Strile respective
snt codificate prin urmtoarele combinaii binare:
00 READY;
01 PAPER;
10 TEST;
11 LOAD.
Tastatura calculatorului include tastele funcionale <F1>, <F2>, ..., <F12>. Alctuii
tabelul de adevr al codificatorului care va furniza la ieire numrul
binar corespunztor tastei funcionale acionate.
Unitile de intrare-ieire ale unui calculator au urmtoarele adrese:
0000 tastatura;
0001 vizualizatorul;
0010 imprimanta mecanic;
0011 imprimanta cu jet de cerneal;
0100 imprimanta laser;
0101 unitatea de disc flexibil A;
0110 unitatea de disc flexibil B;
0111 unitatea de disc rigid C;
1000 unitatea de disc rigid D.
Alctuii tabelul de adevr al decodificatorului care va selecta unitatea indicat
de adresa respectiv.
Operaiile aritmetice ale unui calculator ipotetic snt codificate dup cum urmeaz:
109

adunarea
000;
scderea
001;
nmulirea
010;
mprirea
011;
compararea
100.
Alctuii tabelul de adevr al decodificatorului operaiilor aritmetice.
Alctuii tabelul de adevr al multiplexorului cu 2 linii de intrare.
5.5. Bistabilul 45
E cunoscut faptul c ntr-un circuit secvenial valorile variabilelor de ieire
depind nu numai de combinaiile valorilor variabilelor de intrare, dar i de consecu
tivitatea aplicrii lor. Cu alte cuvinte, circuitul secvenial memorizeaz
informaii referitoare la combinaiile aplicate la intrri n momentele precedente.
Acest lucru este posibil datorit faptului c circuitele secveniale snt alctuite
din circuite combinaionale i elemente de memorie binar.
Elementul de memorie binar este un circuit cu dou stri distincte,
destinat pentru a pstra o informaie dintr-un singur bit. Circuitul
respectiv are denumirea de bistabil.
n figura 5.14 este prezentat schema circuitului bistabil de baz realizat cu
pori logice SAU-NU, denumit bistabil asincron RS.
Circuitul are dou intrri notate cu R i S i dou ieiri notate cu Q i . Se
observ c semnalele de ieire Q i snt aplicate la intrrile porilor SAU-NU.
Conexiunile respective snt numite reacii. Tocmai datorit acestor conexiuni,
circuitul dat are dou stri distincte i, prin urmare, asigur memorarea unui bit
de informaie.
Fig. 5.14. Schema bistabilului asincron RS (a) i simbolul utilizat (b)
110

ntr-adevr, admitem c semnalele de intrare R = S = 0, iar ieirile Q = 1, = 0.


Datorit reaciei, valoarea Q = 1 impune ieirea = 0. La rndul ei, tot datorit reaciei,
valoarea = 0 confirm ieirea = 1. Exact la fel, n cazul n care ieirile Q = 0, = 1,
datorit reaciei, valoarea = 1 impune ieirea Q = 0. Prin urmare, valorile de intrare
R = S = 0 nu schimb starea bistabilului, acesta pstrnd cifra binar memorat.
S-a convenit ca strii Q = 1, = 0 s-i corespund cifra binar 1, iar strii Q = 0,
= 1 cifra binar 0. Ieirea Q este numit ieire direct sau ieire adevrat, iar
ieirea ieire invers sau ieire negat. Starea bistabilului este indicat de ieirea dire
.
S examinm cazul n care R = 0, S = 1. Presupunem c bistabilul se afl n
starea 0, adic Q = 0 i = 1. n acest caz, valoarea S = 1 va impune = 0, care,
la rndul ei, prin reacie, va asigura Q = 1. Prin urmare, bistabilul trece n starea
1 (Q = 1, = 0). Aceast stare, dup cum s-a stabilit anterior, se va pstra i dup
trecerea semnalului S de la valoarea 1 la valoarea 0. Intrarea S, care asigur
fixarea bistabilului n starea 1, poart denumirea de intrare de setare.
n mod similar se poate constata c n cazul n care bistabilul se afl n starea
1 (Q = 1, = 0), iar S = 0, i R = 1, bistabilul va trece n starea 0 (Q = 0, = 1).
Aceast stare se va pstra i dup trecerea semnalului R de la valoarea 1 la valoarea 0.
Intrarea R, care asigur stabilirea bistabilului n starea 0, poart denumirea de int
rare de resetare.
Combinaia de intrare R = 1 i S = 1 impune valorile de ieire Q = 0 i = 0.
Valorilor de ieire Q = = 0 nu le corespunde nicio stare distinct a bistabilului.
Prin urmare, pentru bistabilul RS combinaia de intrare R = S = 1 este o combinaie
interzis.
Regimurile de funcionare a bistabilului n cauz snt totalizate n tabelul 5.1.
Regimurile de funcionare ale bistabilului asincron RS
R
Intrri
S
Regim de
funcionare
Ieirea Q
0
0
1
1
0
1
0
1
pstrare bit
setare
resetare
interzis
bit memorat
1
0
Tabelul 5.1
Adjectivul asincron din denumirea bistabilului RS concretizeaz modul de influen a s
emnalelor de comand R i S asupra strii bistabilului. Din analiza

circuitului prezentat n figura 5.14 rezult c semnalele de comand, aplicate la


intrrile R i S n momente arbitrare, pot schimba starea bistabilului.
Circuitele secveniale n care starea circuitului poate fi schimbat de
semnalele de comand n momente arbitrare de timp se numesc circuite asincrone.
Un calculator modern conine zeci de mii de bistabile. Schimbarea strii lor n
momente arbitrare, greu de controlat, poate fi cauza unor erori de funcionare. Pe
n111

tru a evita o funcionare greit, s-a convenit ca aceast comportare a circuitelor


secveniale s fie determinat n baza valorilor semnalelor de comand aplicate la
intrri n momente discrete, bine determinate n timp. Aceste momente snt indicate cu a
jutorul unor impulsuri speciale, numite semnale de sincronizare.
Circuitele secveniale n care starea circuitului poate fi schimbat de
semnalele de comand numai n momentele indicate de semnalele de
sincronizare se numesc circuite sincrone.
De obicei, semnalul de sincronizare se noteaz prin litera C (din englez Clock
ceas ) i este furnizat de un dispozitiv special, numit ceas de sistem.
n figura 5.15 este prezentat schema unui bistabil sincron denumit bistabil
sincron RS.
Fig. 5.15. Schema bistabilului sincron RS (a) i simbolul utilizat (b)
Schema dat include bistabilul asincron RS (fig. 5.14) i dou pori logice I
care permit aplicarea semnalelor de comand la intrrile bistabilului asincron
numai n cazul n care semnalul de sincronizare C are valoarea 1.
ntrebri i exerciii
Prin ce se deosebesc circuitele combinaionale i circuitele secveniale?
Care este destinaia circuitului bistabil?
Cum funcioneaz un circuit bistabil cu pori logice SAU-NU? Care este destinaia reaciil
or?
Explicai regimurile de funcionare a bistabilului asincron RS. De ce combinaia R = S
= 1 nu poate fi aplicat la intrrile bistabilului examinat?
Prin ce se deosebesc circuitele secveniale asincrone i circuitele secveniale
sincrone?
Explicai cum funcioneaz bistabilul sincron RS. Care este destinaia porilor
logice I din componena acestui bistabil?
112

Fig. 5.16. Schema bistabilului asincron (a) i simbolul utilizat (b)


n figura 5.16 este prezentat schema circuitului bistabil de baz realizat cu
pori logice I-NU, denumit bistabil asincron .
Circuitul are urmtoarele regimuri de funcionare:
pstrare bit ( = 1, = 1);
setare ( = 1, = 0);
resetare ( = 0, = 1).
Explicai cum funcioneaz bistabilul examinat. De ce combinaia de intrare
= 0, = 0 este o combinaie interzis?
Utiliznd bistabilul asincron , elaborai schema bistabilului sincron .
Desenai schema detaliat (la nivelul porilor logice I, SAU-NU) a bistabilului
sincron RS. Pentru aceasta decalcai schemele respective din figurile 5.14a i 5.15a
.
Desenai schema detaliat (la nivelul porilor logice I, I-NU) a bistabilului
sincron .
5.6. Circuite secveniale frecvent utilizate
Registrul (fig. 5.17a) este un dispozitiv numeric destinat pstrrii temporare
a unui numr binar,
D = dn 1 ...d1d0.
Registrul este constituit din bistabile la care snt ataate circuite combinaionale c
are permit nscrierea, citirea sau transferul informaiei. nscrierea informaiei n regis
tru se efectueaz prin aplicarea la intrarea W (Write nscrie ) a impulsului respectiv.
Deoarece fiecare bistabil poate memora un singur bit, capacitatea n a unui regi
stru este dat de numrul bistabilelor.
n anumite aplicaii, de exemplu: nmulirea i mprirea numerelor binare,
scrierea sau citirea datelor pe disc, transmiterea datelor prin firele telefonic
e etc.,
apare necesitatea deplasrii n stnga sau n dreapta a informaiei memorate ntr-un
registru. n acest scop se utilizeaz registrele de deplasare (fig. 5.17 b, c).
113

Fig. 5.17. Circuite secveniale frecvent utilizate:


a registrul; b
registru de deplasare de la dreapta spre stnga; c
registru
de deplasare de la stnga spre dreapta; d numrtor direct; e
numrtor invers
Succesiunea strilor unui registru de deplasare de la dreapta spre stnga este dat n f
igura 5.18.
Timpul
iniial
t1
t2
t3
t4
t5
...
d3 d2 d1 d0
0
1
0
1
0
0
1
0
1
0
0
0
...
0
1
0
0
0
0
1
0
0
0
0
0
Fig. 5.18. Succesiunea strilor unui registru de deplasare
de la dreapta spre stnga

Se consider c starea iniial a registrului este 0101, iar impulsurile snt aplicate la
intrarea C n momentele de timp t1, t2, t3 etc. Firete, registrul n cauz
calculeaz produsul D 2.
n mod similar, un registru de deplasare de la stnga spre dreapta va
calcula ctul D : 2.
Numrtoarele snt circuite secveniale care nregistreaz numrul de impulsuri aplicat la in
rare. Numrtoarele se clasific dup urmtoarele criterii:
modul de codificare a informaiei (binar, binar-zecimal etc.);
modul de modificare a strilor numrtorului (numrtoare directe, inverse
i reversibile).
n general, numrtoarele snt realizate prin asocierea circuitelor bistabile cu
circuite combinaionale care determin modul corect n care numrtoarele urmeaz s-i modif

starea la fiecare nou impuls sosit la intrare.


114

Un numrtor binar nregistreaz succesiunea impulsurilor aplicate la intrare n sistemul


de numeraie binar. Capacitatea de numrare a numrtorului binar depinde de numrul bista
bilelor. Considernd pentru fiecare numr o
stare distinct, rezult c acesta poate numra n gama 0 la 2n 1, n fiind numrul
bistabilelor.
n figura 5.17d este prezentat numrtorul binar direct , iar n figura 5.19
tabelul succesiunii strilor unui numrtor binar direct de 3 bii.
Timpul
iniial
t1
t2
t3
t4
t5
t6
t7
t8
t9
...
d2 d1 d0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
...
0
1
0
1
0
1
0
1
0
1
Fig. 5.19. Succesiunea strilor
unui numrtor binar direct de trei bii
Numrtoarele care i schimb starea conform tabelului din figura 5.19 snt
denumite directe, deoarece coninutul numrtorului crete cu o unitate, la fiecare nou

impuls sosit la intrarea +1. Dac ntr-un numrtor se introduce iniial


un numr i la fiecare impuls aplicat la intrarea 1 coninutul su scade cu o
unitate, se obine un numrtor invers (fig. 5.17e).
ntrebri i exerciii
Care este destinaia registrului? De ce depinde capacitatea unui registru?
n registrul de deplasare de la dreapta spre stnga (fig. 5.17b) este ncrcat
numrul binar 1001. Care va fi coninutul registrului dup aplicarea la intrarea C a u
nui impuls? Dar a dou impulsuri?
n registrul de deplasare de la stnga spre dreapta este ncrcat unul dintre
urmtoarele cuvinte binare:
a) 00000;
f)
00001;
b) 10000;
g) 10001;
c) 01000;
h) 01010;
d) 00100;
i)
01100;
e) 00010;
j)
00110.
115

Care va fi coninutul registrului dup aplicarea la intrarea C a dou impulsuri


consecutive?
Elaborai un program PASCAL care simuleaz funcionarea unui registru de
deplasare de la stnga spre dreapta de n bii.
Care este destinaia numrtoarelor? Cum se schimb strile unui numrtor
direct? Dar ale unui numrtor invers?
Un numrtor direct de 4 bii se afl iniial n una dintre urmtoarele stri:
a) 0000;
f)
1010;
b) 0010;
g) 1100;
c) 0100;
h) 1111;
d) 1000;
i)
0101;
e) 1001;
j)
0110.
Care va fi starea numrtorului dup aplicarea a 5 impulsuri de intrare? Dar a
8 impulsuri?
Un numrtor invers de 4 bii se afl n starea iniial 1001. Care va fi starea
numrtorului dup aplicarea a m impulsuri de intrare? Numrul m poate avea
valorile 1, 4, 5, 8, 11, 17.
Elaborai un program PASCAL care simuleaz funcionarea unui numrtor
direct de n bii.

5.7. eneratoare de impulsuri


Impulsurile se utilizeaz n echipamentele numerice pentru a asigura funcionarea secv
enial a acestora. De obicei, generatoarele de impulsuri se realizeaz
pe baza porilor logice i a elementelor de ntrziere.
Elementul de ntrziere reprezint un circuit electronic care realizeaz funcia
logic de repetare y = x, ns semnalul de ieire y repet semnalul de intrare x cu
o ntrziere de uniti de timp.
Din cursul de fizic e cunoscut faptul c viteza de propagare a semnalelor este
finit. Prin urmare, orice conductor poate fi tratat ca un element de ntrziere. Pent
ru a mri inertitatea circuitelor electronice i pentru a realiza ntrzieri semnificative
, n componena lor se includ condensatoare i rezistoare. n acest caz ntrzierea este de
erminat de capacitatea i rezistena componentelor respective.
n figura 5.20 snt prezentate simbolul i diagramele n timp ale elementului
de ntrziere.
Schema unui generator de impulsuri periodice realizat pe baza unui element de ntrz
iere i a porii logice I-NU este prezentat n figura 5.21. n starea
iniial x = 0 i y = 1, iar la ieirea elementului de ntrziere se menine valoarea
logic 1. Cnd la intrare se aplic semnalul de pornire x = 1, ieirea devine egal
cu 0 (fig. 5.22). n continuare, valoarea logic 0, dup o ntrziere , este aplicat

la a doua intrare a porii logice I-NU. Astfel, ieirea y devine egal cu 1. Valoa116

Fig. 5.20. Simbolul (a) i diagramele n timp (b) ale elementului de ntrziere
rea logic 1, dup o ntrziere , va fi din nou aplicat la intrarea porii logice I-NU,
impunnd la ieire valoarea y = 0 etc.
Prin urmare, la ieirea y a generatorului se va forma o succesiune de impulsuri
cu durata . Procesul de generare poate fi ntrerupt prin aplicarea la intrare a
semnalului de oprire x = 0.
Fig. 5.21. Schema (a) i simbolul generatorului de impulsuri periodice (b)
Fig. 5.22. Diagramele n timp ale generatorului de impulsuri periodice
117

ntrebri i exerciii
Care este destinaia elementului de ntrziere? Desenai diagramele n timp ale
elementului examinat.
Explicai cum funcioneaz generatorul de impulsuri periodice. De ce depinde
durata impulsurilor?
nlocuii poarta logic I-NU din componena generatorului de impulsuri periodice prezenta
t n figura 5.21 printr-o poart logic SAU-NU. Explicai cum
va funciona circuitul respectiv. Desenai diagramele n timp ale generatorului obinut.
E cunoscut faptul c variaiile mrimilor fizice nu pot avea loc instantaneu.
Prin urmare, orice poart logic are o ntrziere , enumit ntrziere parazitar, valoarea
ret a creia epine e particularitile circuitului respectiv.
Excluei in schema prezentat n figura 5.21 elementul e ntrziere, aplicn semnalul e
la ieirea porii logice I-NU irect la intrarea ei. Explicai
cum va funciona circuitul obinut. De ce epine urata impulsurilor la ieirea
porii logice? Desenai iagramele respective n timp.
Circuitul secvenial const intr-o poart logic NU, semnalul e ieire al creia este apl
cat irect la intrarea ei. Cum va funciona acest circuit?

Test e autoevaluare nr. 5


1. Desenai schema circuitului logic pentru calcularea funciei y = 1x2 x1x3.
2. La intrrile circuitului logic e mai jos snt aplicate valorile x1 = 1, x2 = 0 i
x3 = 1. Desenai
schema n caiet i inicai pe esen valorile semnalelor e la intrrile i ieirile fiecrei
pori
logice.
3. Scriei funcia logic realizat e circuitul in itemul 2.
4. Elaborai un program PASCAL care simuleaz funcionarea semisumatorului. Cifrele bi
nare a i b se citesc e la tastatur, iar cifra-sum s i cifra e transport t se afieaz
pe ecran.
118

5. Cte pori logice NU, I, SAU va conine un sumator e 8 bii? Argumentai rspunsul.
6. Elaborai un program PASCAL care simuleaz funcionarea sumatorului e 8 bii.
Numerele binare A i B se citesc e la tastatur, iar suma S i cifra e epire t se
afieaz pe ecran.
7. Inicai coresponena ntre enumirile circuitelor combinaionale frecvent utilizate
(coloana in stnga) i estinaia acestora (coloana in reapta):
(a) efectueaz conversiunea mesajelor n cuvinte binare;
(1) sumatorul;
(b) efectueaz conversiunea semnalelor;
(2) comparatorul;
(c) istribuie fluxurile e ate;
(3) coificatorul;
() efectueaz conversiunea cuvintelor binare n mesaje;
(4) ecoificatorul;
(e) calculeaz suma a ou numere binare;
(5) multiplexorul;
(f)
(6) emultiplexorul.
(g) compar ou numere binare;
selecteaz obiectele unei imagini;
(h) selecteaz fluxurile e ate.
8. Pe panoul e coman al unui joc electronic snt montate becurile (ioele lumini
scente) inicatoare SUS, JOS, STNGA i DREAPTA. Alctuii tabelul e aevr al ecoifica
torului care aprine becurile n cauz. Comenzile respective snt coificate prin urmto
arele combinaii binare:
00 SUS;
01 JOS;
10 STNGA;
11 DREAPTA.
9. Cunoscn valorile variabilelor e intrare R = 0 i S = 1, eterminai valorile fun
ciilor
Q i la ieirea bistabilului e mai jos.
10. Desenai schema etaliat (la nivelul porilor logice I, I-NU) a bistabilului sincro
n .
119

11. Inicai coresponena ntre enumirile circuitelor secveniale frecvent utilizate (


coloana in stnga) i estinaia acestora (coloana in reapta):
(a) eplaseaz cuvntul binar
e la stnga la reapta;
(1) bistabilul;
(2) registrul;
(3) registrul e eplasare
e la reapta spre stnga;
(4) registrul e eplasare
e la stnga spre reapta;
(5) numrtorul irect;
(6) numrtorul invers.
(b) transform cuvintele binare n caractere;
(c) aun cte o unitate la coninutul su;
() memoreaz o cifr binar;
(e) aun ou numere binare, reprezentate
n co invers;
(f)
scae cte o unitate in coninutul su;
(g) eplaseaz cuvntul binar
e la reapta la stnga;
(h) scae numerele binare, reprezentate
n co irect;
(i)
memoreaz un cuvnt binar.
12. n registrul e eplasare e la stnga spre reapta este ncrcat cuvntul binar 10011
011.
Care va fi coninutul registrului up aplicarea la intrarea C a trei impulsuri cons
ecutive?
13. n registrul e eplasare e la reapta spre stnga este ncrcat cuvntul binar 11011
101.
Care va fi coninutul registrului up aplicarea la intrarea C a patru impulsuri con
secutive?
14. Elaborai un program PASCAL care simuleaz funcionarea unui registru e eplasare
e la reapta spre stnga. Coninutul iniial al registrului R i numrul e impulsuri e
intrare m
se citesc e la tastatur, iar rezultatul eplasrii se afieaz pe ecran.
15. Un numrtor irect e 8 bii se afl n starea iniial 10001101. Care va fi starea
numrtorului up aplicarea a 6 impulsuri e intrare?
16. Un numrtor invers e 8 bii se afl n starea iniial 10101110. Care va fi starea
numrtorului up aplicarea a 5 impulsuri e intrare?
17. Elaborai un program PASCAL care simuleaz funcionarea unui numrtor irect.
Coninutul iniial al numrtorului A i numrul e impulsuri e intrare m se citesc e la t
astatur, iar coninutul final al numrtorului se afieaz pe ecran.
120

Capitolul 6
STRUCTURA I FUNCIONAREA
CALCULATORULUI
6.1. Schema funcional a calculatorului
Schema funcional a calculatorului numeric este prezentat n figura 6.1.
Conform acestei scheme, calculatorul numeric conine urmtoarele uniti
funcionale:
o unitate e memorie pentru a nmagazina atele iniiale, intermeiare i
finale ale problemei, precum i instruciunile care inic secvena calculelor;
un ispozitiv aritmetic i logic necesar efecturii operaiilor aritmetice i logice
elementare;
unul sau mai multe ispozitive e intrare, respectiv, ieire, necesare comunicrii 
in exterior cu calculatorul;
un ispozitiv central e coman i control care genereaz o succesiune e
semnale e coman necesare executrii secveniale a instruciunilor.
Dispozitivul aritmetic i logic i ispozitivul central e coman formeaz unitatea cen
tral e prelucrare a informaiei sau, mai pe scurt, procesorul.
Memoria calculatoarelor moerne este organizat n ou niveluri, i anume:
o unitate e memorie intern cu o vitez mare e lucru i una sau mai multe
uniti e memorie extern cu o vitez mai reus, ns cu o capacitate mult mai
mare ect cea a memoriei interne.
Fig. 6.1. Schema funcional a calculatorului
121

Memoria intern (numit uneori memorie principal, central sau operativ) pstreaz programu
n curs e executare i atele folosite e acesta, prezena
ei fiin o coniie esenial pentru funcionarea calculatorului.
Memoria extern are rolul e a pstra cantiti mari e informaie i programe folosite frec
vent pentru a putea fi ause ntr-un interval e timp mic n memoria intern. n prezent
ca memorii externe snt utilizate unitile cu iscuri sau
benzi magnetice, unitile cu iscuri optice etc.
Unitile e memorie extern i ispozitivele e intrare-ieire snt numite
echipamente periferice.
Pentru a asigura o interaciune eficient a procesorului, a memoriei interne i
a echipamentelor periferice, n cazul calculatoarelor personale schema funcional se
realizeaz fizic conform schemei-bloc prezentate n figura 6.2.
Fig. 6.2. Schema-bloc a unui calculator personal
Din analiza figurii 6.2 rezult c toate calculatoarele moerne au o configuraie mou
lar. Fiecare mol, i anume controlerul, imprimantele, unitile e isc magnetic etc.,
funcioneaz i, n consecin, pot fi incluse sau
excluse in componena calculatorului inepenent unul e altul. Prin urmare, conf
iguraia calculatorului poate fi moificat n funcie e estinaia sistemului e calcul.
De exemplu, un sistem eitorial va inclue mai multe tipuri e imprimante:
mecanice pentru textele n curs e prelucrare, laser sau color pentru paginile
machetate eja, cititoare e esene i fotografii (scanere) etc. Un sistem estina
t
gestionrii rapie a unui volum mare e ate va inclue mai multe iscuri magnetic
e, iar un calculator utilizat pentru montarea filmelor vieo va fi otat cu
camere e luat veeri i vizualizatoare e o rezoluie aecvat, cu tastaturi similare
pupitrului regizoral etc.
122

ntrebri i exerciii
Numii unitile funcionale ale calculatorului i explicai estinaia lor.
Care este rolul memoriei interne? Cum se realizeaz memoria extern a calculatoarelo
r moerne?
Numii echipamentele periferice pe care le cunoatei vs.
Numii componentele unui calculator personal i explicai estinaia lor.
Care este structura i cum interacioneaz componentele unui calculator?
Cum poate fi moificat configuraia unui sistem e calcul? Care snt avantajele confi
guraiei moulare a calculatorului?
Desenai schema-bloc a calculatorului cu care lucrai vs. Care componente
snt obligatorii i care opionale pentru funcionarea calculatorului?
Cum poate fi conectat la un calculator personal o unitate suplimentar e isc
magnetic? O imprimant laser? Un cititor e ocumente? O camer e luat
veeri?

6.2. Formatul instruciunilor


Pentru a rezolva o problem, calculatorul trebuie s cunoasc n fiecare moment
att operaia pe care urmeaz s o execute, ct i atele care particip n operaie.
Aceste operaii snt comunicate calculatorului prin intermeiul instruciunilor.
Instruciunea calculatorului reprezint o succesiune e cifre binare
prin care se inic procesorului operaia e executat i amplasamentul (locul) operanz
ilor.
Succesiunea binar respectiv, enumit uneori i cuvnt instruciune, este
mprit n cmpuri, fiecare cmp avn o semnificaie precis. Numrul i semnificaia cmp
umirea e formatul instruciunii. n figura 6.3
snt prezentate formatele utilizate n calculatoarele moerne.
Fig. 6.3. Formatul instruciunilor cu trei (a), ou (b) i o singur ares (c)
123

n general, pentru executarea unei operaii este necesar ca instruciunea s conin trei a
rese (fig. 6.3a). Primele ou arese snt folosite pentru obinerea celor oi
operanzi asupra crora se va efectua operaia specificat e cmpul Coul instruciunii. R
ezultatul operaiei va fi epus pe aresa specificat e cmpul Ares rezultat.
S analizm un exemplu. Presupunem c operaiile aritmetice i logice snt
coificate up cum urmeaz (pentru simplitate vom utiliza echivalentele zecimale al
e cmpurilor binare respective):
01
aunarea;
02
scerea;
03
operaia logic I;
04 operaia logic SAU.
Instruciunea
01 100 110 215
va impune procesorul s aune numerele in locaiile 100 i 110 i s epun
suma obinut n locaia 215.
Instruciunea
02 100 110 215
comunic procesorului c in numrul nscris n locaia 100 se scae numrul in
locaia 110. Rezultatul obinut va fi epus n locaia 215.
n mo similar, instruciunea
03 200 300 100
specific operaia logic I asupra biilor cuvintelor in locaiile 200 i 300. Rezultatul o
eraiei va fi epus n locaia 100.
Se observ c ntr-o instruciune nu se specific valoarea operanzilor, ci
aresele locaiilor n care pot fi gsii operanzii respectivi. Acest fapt permite
utilizarea unuia i aceluiai program pentru prelucrarea oricror ate iniiale.
Faptul c instruciunile lucreaz cu arese al cror coninut trebuie prelucrat, i
nu cu nsui coninutul, constituie un principiu funamental al calculatoarelor
numerice, care permite ca un program s fie elaborat i introus n calculator
inepenent e atele concrete asupra crora se aplic.
n formatul cu trei arese (fig. 6.3a), aresele snt specificate explicit. Pentru o
reprezentare mai compact a instruciunilor se utilizeaz specificarea
implicit a unor arese. n acest caz, cuvntul instruciune nu conine un cmp
special pentru aresa implicit.
Dac rezultatul obinut n urma executrii unei instruciuni se epune pe aresa
unuia intre operanzi, formatul respectiv va avea numai ou arese (fig. 6.3b). P
rin
urmare, aresa rezultatului este specificat implicit. De exemplu, instruciunea
01 100 110
va impune procesorul s aune numerele in locaiile 100 i 110 i s epun
suma obinut n locaia 100. Evient, up nscrierea sumei, numrul iniial in
locaia 100 va fi suprimat.
124

S-a constatat c formatul cu ou arese, n prezent cel mai rspnit, permite scrierea 
e programe avn un numr e instruciuni comparabil cu cel obinut atunci cn s-ar utili
za mai multe arese.
Formatul cu o singur ares (fig. 6.3c) se utilizeaz n calculatoarele procesorul crora
inclue un registru special, enumit acumulator. n acumulator se
pstreaz primul operan i se epune rezultatul executrii operaiei respective.
Prin urmare, aresa primului operan i aresa rezultatului snt specificate implici
t. De exemplu, instruciunea cu o singur ares
01 100
va auna numrul in acumulator cu numrul in locaia 100, iar suma obinut va
fi epus n acumulator. Respectiv, numrul iniial in acumulator va fi suprimat.
Instruciunile cu o singur ares snt eficiente in punctul e veere al lungimii cuvnt
ului i al rapiitii calculatorului. Totui un program scris cu instruciuni avn o singu
r ares va conine mai multe instruciuni ect n cazul n care se folosesc instruciuni c
ou sau trei arese.
Menionm c toate calculatoarele moerne pot avea instruciuni e iferite
formate. Informaia referitoare la formatul fiecrei instruciuni se inic n cmpul Coul
instruciunii.
ntrebri i exerciii
Enumerai formatele instruciunilor utilizate n calculatoarele moerne. Explicai moul
e specificare implicit a unor arese.
Explicai semnificaia cmpurilor instruciunilor cu trei sau ou arese.
Cum se specific aresele operanzilor i ale rezultatului n cazul instruciunilor
cu o singur ares?
Explicai cum vor fi executate urmtoarele instruciuni cu trei arese:
a) 01 200 201 202;
c) 03 100 150 250;
b) 04 202 201 200;

) 02 250 300 310.


Operaiile aritmetice i logice snt coificate ca i n exemplul in paragraful
e fa.
Care va fi coninutul locaiei 100 up executarea instruciunii
01 200 300 100,
ac n locaiile 200 i 300 snt nscrise numerele 17 i, respectiv, 31?
Explicai cum vor fi executate urmtoarele instruciuni cu ou arese:
a) 01 200 201;
c) 03 100 150;
b) 04 202 201;

) 02 250 300.
Care va fi coninutul locaiei 200 up executarea instruciunii
01 200 100,
ac n locaiile 100 i 200 snt nscrise numerele 18 i, respectiv, 32?
125

Explicai cum vor fi executate urmtoarele instruciuni cu o singur ares:


a) 01 100;
c) 02 400;
b) 03 200;
) 04 150.
Care va fi coninutul acumulatorului up executarea instruciunii
01 100,
ac iniial n locaia 100 era nscris numrul 12, iar n acumulator numrul 26?
Care snt avantajele i ezavantajele formatelor cu trei, ou sau cu o singur
ares?

6.3. Tipuri e instruciuni


Instruciunile unui calculator se mpart n patru grupe:
instruciuni operaionale, care efectueaz operaii aritmetice i logice asupra
atelor specificate prin operanzi;
instruciuni e transfer, care eplaseaz informaia ntre registre i/sau locaii fr a m
ca informaia transferat;
instruciuni e salt, care n urma verificrii unor coniii, moific analiza i
execuia secvenial a instruciunilor in program;
instruciuni e intrare-ieire care permit comunicarea calculatorului cu exteriorul.
Instruciunile operaionale prelucreaz atele pstrate n locaiile memoriei interne i n r
strele procesorului. Cele mai cunoscute instruciuni ale acestei grupe snt cele car
e efectueaz operaiile aritmetice e baz: aunarea, scerea, nmulirea i mprirea.
Instruciunile logice e tipul I, SAU, NU snt instruciuni operaionale care
acioneaz asupra poziiilor iniviuale ale informaiei binare. n categoria instruciunilo
r operaionale ntlnim i instruciuni e tipul: terge coninutul unei
locaii sau al unui registru, complementeaz coninutul unei locaii, crete cu o
unitate coninutul unui registru etc. n fine, n categoria instruciunilor operaionale sn
t incluse instruciunile e eplasare a informaiei, n care partea e ares a instruciu
nii conine un numr ntreg, care specific numrul poziiilor cu
care se face eplasarea.
Instruciunile e transfer eplaseaz informaia intre locaiile memoriei
interne, ntre registre sau ntre locaii i registre fr a altera coninutul informaiei tr
ferate. Instruciunea trebuie s specifice explicit sau implicit aresasurs i aresa 
e estinaie a transferului. n timpul transferului i up transfer, informaia in surs r
e neschimbat. Cele mai uzuale instruciuni ale
acestei grupe snt cele prin care coninutul unei locaii trece ntr-un anumit registru,
registrul acumulator, precum i instruciunea e transfer invers: intr-un
registru ntr-o locaie a memoriei interne.
Instruciunile e salt se utilizeaz pentru moificarea orinii e execuie a
instruciunilor. n mo normal, instruciunile unui program snt analizate i execu126

tate n mo secvenial, n orinea n care snt aezate n memorie. Aceast orine
poate fi schimbat cu ajutorul instruciunilor e salt coniionat sau neconiionat.
Instruciunile e salt coniionat permit alegerea continurii programului pe o
anumit ramur, n funcie e o coniie e test realizat. Folosirea instruciunilor e salt
coniionat au posibilitate utilizatorului s introuc ecizii logice n
procesul execuiei programului.
O instruciune e salt neconiionat conine, n partea e ares, aresa instruciunii care
va fi executat n continuare.
Instruciunile e intrare-ieire permit comunicarea calculatorului cu echipamentele
periferice. Echipamentul cu care se va efectua operaia e intrare-ieire se specifi
c n partea e ares a instruciunii. De regul, instruciunile e
acest tip conin att informaii legate e natura schimbului e ate, aic introucerea
sau extragerea lor, ct i comenzi necesare funcionrii corecte a periferiei.
Tot n aceste instruciuni se specific i registrele sau locaiile n care vor fi epuse sa
u in care vor fi luate atele respective.

ntrebri i exerciii
Cum se clasific instruciunile unui calculator? Care este estinaia instruciunilor i
n fiecare grup?
Dai cteva exemple e instruciuni operaionale. Estimai numrul instruciunilor operaio
posibile.
Care este estinaia instruciunilor e transfer? Estimai numrul instruciunilor posibil
e e transfer.
Cn i cum se utilizeaz instruciunile e salt? Care coniii e test pot fi analizate 
e aceste instruciuni?
Care este estinaia instruciunilor e intrare-ieire? Ce informaii conin aceste instru
ciuni?
6.4. Limbajul co calculator i limbajul e asamblare
Pentru a rezolva o problem, n memoria calculatorului trebuie s fie ncrcate programul
respectiv i atele e prelucrat. Instruciunile programului i
atele e prelucrat se nmagazineaz n memoria intern sub forma unor succesiuni e cif
re binare pe care ispozitivul central e coman le poate extrage
i interpreta.
Programele reprezentate n form e succesiuni binare irect executabile e calculat
or se numesc programe n limbaj co calculator sau
programe n limbaj main.
Pentru utilizator programul n co calculator poate fi prezentat n form e
iruri e cifre binare sau, mai compact, e cifre octale, zecimale sau hexazecimal
e organizate pe locaii ale memoriei.
127

Elaborarea programelor n limbaj co calculator este un lucru extenuant i ineficien


t. Pentru a simplifica procesul e elaborare a programelor, s-a convenit ca
instruciunile s fie scrise ntr-un limbaj simbolic, enumit limbaj e asamblare. n ac
est limbaj courile instruciunilor se reprezint printr-un grup e caractere, astfe
l ales nct s sugereze ct mai bine natura operaiei. Acest grup e caractere, e regul t
rei, este cunoscut sub numele mnemonica instruciunii.
De exemplu, courile instruciunilor calculatorului ipotetic in paragraful prece
ent pot fi notate simbolic conform tabelului 6.1.
Mnemonica instruciunilor
Co
instruciune
01
02
03
04
05
06
07
Mnemonica
INC
MEM
ADU
SCD
SLT
SLTC
STP
Tabelul 6.1
Semnificaia
ncarc acumulatorul
Memoreaz acumulatorul
Aunare
Scere
Salt neconiionat
Salt coniionat
Stop

Aresele locaiilor memoriei interne pot fi specificate prin enumiri simbolice


alese e utilizator, enumiri care sugereaz semnificaia coninutului locaiilor
respective.
De exemplu, locaia 185, n care se va pstra numrul x, poate fi notat prin X,
locaia 213 pentru numrul y se va nota prin Y, locaia 200, n care va fi epus
suma x + y, se va nota prin S. n limbajul e asamblare fragmentul e program
pentru aunarea numerelor x i y va avea forma:
INC X
ADU Y
MEM S.
n general, exist o coresponen irect ntre scrierea instruciunii n limbajul e asambl
i scrierea n limbajul co calculator, ceea ce face uoar translatarea (traucerea) l
imbajului e asamblare n limbajul co calculator.
Translatarea const n nlocuirea mnemonicii instruciunii i a areselor
simbolice prin irurile binare respective. Aceast nlocuire este fcut e
un program special, enumit program e asamblare sau asamblor.
Limbajele co calculator i e asamblare snt limbaje epenente e calculator. Acea
st epenen const n faptul c formatul, courile i mnemonica instruciunilor exprim st
ra intern a calculatorului. Programele elaborate n aceste limbaje snt cele mai scur
te i rapie, ns procesul e programare necesit un mare volum e munc. Simplificarea p
rocesului e programare se asigur prin utilizarea limbajelor inepenente e calc

ulator (FORTRAN,
128

BASIC, PASCAL, C etc.), n care operaiile e prelucrare i tipurile e ate nu


snt legate e echipamentele calculatorului. ns, cu regret, etaarea utilizatorului 
e structura intern a calculatorului iminueaz eficacitatea programelor
respective.
ntrebri i exerciii
Care este iferena intre limbajul co calculator i limbajul e asamblare?
Cum se exprim courile instruciunilor i aresele locaiilor ntr-un limbaj e
asamblare?
Care este estinaia i cum se realizeaz translatarea programelor scrise ntr-un
limbaj e asamblare?
Se consier c enumirea simbolic X semnific locaia 100, enumirea Y
locaia 101, iar enumirea S
locaia 102. Exprimai n limbajul e asamblare
(vezi tabelul 6.1) urmtoarele programe:
a) 01 100
04 101
02 102
02 100
b) 01 100
02 100
03 100
c) 01 101
04 100
02 102

)
03
03
03
02

01 101
101
101
101
102

e)
02
03
02

01 100
101
101
100

f)
01
02
01
02

100
102
101
100

Care va fi coninutul locaiilor 100, 101 i 102 pn i up execuia fiecrui


program?
Se consier c enumirile simbolice X, Y i S specific, respectiv, locaiile 100,
200 i 300. Translatai urmtoarele programe scrise n limbajul e asamblare:
a) INC
SCD
MEM
INC
X
Y
S
Y
b) INC X

INC X
SLTC S
STP
c) INC Y
ADU X
MEM S
STP

) INC
ADU
ADU
ADU
MEM
Y
Y
Y
Y
S
e) INC
MEM
INC
MEM
INC
f)
X
S
Y
X
X
INC
MEM
INC
MEM
INC
X
S
Y
X
S
Explicai cum va fi executat fiecare program.
Care este iferena intre limbajele epenente i limbajele inepenente e
calculator? Care snt avantajele i ezavantajele fiecrui limbaj?
129

6.5. Resursele tehnice i resursele programate


ale calculatorului
Numrul total al instruciunilor unui calculator epine, n primul rn, e
capacitatea lui. n cazul unui sistem mare e calcul acest numr poate epi
1000, pe cn la calculatoarele foarte mici el nu este mai mare ect 100. O anumit o
peraie poate fi efectuat la unele calculatoare cu o singur instruciune, pe
cn aceeai operaie, n alte calculatoare, pentru care nu exist o instruciune
specific, este efectuat cu ajutorul unei succesiuni e alte instruciuni existente.
Operaiile efectuate intern e ctre componentele electronice ale calculatorului snt
cunoscute ca operaii implementate prin echipamente, pe cn operaiile efectuate cu a
jutorul unei secvene e instruciuni snt cunoscute ca operaii implementate prin progr
am. De exemplu, operaia e extragere a rcinii ptrate ntr-un anumit calculator poate
fi efectuat prin echipament electronic, n alt calculator printr-un subprogram. Del
imitarea intre implementarea prin echipamente i program epine e calculator. n
figura 6.4 este prezentat o astfel e elimitare n cazul unui calculator cu posibi
liti meii.
Fig. 6.4. Delimitarea ntre implementarea prin echipamente i prin program
Operaiile implementate prin echipamente se efectueaz prin execuia unei singure inst
ruciuni, pe cn o operaie implementat prin program necesit execuia
mai multor instruciuni. Prin urmare, operaiile implementate prin echipamente
se efectueaz mai rapi, ns calculatorul respectiv este mai complex i, n consecin, mai
cump. Din contra, operaiile implementate prin program se efectueaz
mai lent, ns calculatoarele respective snt mai simple i, evient, mai ieftine.
Din analiza principiilor e funcionare a procesorului rezult c toate echipamentele
unui calculator evin inutile n absena programelor care guverneaz
efectuarea operaiilor necesare pentru rezolvarea unei probleme. Exact n acelai
mo, programele snt fr niciun folos n absena echipamentelor numerice res130

pective. Prin urmare, utilizarea tehnicii e calcul este posibil numai n prezena
att a echipamentelor, enumite resurse tehnice, ct i a programelor respective,
enumite resurse programate.
Resursele tehnice ale unui sistem e calcul moern inclu procesorul, memoria in
tern, unitile e memorie extern, echipamentele e intrare-ieire etc.
Resursele programate vor inclue subprogramele care realizeaz operaiile
implementate prin program, programele care simplific accesul la unitile e
intrare-ieire, asambloarele, eitoarele e texte, compilatoarele limbajelor algor
itmice i, evient, programele elaborate e fiecare utilizator.
Menionm c n literatura e specialitate resursele tehnice uneori snt enumite prin cuvn
tul englez harware ( prouse e metal ), iar resursele programate
prin cuvntul softw
are ( prouse moi ). Respectiv, implementarea prin echipamente se numete implementare
prin harware, iar implementare prin program implementare prin software.
ntrebri i exerciii
De ce epine numrul total al instruciunilor unui calculator?
Cum se efectueaz operaiile n cazurile implementrii prin echipamente i n
cele ale implementrii prin program?
Analizn repertoriul instruciunilor calculatorului la care lucrai vs., eterminai c
um snt implementate urmtoarele operaii:
nmulirea i mprirea numerelor binare;
aunarea i scerea numerelor cu virgul mobil;
nmulirea i mprirea numerelor cu virgul mobil;
extragerea rcinii ptrate;
calcularea funciilor trigonometrice.
Care snt avantajele i ezavantajele implementrii prin echipamente? Dar ale
implementrii prin program?
Numii resursele tehnice i resursele programate ale unui sistem e calcul. Care
snt resursele respective n cazul calculatorului la care lucrai vs.?
6.6. Memorii externe pe benzi i iscuri magnetice
Principiul e funcionare a memoriilor examinate const n nregistrarea informaiei pe un
strat magnetic, aflat n micare. Stratul magnetic este epus pe
un suport neutru, acesta fiin, e regul, o ban e material plastic sau un isc
e aluminiu. n calitate e strat magnetic se folosete mai frecvent oxiul e fier
sau pelicule metalice subiri e cobalt-nichel cu epunere n vi.
nregistrarea sau citirea informaiei se efectueaz cu ajutorul unui cap magnetic, rep
rezentat n figura 6.5.
Capul const intr-un miez, e regul in tole (foie) e permalloy foarte subiri (0,05
mm) i o nfurare.
131

Fig. 6.5. Cap magnetic pentru nscrierea i citirea informaiei

ntr-un strat magnetic nenregistrat, cmpurile magnetice ale particulelor


e oxi e fier snt orientate haotic, anulnu-se reciproc. Pentru a nregistra cifra
binar 0 sau 1, prin nfurarea capului magnetic se trece impulsul
respectiv e curent. Impulsul care traverseaz nfurarea creeaz n ntrefier un cmp magne
intens care magnetizeaz stratul aflat n momentul
actual sub cap. Direcia e magnetizare, eci informaia binar nscris, epine e ireci
a curentului n nfurarea capului magnetic. n figura 6.6
este prezentat un exemplu e nregistrare a informaiei binare 101101 pe un
strat magnetic aflat n micare.
Distana b etermin lungimea poriunii necesare pentru a memora o cifr binar. Valoarea
lui b epine e viteza e micare a suportului, e proprietile
fizice ale stratului magnetic, e elementele constructive ale capului magnetic e
tc.
Numrul e elemente e memorie binar pe unitatea e lungime a
suportului se numete ensitatea e nregistrare a informaiei.
n cazul nregistrrilor magnetice ensitatea este at e mrimea 1/b. Valorile practice
variaz up tipul ispozitivului e memorare i firma constructoare, fiin e orinul
sutelor i miilor e bii pe milimetru e lungime a suportului.
n timpul operaiei e citire cmpul magnetic al particulelor e oxi e fier,
trecn prin reptul ntrefierului (fig. 6.5), inuce n nfurarea capului magnetic un sem
nal e orinul 10 3 voli. Acest semnal este amplificat i transformat n
semnal-stanar care reprezint cifra binar respectiv 0 sau 1.
n marea lor majoritate memoriile externe pe ban magnetic reprezint
echipamente periferice autonome care transfer informaia spre/e la memoria intern 
up receptarea comenzilor corespunztoare e la procesorul calculatorului.
O unitate e memorie pe ban magnetic (fig. 6.7) inclue mecanismul e antrenare a
benzii, ispozitivul e scriere-citire i circuitele e coman aferente.
132

Fig. 6.6. Starea stratului magnetic pn (a) i up nregistrare (b)


O operaie e citire sau scriere se realizeaz n timpul eplasrii benzii. ntre
ou operaii succesive bana este oprit. Evient, informaiile nregistrate pot
fi citite numai n orinea amplasrii lor fizice pe ban. Datorit acestui fapt,
unitile e ban magnetic snt enumite uniti e memorie extern cu acces secvenial.
Timpul necesar pentru selectarea unei informaii in multituinea
atelor memorate pe un suport se numete timp e acces.
Timpul e acces al unitii e ban magnetic epine e viteza benzii i e
locul amplasrii informaiei e citit: la nceputul, la sfritul sau la mijlocul benzii. n
cazul informaiilor nregistrate la sfritul benzii, timpul e acces este e
orinul minutelor.
Capacitatea e memorare a unei benzi magnetice epine e ensitatea
nregistrrii, numrul e piste, lungimea benzii i are valori e orinul 108 octei.
Fig. 6.7. Unitate e ban magnetic
133

Din cauza timpului mare e acces i capacitatea e memorie relativ mic,


benzile magnetice se utilizeaz, n general, numai pentru arhivarea informaiei.
Unitatea e iscuri magnetice reprezint la etapa actual cea mai rspnit memorie exter
n a calculatoarelor numerice. Suportul informaiei este format intr-un pachet e 
iscuri, care poate fi fix sau amovibil, rotit cu o vitez e
orinul miilor e turaii pe minut. Discurile snt acoperite cu un strat e material
feromagnetic. Informaia este nregistrat pe ambele fee e-a lungul unor piste
concentrice. Pentru aceasta fiecare fa este explorat n plan orizontal e ctre
un cap magnetic mobil (fig. 6.8).
Fig. 6.8. Unitate e iscuri cu capete mobile
Capetele snt montate pe un bra extensibil i acionate e un mecanism pentru a ajunge n
reptul pistei selectate.Toate capetele unei uniti e memorie cu
iscuri snt poziionate simultan.
Timpul e acces al unitii e iscuri se compune in timpul necesar eplasrii ansamb
lului e capete magnetice e pe cilinrul curent pe cilinrul inicat
i in timpul necesar ca sectorul respectiv al iscului s ajung n reptul capului
magnetic. n practic se utilizeaz timpul meiu e acces, care pentru unitile
e isc moerne este e orinul 10 3 secune.
Amintim c n calculatoarele e performan se utilizeaz uniti e iscuri cu
capete magnetice fixe
cte un cap magnetic pentru fiecare pist. Aceste uniti
asigur un timp e acces e orinul 10 4 secune, ns snt foarte scumpe.
Pentru schimbul e informaii ntre calculatoare se utilizeaz iscuri singulare
in material plastic, enumite iscuri flexibile sau ischete. Aceste iscuri snt
ncorporate ntr-o caset in plastic sau n plicuri speciale. Organizarea fizic a
134

informaiei este aceeai ca i n cazul pachetelor e iscuri, ns unitile respective snt


mai simple i, evient, mai ieftine. Pentru a le eosebi e iscurile
flexibile, iscurile convenionale ale calculatoarelor personale snt enumite iscu
ri rigie, har iskuri sau wincestere.
Capacitatea e memorare a iscurilor magnetice epine e numrul e suprafee ale p
achetului, numrul e cilinri i ensitatea e nregistrare. La momentul
actual este obinut capacitatea e orinul 1012 octei pentru un pachet e iscuri.
ntrebri i exerciii

Cum snt reprezentate cifrele binare 0 i 1 n nregistrrile magnetice?


Care este estinaia capului magnetic?
De ce epine ensitatea e nregistrare magnetic a informaiei?
Cum se citete informaia nregistrat pe un strat magnetic?
Explicai cum funcioneaz unitatea e memorie pe ban magnetic in figura 6.7.
De ce epine capacitatea e memorare a unei benzi magnetice?
O ban magnetic are lungimea e 750 e metri. nregistrarea informaiei se
efectueaz pe 8 piste plus pista bitului e paritate. Capacitatea e memorare a
benzii este 47 Megaoctei. Determinai ensitatea e nregistrare.
Viteza benzii magnetice este 2 m/s. n rola ebitoare (Big. 6.7) snt 750 m e
ban. Determinai timpul e acces la informaia e la mijlocul benzii.
Cum funcioneaz o unitate e iscuri cu capete mobile?
Cum este organizat informaia pe un pachet e iscuri magnetice?
Care este iferena intre memoriile externe cu acces irect i acces secvenial?
De ce epine timpul e acces al unitii e iscuri magnetice?
Determinai capacitatea iscului flexibil cu care lucrai vs.
Pentru unitatea e isc rigi cu care lucrai vs. eterminai:
capacitatea iscului;
timpul meiu e acces.
6.7. Memorii externe pe iscuri optice
Principiul e funcionare a memoriilor pe iscuri optice const n nregistrarea informai
ei pe un strat reflectorizant aflat n micare. Stratul reflectorizant in
aluminiu, aur sau argint este epus pe un suport transparent in mas plastic.
n funcie e moul e scriere i citire a informaiei, eosebim:
1) Discuri optice numai pentru citire. Informaia pe astfel e iscuri se nscrie e
fabricant i nu poate fi moificat e utilizator. Abrevierea englez a
acestor iscuri este CD-ROM (Compact Disc
Rea Only Memory).
2) Discuri optice inscriptibile. Informaia pe astfel e iscuri se nscrie e
utilizator o singur at, n continuare iscul fiin isponibil numai pentru citire.
Abrevierea englez a acestor iscuri este CD-R (Compact Disc
Recorable).
135

3) Discuri optice reinscriptibile. Discurile n cauz permit mai multe cicluri


e scriere/tergere a informaiei. Abrevierea acestor iscuri este CD-RW (Compact Di
sc ReWritable).
Pentru a asigura compatibilitatea unitilor e citire, formatul atelor i imensiuni
le iscurilor optice snt stanarizate. n figura 6.9 este reprezentat
structura iscului optic numai pentru citire estinat publicului larg.
Fig. 6.9. Structura iscului optic CD-ROM: a
poziionarea pistelor
pe isc; b
seciune a iscului perpenicular pe piste
nregistrarea cifrelor binare pe astfel e iscuri const intr-o succesiune e
ancituri (n limba englez pit) realizate pe una intre suprafeele iscului. Aceste a
ncituri snt esprite e mici pauze i snt plasate pe suprafaa iscului sub
forma unei piste n spiral.
Dimensiunile anciturilor snt e orinul unui micron (1 micron = 10 3 milimetri), i
stana intre spire este e 1,6 microni, lungimea spiralei fiin e 5 300
e metri. Discul conine 20 000 e piste (spire) pe care se afl circa 6 109 adncitur
i. Capacitatea de memorare a discului este de 640 Megaoctei.
Citirea discului optic se realizeaz cu ajutorul unui fascicul de lumin care, dup
ce se reflect de suprafaa activ, este interceptat de o celul fotosensibil (fig. 6.10)
.
Parcurgnd pistele respective, fasciculul laser este reflectat cnd stratul reflecto
rizant se afl n punctul de focalizare i nereflectat n caz contrar. Cu alte
cuvinte, adnciturile de pe suprafaa activ a discului optic schimb (moduleaz)
intensitatea fasciculului reflectat. n consecin, la ieirea celulei fotosensibile se
136

Fig. 6.10. Citirea discurilor optice

formeaz un semnal care red succesiunea de cifre binare 0, 1 nregistrat pe disc


la etapa fabricrii.
n unitile de disc optic moderne sursa de lumin
laserul i celula fotosensibil
fotodi
se realizeaz ntr-un dispozitiv integral, denumit cap optic de citire. Viteza ungh
iular a discului este de 200 600 de turaii pe minut, iar viteza
liniar este de 1,4 m/s. n pofida vitezelor foarte mari, discul optic practic nu se
uzeaz, ntruct ntre capul optic i disc nu exist un contact mecanic direct. Prin
urmare, durata de exploatare a unui disc CD-ROM este determinat de calitatea
stratului reflectorizant i a stratului de protecie. n cazul utilizrii aluminiului,
din cauza oxidrii, stratul reflectorizant se ntunec, reducnd astfel viaa unui disc
optic la 10 15 ani. n cazul unui strat reflectorizant din aur numai o aciune violent
care ar distruge stratul protector ar putea afecta calitatea unui disc optic.
De regul, discurile optice CD-ROM se utilizeaz pentru tirajarea sistemelor
de operare, mediilor de programare, enciclopediilor, jocurilor electronice i a al
tor
informaii destinate unui numr foarte mare de utilizatori.
Structura discurilor optice inscriptibile i reinscriptibile este redat
n figura 6.11.
Din figur se observ c discurile examinate conin un strat special, denumit
strat de nregistrare. n cazul discurilor inscriptibile acest strat este format
dintr-un material organic
cyanin sau phtalocyanin care se ntunec la nclzire.
Fig. 6.11. Structura discurilor optice inscriptibile i reinscriptibile
137

nregistrarea informaiei se realizeaz cu ajutorul unui fascicul laser foarte puterni


c care nnegrete poriunile respective ale stratului de nregistrare.
La citire, poriunile ntunecate blocheaz trecerea fasciculului laser spre stratul re
flectorizant, modificnd astfel intensitatea luminii captate de celula fotosensibi
l (fig. 6.10). ntruct fasciculul laser folosit la citire este foarte slab, discul
inscriptibil poate fi citit de mai multe ori fr a distruge informaia nregistrat.
n cazul discurilor reinscriptibile materialul din care este format stratul de
nregistrare devine din nou transparent dac este nclzit pn la o temperatur
special, denumit temperatur critic. Evident, dup tergere, pe discul reinscriptibil pot
fi nscrise date binare noi. Discurile moderne CD-RW suport pn la
10 000 de cicluri de scriere/tergere.
Neajunsul comun al discurilor inscriptibile i reinscriptibile este faptul c ele
snt mult mai sensibile la temperatur, durata lor de exploatare fiind mai mic
dect a discurilor CD-ROM. Aceste discuri snt i mai scumpe, ntruct pentru o
citire sigur stratul reflectorizant este realizat din aur sau argint.
De obicei, discurile optice CD-R i CD-RW se utilizeaz pentru difuzarea informaiilor
operative unui cerc bine determinat de utilizatori
baze de date, pachete
specializate de programe, rapoartele unor congrese importante, tablourile unei
expoziii, documente multimedia etc.
Menionm faptul c realizrile tehnologice din ultimul deceniu au condus la
apariia discurilor optice de tipul DVD (Digital Versatile Disc
Disc Digital Multi
funcional). Capacitatea unui disc DVD este de aproape apte ori mai mare dect
a unui disc de tipul CD.
ntrebri i exerciii

138
Cum snt reprezentate cifrele binare 0, 1 n nregistrrile optice?
Care este capacitatea de memorare a unui disc optic?
Cum se nregistreaz informaia pe un disc optic CD-ROM ?
De ce depinde capacitatea de memorare a unui disc optic?
E cunoscut faptul c lungimea spiralei pe care se nregistreaz informaia unui
disc optic este de 5300 m. Capacitatea de memorare a discului este de 640 Megaoc
tei. Determinai densitatea de nregistrare a informaiei pe discul optic.
Care este domeniul de utilizare a discurilor CD-ROM ?
De ce depinde timpul de acces la informaiile de pe un disc optic?
Viteza liniar a discului optic este de 1,4 m/s. Cunoscnd densitatea de nregistrare
a informaiei d = 128 Koctei/m, determinai viteza de transmisie a
datelor de la unitatea de disc la unitatea central. Amintim c viteza de transmisie
a datelor se msoar n bii, Kbii sau Mbii pe secund.
Pe cele 20 000 de piste (spire) ale unui disc optic snt nregistrai circa 640 de
Megaoctei. Ct informaie conine o singur pist a discului optic?
Pe un disc CD-ROM snt nregistrate n form binar circa 74 de minute de
muzic. Determinai ct informaie va conine un cntec cu durata de 4 minute
i 30 de secunde. Cte piste va ocupa cntecul respectiv?

Cum se citete informaia de pe un disc optic? Care este destinaia capului optic
de citire?
Explicai destinaia straturilor unui disc optic inscriptibil. Cum se realizeaz
nregistrarea informaiei pe discul n cauz?
De ce depinde durata de exploatare a unui disc CD-ROM ? Dar a discurilor
CD-R i CD-RW ?
Cum se nregistreaz i se terge informaia de pe un disc optic reinscriptibil?
Care este domeniul de utilizare a discurilor CD-R i CD-RW ?
Aflai parametrii tehnici ai unitii de disc optic cu care este dotat calculatorul
dvs. Memorizai regulile de exploatare a discurilor i a unitilor de memorie
extern pe discuri optice.
6.8. Vizualizatorul i tastatura
Vizualizatorul este un dispozitiv de ieire prin intermediul cruia informaia
este prezentat utilizatorului pe ecranul unui tub catodic. Schema funcional a
vizualizatorului este prezentat n figura 6.12.
Fig. 6.12. Schema funcional a vizualizatorului
Ca i n cazul televizoarelor pentru publicul larg, imaginea pe ecranul tubului
catodic se formeaz din puncte. Punctele snt activate de un fascicul de electroni.
Culoarea i luminana fiecrui punct este controlat de semnale video, aplicate la
intrrile corespunztoare ale tubului catodic. Parcurgerea punctelor ntr-o ordine
prestabilit, de regul, pe linii de la stnga la dreapta i de sus n jos, este asigurat d
e dispozitivul de deflexie.
Fiecrui punct al ecranului i corespunde o locaie n memoria video a vizualizatorului.
Locaiile conin informaii referitoare la culoarea i luminana punctelor respective. Di
spozitivul de comand citete locaiile memoriei video n ordinea
parcurgerii punctelor de pe ecran. Coninutul fiecrei locaii este interpretat drept
o instruciune referitoare la modul de activare a punctului care i corespunde.
Semnalele video, necesare pentru comanda fasciculului de electroni, snt formate d
e convertoare numeric-analogice.
Memoria video a vizualizatorului este ncrcat de unitatea central a calculatorului. n
orice moment, calculatorul poate modifica coninutul acestei memo139

rii. n consecin, se va schimba i imaginea afiat pe ecran. Imaginile pot fi


animate prin modificarea coninutului memoriei video la frecvene utilizate n
cinematografie.
Vizualizatorul poate funciona n unul dintre cele dou regimuri: alfanumeric sau graf
ic.
n regim alfanumeric ecranul este mprit n zone convenionale, numite
zone-caracter. De regul, aceste zone formeaz 25 de linii cu 80 de caractere pe
linie. n fiecare zon poate fi afiat un singur caracter dintr-un set de 256 de
caractere. Setul de caractere este constituit din literele mari i mici ale alfabe
tului latin, cifrele zecimale, simbolurile matematice, semnele de punctuaie i unel
e
caractere semigrafice, utilizate la afiarea pe ecran a tabelelor, diagramelor, ch
enarelor etc. Fiecare zon-caracter poate avea o culoare pentru caracter i alt
culoare pentru fundal, ceea ce i permite utilizatorului s afieze pe ecran texte cu
litere de diferite culori.
n regim grafic utilizatorul poate controla afiarea pe ecran a fiecrui punct.
Numrul de puncte pe orizontal i vertical determin rezoluia vizualizatorului. De exempl
u, expresia rezoluia 640200 nseamn c vizualizatorul are 640
de puncte pe orizontal i 200 pe vertical.
Exist mai multe norme internaionale care reglementeaz rezoluia i numrul de culori ale
vizualizatoarelor. Aceste caracteristici snt recunoscute i respectate de firmele p
roductoare.
De exemplu, n cazul calculatoarelor personale cele mai rspndite snt normele denumite
E A, V A i SV A. Norma E A stipuleaz c vizualizatorul are o
rezoluie de 640350 de puncte, permind reprezentarea a 64 de culori.
Norma V A, pstrnd compatibilitatea cu E A, ofer ca faciliti suplimentare rezoluia 6404
0 de puncte i 256 de culori distincte.
n scopul mbuntirii calitii imaginii redate, norma SV A adaug rezoluia suplimentar d
8 de puncte.
Menionm c realizrile tehnologice din ultimii ani au permis nlocuirea tuburilor catodi
ce cu ecrane plate, fapt ce asigur o reducere substanial a dimensiunilor vizualizat
orului i o mbuntire semnificativ a rezoluiei imaginilor
afiate. Astfel de vizualizatoare se caracterizeaz printr-un consum redus de energi
e
i rezoluii de 19201200 de puncte.
Tastatura este un dispozitiv de intrare care transform acionarea unei taste
ntr-un cuvnt binar, accesibil echipamentelor calculatorului.
Partea electronic a unei tastaturi const dintr-un codificator. La intrrile codifica
torului se aplic semnalele logice provenite de la taste. La ieire se furnizeaz cuvi
ntele unui cod binar, de obicei standard (ISO, ACSII etc.). Unele tipuri de
tastaturi pot fi prevzute cu un generator audio, care la acionarea tastelor produc
e un sunet specific.
La noi, ca i n rile anglofone, cea mai rspndit este tastatura de tipul
QWERTY, denumirea creia provine de la amplasarea caracterelor Q, W, E, R, T
i Y n rndul de sus al tastelor alfanumerice. n rile francofone se utilizeaz
tastatura AZERTY, n ermania QWERTZ etc.
Dei locul amplasrii tastelor i numrul lor pot s difere, destinaia tastelor
este aceeai.
140

Tastatura dispune de urmtoarele grupe de taste: alfanumerice, funcionale i


speciale. rupul de taste alfanumerice include tastele cifrelor zecimale, tastel
e
caracterelor alfabetului englez, tastele simbolurilor matematice i ale semnelor
de punctuaie. rupul de taste funcionale include tastele <F1>, <F2>, ... ,<F12>.
Tastele respective nu au o destinaie prestabilit i semnificaia lor este definit
de programul care deruleaz pe calculator. Tastele speciale se utilizeaz pentru
poziionarea cursorului vizualizatorului, pentru introducerea n calculator a unor
cuvinte binare care nu au taste proprii etc.
n calculatoarele de performan, vizualizatorul i tastatura pot forma un echipament pe
riferic unitar, denumit consol. Consola utilizat de operator pentru
dirijarea proceselor de calcul se numete monitor.

ntrebri i exerciii
Explicai cum funcioneaz vizualizatorul. Care este destinaia prilor componente ale unu
vizualizator?
Cum poate fi schimbat imaginea afiat pe ecranul unui vizualizator? Cum
pot fi animate imaginile de pe ecran?
Prin ce se deosebesc regimurile de funcionare a vizualizatorului?
Care snt indicii principali de calitate ai unui vizualizator?
Determinai tipul vizualizatorului la care lucrai dvs. Aflai rezoluia i numrul de culo
i disponibile.
Care snt prile componente ale unei tastaturi? Cum se determin tipul tastaturii?
Numii grupurile de taste i destinaia lor.
6.9. Imprimantele
Imprimantele snt dispozitive de ieire care furnizeaz rezultatele sub forma
unui document tiprit. n funcie de tehnica de tiprire utilizat, imprimantele
se pot clasifica n:
imprimante mecanice, n care tiprirea se face prin acionarea unor ciocnae sau ace;
imprimantele laser, n care tiprirea se face folosind metode electrostatice ca
la mainile de copiat;
imprimantele cu jet de cerneal;
imprimantele termice, funcionarea crora se bazeaz pe utilizarea unei hrtii speciale
care i schimb culoarea n funcie de temperatur.
Principiul de funcionare a imprimantei matriciale cu ace este prezentat
n figura 6.13.
Capul de imprimare conine un grup de ace metalice subiri care la momentul
potrivit lovesc prin band tuat n foaia de hrtie. Configuraia celor ce lovesc n
fiecare moment i avansarea capului de-a lungul liniei de imprimat determin
imaginile tiprite.
141

Fig. 6.13. Principiul de funcionare a imprimantei matriciale cu ace

Imprimantele matriciale pot funciona n regim grafic i regim alfanumeric.


n regim grafic, calculatorul comand tiprirea pe hrtie a fiecrui punct aparte. Evident
, din puncte pot fi formate orice imagini: grafice, desene tehnice, caractere cu
configuraii concepute de utilizator. Imprimarea informaiei n regim grafic este len
t din cauza deplasrilor multiple ale capului de imprimare i a caracterului disconti
nuu al avansului de hrtie cu pai foarte mici.
n regim alfanumeric, calculatorul transmite imprimantei numai codurile
caracterelor de tiprit. Fiecrui cod i corespunde o imagine din puncte care se
pstreaz ntr-o memorie special a imprimantei. Imaginile respective snt tiprite prin una
sau, cel mult, dou-trei treceri ale capului de imprimare.
Imprimarea n regim alfanumeric este mult mai rapid, ns pot fi tiprite numai
caractere, imaginile crora au fost, n prealabil, nmagazinate n memoria imprimantei.
Imprimantele matriciale simple au cteva seturi de caractere, nscrise ntr-o memorie
permanent. Imprimantele matriciale mai performante permit ncrcarea prin
program a mai multe seturi de caractere cu configuraii concepute de utilizator.
E cazul s subliniem c cu ct numrul celor din capul de imprimare este mai
mare, cu att calitatea imprimrii este mai bun. n prezent se utilizeaz imprimante cu 9
sau cu 24 de ace. Calitatea imprimrii poate fi mbuntit prin tiprirea repetat (de 2-4
i) a aceluiai caracter pe acelai loc. Viteza de tiprire a
imprimantelor mecanice cu ace este de 150 500 de caractere pe minut.
Principiul de funcionare a imprimantelor laser este prezentat n figura 6.14.
Elementul principal al acestei imprimante este un tambur acoperit cu un strat
semiconductor care i poate schimba proprietile electrice sub aciunea luminii.
Mai nti, suprafaa tamburului se electrizeaz. Cu ajutorul razelor laser pe suprafaa el
ectrizat a tamburului se proiecteaz punctele imaginii de tiprit. ntruct sectoarele ca
re au fost luminate i schimb conductibilitatea, sarcinile electrice respective se n
eutralizeaz. Prin urmare, pe suprafaa tamburului se formeaz o imagine electric ascun
s. Developarea imaginii se efectueaz cu ajutorul unor particule de pulbere colorat,
atrase de sectoarele electrizate ale tamburului. Imaginile de pe tambur se tran
sfer pe hrtie i se fixeaz prin topirea
particulelor de pulbere.
142

Fig. 6.14. Principiul de funcionare a imprimantei laser


n continuare, toate sarcinile electrice de pe suprafaa tamburului snt neutralizate,
iar resturile de pulbere snt curate.
Imprimantele laser snt cele mai bune dintre imprimantele moderne. Textele i
grafica tiprite la aceste imprimante nu se deosebesc de cele tipografice. Viteza
de
tiprire este de 5-15 pagini pe minut.
Imprimantele cu jet de cerneal formeaz punctele unei imagini din picturi microscopi
ce pulverizate pe hrtie de nite ajutaje speciale. Ele asigur o calitate foarte bun a
tiparului i snt utilizate pentru imprimarea color. Aceste
imprimante snt mai scumpe dect imprimantele cu ace i necesit o ngrijire tehnic deosebi
t.
Imprimantele termice utilizeaz o matrice de ace a cror nclzire selectiv
este determinat n funcie de caracterul ce urmeaz a fi tiprit. Viteza de imprimare est
e relativ mic, circa 300 de rnduri pe minut, ns avantajul principal
const n dimensiunile reduse ale imprimantei.
ntrebri i exerciii
Cum se clasific imprimantele n funcie de tehnica de tiprire?
Care snt prile componente ale unei imprimante?
Care este principiul de funcionare a imprimantei matriciale cu ace? Cum funcioneaz
aceast imprimant?
Explicai cum funcioneaz o imprimant laser. Care este avantajul principal al
acestei imprimante?
Determinai tipul imprimantei cu care lucrai dvs. Aflai parametrii tehnici ai
imprimantei: setul de caractere, regimurile de funcionare, capacitatea memoriei-t
ampon, viteza de imprimare.
143

6.10. Clasificarea calculatoarelor


Caracteristica general a unui calculator include urmtoarele date:
viteza de operare;
capacitatea memoriei interne;
componena, capacitatea i timpul de acces ale unitilor de memorie extern;
componena i parametrii tehnici respectivi ai echipamentelor periferice;
parametrii de mas i gabarit;
costul.
n funcie de aceste date, calculatoarele moderne se clasific n 4 categorii:
supercalculatoare;
calculatoare mari (macrocalculatoare);
minicalculatoare;
microcalculatoare (calculatoare personale).
Supercalculatoarele pot executa peste 10 15 (1000 bilioane) de operaii pe
secund, iar preul lor depete 20 de milioane de dolari. Cercetri i proiectri n
industria supercalculatoarelor se realizeaz n SUA i Japonia de firmele IBM,
ray Research, Fujitsu ETA Systems, Sutherland etc. Supercalculatoare se utilize
az n prelucrri extrem de complexe ale datelor n aeronautic, fizica nuclear, astronauti
c, seismologie, prognoza meteo etc.
Calculatoarele mari (n englez mainframe dulapul principal ) pot executa sute de bili
oane de operaii pe secund (1 bilion = 1012), preul variind ntre 20
de mii i cteva milioane de dolari. Schema-bloc a calculatoarelor date este prezent
at n figura 6.2. De regul, calculatoarele mari includ zeci de uniti de disc
magnetic i imprimante, sute de console aflate la diferite distane de unitatea
central. Aceste calculatoare se utilizeaz n cadrul unor mari centre de calcul i
funcioneaz n regim non-stop. Principalele firme productoare de calculatoare
mari snt IBM, Hitachi, Amdahl, Fujitsu etc.
Minicalculatoarele efectuau sute de milioane de operaii pe secund, iar preul
lor nu depea 200 300 mii de dolari. Echipamentele periferice ale unui minicalculator
includeau cteva discuri magnetice, una sau dou imprimante, mai multe console. Mini
calculatoarele erau mai uor de utilizat i operat dect calculatoarele mari i se utili
zau n proiectarea asistat de calculator, n automatizri industriale, pentru prelucrar
ea datelor n experimentele tiinifice etc. Dintre firmele ce produceau minicalculato
are vom remarca IBM, Wang, Texas Instruments, Data eneral, DEC, Hewlett-Packard
etc. n prezent minicalculatoarele au fost nlocuite de calculatoarele personale.
Microcalculatoarele, denumite i calculatoare personale, snt realizate la
preuri sczute
ntre 100 i 15 000 de dolari i asigur o vitez de calcul de
ordinul miliardelor de operaii pe secund. Schema-bloc a unui calculator personal e
ste prezentat n figura 6.2.
De obicei, echipamentele periferice ale unui microcalculator includ o unitate de
disc
rigid, o unitate de disc flexibil, o unitate de disc optic, o imprimant i o consol.
Structura modular i gruparea tuturor echipamentelor n jurul unei magistrale permit
e configurarea microcalculatorului n funcie de necesitile individuale ale fiecrui uti
lizator.
Corporaii care produc microcalculatoare exist n foarte multe ri, ns lideri
mondiali, unanim recunoscui, snt firmele IBM, Apple, Hewlett-Packard, Dell etc.
144

ntrebri i exerciii
Numii parametrii mai semnificativi ai unui calculator. Determinai parametrii
respectivi ai calculatorului cu care lucrai dvs.
Cum se clasific calculatoarele n funcie de parametrii tehnici i economici?
Dai o caracteristic succint a fiecrei categorii de calculatoare: supercalculatoare,
calculatoare mari, minicalculatoare i microcalculatoare.
Folosind un server de cutare, gsii n Internet informaii detaliate despre
principalii productori de calculatoare personale.
6.11. Microprocesorul
Microprocesorul este un circuit integrat care implementeaz funciile unitii centrale
de prelucrare a informaiei, i anume
extragerea i executarea
instruciunilor.
De regul, un microprocesor conine un dispozitiv aritmetic i altul de comand, un grup
de registre, destinate pstrrii temporale a datelor frecvent utilizate,
magistralele i circuitele de comand aferente (Big. 6.15).
Fig. 6.15. Schema funcional a unui microprocesor
Microprocesorul interacioneaz cu unitile de memorie i echipamentele periferice prin i
ntermediul a trei magistrale: Date, Adrese i Comenzi. Traficul de
informaii prin magistrale este controlat de circuitul Comand de magistral.
Extragerea i executarea instruciunilor are loc sub controlul dispozitivului centra
l de comand. Pentru aceasta, prin magistrala de adrese se indic adresa locaiei memo
riei interne, iar prin magistrala de comenzi se transmit semnalele necesare
de scriere sau citire. Datele citite sau scrise se transmit prin magistrala de d
ate.
Microprocesoarele se apreciaz dup urmtorii parametri:
lungimea cuvntului;
frecvena ceasului de sistem;
capacitatea magistralelor.
145

Lungimea cuvntului reprezint numrul de bii ai succesiunilor binare care


pot fi memorizate n registre i prelucrate de dispozitivul aritmetic al microproces
orului. Microprocesoarele moderne au lungimea cuvntului de 32, 64 i mai muli bii.
Frecvena ceasului de sistem reprezint numrul de impulsuri pe secund
pe care le produce generatorul de impulsuri de tact din componena dispozitivului
de comand. Frecvena ceasului de sistem se msoar n Megahertz (1 MHz =
= 106 Hz). ntruct impulsurile de tact sincronizeaz executarea microoperaiilor
n toate dispozitivele microprocesorului, frecvena ceasului de sistem caracterizeaz
rapiditatea microprocesorului.
Capacitatea magistralei reprezint numrul de bii ai succesiunilor binare
transmise prin magistral. De obicei, capacitatea magistralei de date este egal
sau mai mare dect lungimea cuvntului microprocesorului. n caz contrar, pentru a
transmite un cuvnt, snt necesare mai multe cicluri ale magistralei de date.
Capacitatea magistralei de adrese determin spaiul de adrese care pot fi
accesate direct de microprocesor. Astfel, un microprocesor avnd capacitatea magis
tralei de adrese de 16 bii poate accesa 216 locaii ale memoriei interne, iar un mi
croprocesor cu capacitatea magistralei de adrese de 32 de bii poate accesa direct
232 locaii.
n ansamblu, lungimea cuvntului, frecvena ceasului de sistem i capacitatea
magistralelor determin capacitatea de prelucrare a microprocesorului, care
se msoar n Mips
Megainstruciuni pe secund. Pentru exemplificare, n tabelul 6.2 snt p
entate caracteristicile principale ale microprocesoarelor din familia Intel.
Tipul microprocesorului i frecvena ceasului de sistem al calculatorului personal c
u care lucrai dvs. poate fi aflat cu ajutorul meniului contextual al pictogramei M
y computer . Amintim c acest meniu se afieaz pe ecran cu ajutorul unui
clic-dreapta pe pictograma respectiv.
Tabelul 6.2
Caracteristicile principale
ale microprocesoarelor din familia Intel
Microprocesor
Lungime
cuvnt, bit
Frecven,
MHz
Capacitate de
prelucrare, Mips
32
32
32
32
64
200
300
1400
3800
3400
200
400
1200
2500
4000
Pentium I

Pentium
Pentium
Pentium
Pentium

II
III
4
D

ntrebri i exerciii
Explicai destinaia echipamentelor din componena unui microprocesor (fig. 6.15).
Care snt parametrii principali ai unui microprocesor? Explicai semnificaia
fiecrui parametru.
Determinai tipul i parametrii principali ai microprocesorului din componena calcula
torului personal cu care lucrai dvs.
146

Test de autoevaluare nr. 6


1. Indicai corespondena dintre denumirile unitilor funcionale ale calculatorului (col
oana din stnga) i destinaia acestora (coloana din dreapta):
(a) efectuarea operaiilor aritmetice
i logice elementare;
(b) colorarea imaginilor i memorarea lor
pe discuri optice;
(c) extragerea datelor din calculator;
(2) memoria;
(d) furnizarea semnalelor de comand
necesare executrii secveniale
a instruciunilor;
(3) dispozitivul aritmetic
i logic;
(e) introducerea documentelor n calculator
i corectarea greelilor gramaticale;
(4) dispozitivul de ieire;
(f)
(1) dispozitivul de intrare;
(5) dispozitivul central
de comand;
(6) procesorul.
nmagazinarea datelor iniiale, intermediare
i finale ale problemei, precum i a instruciunilor care indic secvena calculelor;
(g) prelucrarea automat a informaiei
conform programului nmagazinat
n memorie;
(h) efectuarea calculelor aritmetice
i afiarea rezultatelor la ecran;
(i)
introducerea datelor din mediul exterior
n calculator.
2. Numii cel puin cinci echipamente periferice pe care le cunoatei dvs.
3. Care dintre afirmaiile ce urmeaz snt adevrate:
a) un calculator poate fi conceput fr ca s aib o unitate de memorie extern;
b) memoria intern este un dispozitiv periferic;
c) memoria extern este mai lent dect memoria intern;
d) unitatea de disc magnetic este o memorie intern;
e) un calculator poate fi conceput fr ca s aib o unitate de memorie intern;
f) memoria extern este un dispozitiv periferic?
4*. Numii destinaia magistralei din componena calculatorului personal.
5*. Desenai schema-bloc a calculatorului personal. Care componente snt obligatorii
i
care opionale pentru funcionarea calculatorului?
6*. Este cunoscut faptul c instruciunile cu trei adrese conin urmtoarele cmpuri:
Codul instruciunii, Adres operand 1, Adres operand 2 i Adres rezultat. Explicai
destinaia fiecrui cmp.

* Numai pentru profilul real.


147

7*. Explicai cum vor fi executate urmtoarele instruciuni cu trei adrese:


a) 01 101 153 342;
b) 04 508 391 216;
c) 03 751 852 031;
d) 02 450 709 011.
Operaiile aritmetice i logice snt codificate n felul urmtor: 01
adunarea; 02
scdere
03 nmulirea; 04
mprirea.
8*. Indicai tipul instruciunilor ce urmeaz (operaionale, de transfer, de salt sau de
intrare-ieire):
a) adunarea a dou numere;
b) scrierea unui ir de octei pe discul magnetic;
c) deplasarea unui cuvnt binar de la dreapta spre stnga;
d) citirea unui ir de octei de pe discul optic;
e) compararea a dou numere i transferul controlului n funcie de rezultatul comparrii;
f) nmulirea a dou numere;
g) ncrcarea n registrul procesorului a unui numr din memoria intern.
9*. Se consider c denumirea simbolic X semnific locaia 205, denumirea Y locaia
421, iar denumirea S locaia 783. Exprimai n limbajul de asamblare (vezi tabelul 6.1
) urmtorul program:
01 205
02 783
04 421
03 205.
10*. Se consider c denumirile simbolice X, Y i S specific, respectiv, locaiile 971, 5
83
i 461. Translatai urmtoarele programe scrise n limbajul de asamblare (vezi tabelul 6
.1):
INC Y
MEM S
INC X
MEM Y
INC S
11. Indicai tipul resurselor ce urmeaz (tehnice sau programate):
a) procesorul;
b) editorul de texte;
c) aplicaia de calcul tabelar;
d) imprimanta;
e) aplicaia de pot electronic;
f) tastatura;
g) sistemul de operare;
h) vizualizatorul.
12. Care este diferena dintre memoriile externe cu acces direct i acces secvenial?
148

13. Care dintre afirmaiile ce urmeaz snt adevrate:


a) unitatea de memorie de band magnetic asigur accesul direct la nregistrri;
b) timpul de acces al unitii de band magnetic este mai mare ca cel al unitii de
discuri magnetice;
c) unitatea de memorie de discuri magnetice asigur accesul secvenial la nregistrri;
d) pe o band magnetic nregistrrile snt grupate pe cilindri;
e) timpul de acces al unitii de disc rigid este mai mic ca cel al unitii de disc fle
xibil?
14. Care dintre urmtoarele afirmaii snt adevrate:
a) toate discurile optice au dezavantajul c odat ce au fost scrise nu mai pot fi r
escrise;
b) n general, discurile magnetice rigide au capaciti de stocare mai mari dect ale di
scurilor optice;
c) capacitatea de stocare a unui disc optic depinde de viteza cu care el se rotet
e;
d) un disc magnetic flexibil are o capacitate de stocare mai mare dect un disc op
tic;
e) numrul ciclurilor de scriere/tergere a discurilor optice reinscriptibile nu poa
te depi o
anumit limit?
15*. Viteza liniar a discului optic este de 5,6 m/s, iar densitatea de nregistrare
a informaiei este de 512 Koctei/m. Determinai viteza de transmisie a datelor de la
unitatea de disc
optic la unitatea central.
16. Alegei din lista ce urmeaz parametrii ce caracterizeaz un vizualizator:
a) rezoluia;
b) numrul de pagini ce pot fi afiate ntr-o secund;
c) diagonala ecranului;
d) numrul de culori pe care le poate afia;
e) viteza de imprimare.
17. Alegei din lista ce urmeaz parametrii ce caracterizeaz o imprimant:
a) rezoluia;
b) numrul de culori pe care le poate imprima;
c) diagonala imprimantei;
d) numrul de instruciuni pe secund;
e) viteza de imprimare.
18. Indicai parametrii de baz ce caracterizeaz un calculator.
19*. Indicai parametrii de baz ai microprocesorului.
149

Capitolul 7
REELE DE CALCULATOARE
7.1. Introducere n reele
Odat cu extinderea domeniilor de aplicare a calculatoarelor, a crescut i numrul uti
lizatorilor ce doreau s aib acces la mijloace eficiente de prelucrare i
stocare a unor informaii comune.
De exemplu, n cazul proiectrii unei cldiri, mai muli specialiti
arhitectul,
inginerul, pompierul etc. doresc s aib acces i s introduc, dac e necesar, modificri n
senele tehnice ale construciei n curs de elaborare. n cazul unei
companii de transporturi aeriene biletele la una i aceeai curs pot fi vndute de
mai multe agenii aflate n orae diferite.
Soluia iniial la astfel de probleme a constituit-o conectarea la un calculator
central, de mare capacitate, a mai multe terminale (fig. 7.1).
Fig. 7.1. Sistem centralizat de calcul
De regul, un terminal const dintr-un vizualizator, o tastatur i, dac e necesar, o imp
rimant. Neajunsul principal al unui sistem centralizat de prelucrare
a datelor este fiabilitatea redus i utilizarea ineficient a resurselor de calcul.
Cu timpul, a aprut tendina de trecere de la sistemele centralizate la instalarea d
e calculatoare la fiecare utilizator i asigurarea unor legturi de comunicaie
eficient ntre ele (fig. 7.2).
Numim reea de calculatoare o mulime de calculatoare ce pot schimba informaii prin i
ntermediul unei structuri de comunicaie.
Calculatoarele unei reele se conecteaz la structura de comunicaie prin intermediul
unor uniti de intrare-ieire dedicate, numite adaptoare de reea.
150

Fig. 7.2. Reea de calculatoare

Evident, n cadrul unei reele fiecare calculator, mai exact, fiecare adaptor de
reea, are o adres unic, denumit adres de reea.
De exemplu, o reea de calculatoare poate fi construit utiliznd ca structur de
comunicaie reeaua existent de telefoane. n acest caz, adaptorul de reea va
include un modulator pentru conversiunea semnalelor digitale furnizate de calcul
ator n semnale telefonice i un demodulator pentru operaia invers. Dispozitivul
respectiv poart denumirea de modem (modulator-demodulator). Adresa de reea
este dat de numrul de telefon al postului la care este conectat modemul.
n general, o structur de comunicaie este format din linii de transmisie a
semnalelor. Aceste linii pot fi:
cabluri cu fire torsadate;
cabluri coaxiale;
cabluri optice;
linii cu microunde (terestre sau prin satelit).
Cablurile cu fire torsadate snt asemntoare celor telefonice i asigur o
capacitate de transmisie de pn la 1 Mbit/s. Cablurile coaxiale, asemntoare
celor din reelele de televiziune prin cablu, asigur o capacitate de transmisie de
pn la 1 bit/s. Cablul optic const din fibre de sticl sau din plastic transparent, a
coperite cu un nveli de protecie. Semnalul optic, emis de o surs laser, se
propag prin fibr i este recepionat de o celul fotosensibil. Capacitatea de
transmisie a unui cablu optic poate ajunge la valoarea de 1 Tbit/s.
Liniile cu microunde snt formate din staii de retransmisie ce opereaz n
banda de unde centimetrice. Pe Pmnt aceste staii se amplaseaz n raza vizibilitii direc
e a antenelor, la o distan de 40 50 de kilometri una de alta. n cazul
liniilor cosmice staiile respective se amplaseaz pe satelii. Capacitatea de transmi
sie a liniilor cu microunde este de ordinul 10 bii/s.
n funcie de aria de rspndire a calculatoarelor dintr-o reea, exist urmtoarele tipuri d
reele:
reele locale;
reele regionale;
reele globale.
151

n reelele locale calculatoarele au o arie mic de rspndire (pn la 2 km) i


deservesc o singur instituie. Reelele locale snt formate, de regul, din calculatoarel
e care se afl n aceeai cldire sau ntr-un grup de cldiri. De obicei, ca linii
de transmisie se utilizeaz cablurile cu fire torsadate i cablurile coaxiale.
Reelele regionale acoper aria unui ora sau a unui sector. Liniile de comunicaie se r
ealizeaz prin cabluri coaxiale sau staii mici de transmisie/recepie,
denumite radiomodemuri.
Reelele globale acoper suprafaa unei ri, suprafaa unui continent sau
chiar suprafaa mai multor continente. Ca linii de transmisie se utilizeaz cabluril
e optice i liniile cu microunde (terestre sau prin satelit).
Avantajul principal al reelelor const n partajarea sau, cu alte cuvine, utilizarea n
comun a datelor, a programelor i a calculatoarelor din reea.
De exemplu, n cazul unei reele locale pot fi partajate fiierele, discurile de capac
itate mare, imprimantele, cititoarele de desene i alte periferice. Evident, fiind
accesibile pentru mai muli utilizatori, echipamentele periferice respective vor
fi utilizate
mai eficient. Totodat, specialitii instituiei n cauz pot lucra n echip asupra unor
proiecte comune: bugetul anual, planul de vnzri, actualizarea bazelor de date etc.
n cazul reelelor globale, colective de cercettori din diferite ri pot efectua calcule
complexe pe un supercalculator unic n lume sau analiza n comun rezultatele unui
experiment tiinific foarte costisitor. Pe baza reelelor examinate snt create diverse
servicii: transferul de fiiere, pota electronic, difuzarea noutilor, conversaii pe
grupuri de interese, jocuri electronice, publicitate, transferul banilor etc.
ntrebri i exerciii

152
Numii factorii care au contribuit la apariia reelelor de calculatoare.
Care snt neajunsurile sistemelor centralizate de calcul?
Numii componentele principale ale unei reele de calculatoare.
Explicai destinaia structurii de comunicaie.
Care snt funciile adaptorului de reea? Cum se identific calculatoarele din componena
unei reele? Determinai tipul adaptorului de reea cu care lucrai dvs.
Din ce este format o structur de comunicaie?
Care este destinaia unui modem? Dar a unui radiomodem?
Numii capacitile de transmisie a urmtoarelor linii de comunicaie:
cablu cu fire torsadate;
cablu coaxial;
cablu optic;
linie cu microunde.
Estimai durata de transmisie a unui film video (800 bii) prin liniile de comunicaie
pe care le cunoatei dvs.
Determinai tipul liniilor de comunicaie din structura reelelor cu care lucrai dvs.
Cum se clasific reelele n funcie de aria de rspndire?
Determinai tipul reelei (local, regional sau global) cu care lucrai dvs.
Care snt avantajele reelelor de calculatoare? Ce servicii ofer o reea de calculatoar
e?

7.2. Tehnologii de cooperare n reea


Resursele unei reele de calculatoare snt echipamentele periferice, liniile de
comunicaie, calculatoarele propriu-zise, fiierele, bazele de date, programele exec
utabile etc. Utilizarea eficient a acestor resurse presupune lucrul n comun sau,
cu alte cuvinte, cooperarea calculatoarelor i programelor ce ruleaz pe ele.
Numim tehnologie de cooperare modul cum este organizat funcionarea n comun a calcul
atoarelor i programelor din reea.
Cel mai frecvent n reelele de calculatoare se utilizeaz tehnologiile clientserver i
egal-la-egal.
n tehnologia client-server o resurs comun, de exemplu, imprimanta color sau discul
de mare capacitate, este gestionat de un calculator dedicat, denumit server. Calc
ulatorul care dorete s aib acces la aceste resurse se numete
client. Pentru a utiliza resursele respective, orice client trimite serverului o
cerere. Serverul analizeaz cererile primite i, n funcie de statutul fiecrui client,
le
accept sau le respinge (fig. 7.3).
Fig. 7.3. Modelul client-server
Evident, calculatorul care gestioneaz fiiere comune se va numi server de
fiiere, iar cel care gestioneaz imprimantele
server de imprimare.
Calculatorul care gestioneaz liniile de comunicaie, alte resurse comune i,
posibil, asigur accesul la reele externe, se numete server de reea. De regul,
anume pe acest calculator ruleaz i sistemul de operare al reelei. Celelalte calcula
toare din reea au caracteristici mai modeste i se numesc staii de lucru.
Avantajele principale ale tehnologiei client-server snt:
utilizarea eficient a echipamentelor scumpe;
distribuirea raional a lucrrilor ntre calculatoare n funcie de puterea lor;
protecia sporit a datelor importante, ele fiind pstrate numai pe servere.
Cu regret, tehnologiile client-server snt complicate i necesit calculatoare
performante.
n tehnologia egal-la-egal funciile tuturor calculatoarelor din reea snt
identice. Fiecare calculator din reea funcioneaz att ca server, ct i ca staie
de lucru, oferind pentru uzul public resursele de care dispune, n mod curent,
unele fiiere de pe discul fix, unitatea de disc optic, imprimanta etc. Fiind simp
l, tehnologia dat se folosete n reelele locale mici. n cazul reelelor mari,
tehnologia egal-la-egal nu permite protecia sigur a datelor.
153

n mod similar, tehnologiile client-server se aplic i pentru organizarea lucrului n c


omun a dou sau a mai multe programe.
Programul n curs de execuie care ofer servicii se numete program
server, iar programele care apeleaz la aceste servicii se numesc programe client.
De exemplu, un program server ce gestioneaz o baz de date execut urmtoarele funcii:
asigur protecia i securitatea datelor;
recepioneaz i, dac clientul are autorizaiile respective, execut cererile
de modificare a datelor;
recepioneaz cererile de citire a datelor i, n funcie de statutul clientului,
permite sau interzice accesul la datele respective;
completeaz un registru n care nscrie toate operaiile efectuate n baza de date.
Programul client asigur interaciunea utilizatorului cu baza de date i realizeaz urmto
arele funcii:
ofer utilizatorului o interfa simpl i comod;
verific i editeaz datele introduse de utilizator;
adreseaz cereri programului server;
afieaz informaiile primite din baza de date.
Programele server i programele client pot rula pe un singur calculator sau pe
calculatoare diferite. n ultimul caz, prelucrarea de date este distribuit. Transfe
rul de date ntre programul client i programul server se realizeaz prin structura de
comunicaie (fig. 7.2). Calculatorul pe care ruleaz un program server se
numete gazd (n englez host).
De obicei, n reelele locale programul client se execut pe staiile de lucru, iar
programele server ruleaz pe serverul de reea. n cazul reelelor regionale sau
globale pe fiecare calculator performant ruleaz mai multe programe server ce
ofer diverse servicii programelor client de pe alte calculatoare.

ntrebri i exerciii
Explicai termenul tehnologii de cooperare n reea. Ce tehnologii de cooperare
n reea cunoatei?
Cum este organizat funcionarea calculatoarelor din reea n cazul tehnologiei
client-server?
Care snt avantajele i dezavantajele tehnologiei client-server?
Explicai destinaia serverelor de reea, a serverului de fiiere, a serverului de
imprimare i a staiei de lucru.
Cum este organizat funcionarea calculatoarelor din reea n cazul tehnologiei
egal-la-egal? Care snt avantajele i dezavantajele acestei tehnologii?
Determinai tehnologiile de cooperare realizate n reeaua cu care lucrai dvs.
Exist oare n reea un server de fiiere i/sau un server de imprimare?
Exist n reeaua cu care lucrai dvs. un server de reea? Argumentai rspunsul.
Este oare realizat n reeaua cu care lucrai dvs. tehnologia egal-la-egal? Argumentai r
punsul.
154

Cum interacioneaz programele n curs de execuie n cazul tehnologiei clientserver?


Numii funciile unui program server i ale unui program client.
Explicai termenul calculator-gazd.
O companie de transporturi aeriene a deschis agenii de vnzare a biletelor n
mai multe orae din ar. Datele despre toate rutele aeriene i locurile disponibile se
pstreaz n calculatorul din sediul central al companiei.
Care tehnologii de reea ar asigura lucrul eficient al ageniilor de vnzare a
biletelor? Snt oare necesare programe server i programe client? Ce funcii ar
realiza aceste programe?
Jocurile electronice colective presupun existena a 5-10 calculatoare reunite n
reea. n astfel de jocuri fiecare lupt contra tuturor. Calculatoarele respective
ofer pentru uzul public o partiie de pe discul fix.
Ce tehnologie de reea ar asigura lucrul n comun al calculatoarelor?
Elaborai o tehnologie de cooperare n reea pentru calculatoarele din:
a) depozitele unei firme;
b) slile de expoziie ale unui muzeu;
c) slile de lectur ale unei biblioteci;
d) casele unui magazin care accept carduri bancare;
e) sistemul de eliberare a banilor lichizi prin intermediul automatelor bancare;
B) sistemul de verificare operativ a numerelor de nmatriculare a automobilelor
(fiecare echipaj de poliie este dotat cu un microcalculator i un radiomodem);
g) laboratorul de informatic.
7.3. Topologia i arhitectura reelelor
Structura de comunicaie a unei reele (fig. 7.2) asigur transferul de date ntre calcu
latoare. De obicei, datele de transmis snt grupate n pachete.
Un pachet de date conine urmtoarele informaii:
adresa destinatarului;
datele propriu-zise;
informaii de control;
adresa expeditorului.
Se observ c pachetul de date poate fi tratat ca un plic obinuit care circul
ntr-un sistem tradiional de pot. Drumul parcurs de un pachet de date depinde
de topologia reelei.
Numim topologie a reelei configuraia geometric a legturilor ntre
calculatoare.
Topologiile concrete ale reelelor actuale snt formate prin utilizarea structurilor
de baz: stea, inel, magistral, distribuit etc. (fig. 7.4).
n cazul topologiei stea legtura ntre dou calculatoare Ci, Cj ale reelei are
loc prin intermediul calculatorului central C1. Din acest motiv, calculatorul C1
,
denumit calculator principal, are un rol important n funcionarea reelei, efectund di
specerizarea pachetelor de date. Evident, defectarea calculatorului prin155

Fig. 7.4. Topologii de reea:


a stea; b
inel; c
magistral; d

distribuit

cipal ntrerupe funcionarea ntregii reele. Prin urmare, calculatorul principal


trebuie s fie foarte fiabil.
n topologia inel legturile ntre calculatoare formeaz o bucl nchis. Pachetul expediat d
calculatorul Ci este transmis calculatorului Ci+1, care la rndul
su l transmite calculatorului Ci+2 etc. pn cnd pachetul ajunge la calculatorul
destinatar Cj. ntruct defectarea oricrui calculator ntrerupe funcionarea ntregii reele
toate calculatoarele C1, C2, ..., Cn trebuie s fie foarte fiabile.
n topologia magistral exist un singur canal de comunicaie la care snt
conectate toate calculatoarele. Fiecare calculator spioneaz magistrala i interceptea
z pachetele adresate lui. Orice calculator Ci poate expedia un pachet numai atunc
i cnd magistrala este liber.
Reelele bazate pe topologia de tip magistral snt foarte fiabile, ntruct comunicarea nt
re calculatoarele Ci, Cj va avea loc chiar i n cazul n care toate celelalte calcula
toare nu funcioneaz.
n topologiile distribuite ntre fiecare pereche de calculatoare exist mai multe ci de
transmisie a datelor. De exemplu, un pachet de date expediat de calculatorul C1
calculatorului Cn (fig. 7.4d) poate ajunge la destinaie pe drumul C1
C2
C5
Cn, iar altul pe drumul C1
C4
Cn. Evident, reeaua rmne funcional chiar
dac unul sau mai multe calculatoare i linii de comunicaie nu funcioneaz.
De regul, topologiile de tip stea, inel sau magistral se utilizeaz n cazul
reelelor locale. Reelele regionale i cele globale au o topologie distribuit. Integra
rea reelelor locale n reele regionale i reele globale se face conform topologiilor de
baz din figura 7.4, fiecare nod C1, C2, ..., Cn reprezentnd o subreea. Prin
urmare, ajungem la o structur ierarhic cu o diversitate de legturi.
Setul de reguli pentru gestionarea schimbului de date ntr-o reea este
numit protocol de comunicaie sau, pur i simplu, protocol.
156

Un protocol definete modul de adresare a calculatoarelor, lungimea i componena pach


etelor de date, algoritmul de depistare i corectare a erorilor, modul
de conectare fizic a adaptoarelor i cablurilor de reea etc. La apariia primelor
reele de calculatoare fiecare productor de echipamente de calcul avea propriile
sale protocoale de comunicaie, ceea ce fcea imposibil interconectarea calculatoarel
or de proveniene diferite. Acest neajuns a fost nlturat prin standardizarea protoco
alelor. Amintim c standardul reprezint un document n care se reglementeaz calitatea,
caracteristicile, forma etc. ale unui produs. Standardele
internaionale snt elaborate de ctre Organizaia Internaional pentru Standardizare (ISO
International Standards Organisation). Un alt organism internaional care joac un r
ol important n standardizarea n domeniile electronicii i
tehnicii de calcul este Institutul Inginerilor Electricieni i Electroniti (IEEE
Institute of Electrical and Electronics Engineers).
Numim arhitectur a reelei modul n care este conceput reeaua: topologia, protocoalele
de comunicaie, tehnologiile de cooperare n reea.
n continuare prezentm cele mai rspndite arhitecturi de reele.
Ethernet (reea n eter)
reele locale realizate n conformitate cu standardul
IEEE 802.3. Utilizeaz o magistral din cablu cu fire torsadate, cablu coaxial sau
cablu cu fibre optice. Viteza de transmisie a datelor ajunge la 100 Mbii/s. Arhit
ectura a fost elaborat de firmele XEROX, Intel i DEC.
Token Ring (inel cu jeton)
reele locale realizate n conformitate cu standardul IEEE
802.5. Utilizeaz un inel din cablu cu fire torsadate sau cablu coaxial.
Viteza de transmisie a datelor este de 16 Mbii/s. Arhitectura a fost elaborat de
firma IBM.
DATAKIT
reele locale, regionale sau globale elaborate de firma Bell Laboratories.
Sub aspect topologic const dintr-o mulime de stele interconectate. n
cazul cablului cu fibre optice se atinge viteza de transmisie de 1,5 bii/s.
SNA (Sistem Network Arhitecture) o arhitectur elaborat de firma IBM pentru reelele
locale, regionale i globale. Protocoalele acestei arhitecturi au stat la
baza standardelor ISO. Topologia iniial era de tip stea, n prezent este o topologie
distribuit, suportnd i reele locale.
ARPANET
o arhitectur conceput de mai multe universiti i corporaii
sub egida Ministerului Aprrii al SUA (Advanced Research Projects Agency).
Arhitectura dat se bazeaz pe o topologie distribuit i folosete diferite linii de
comunicaie, de la liniile telefonice pn la liniile cu microunde prin satelit. Linii
le
respective conecteaz supercalculatoare separate i diverse reele locale sau
regionale, rspndite pe aproape jumtate din suprafaa terestr. Arhitectura
ARPANET include urmtoarele protocoale:
protocolul IP (Internet Protocol) destinat interconectrii reelelor locale, regiona
le i globale;
protocolul serviciilor bazate pe conexiuni, numit TCP (Transmission Control
Protocol);
un protocol de transfer de fiiere, numit FTP (File Transfer Protocol);
157

un protocol pentru pota electronic, numit SMTP (Simple Mail Transfer


Protocol);
un protocol de ataare de la distan a calculatoarelor, numit TELNET.
Pe baza arhitecturii ARPANET a fost conceput reeaua global de calculatoare Internet
.

ntrebri i exerciii
Explicai termenul pachet de date. Ce informaii conine un pachet de date?
Explicai termenul topologia reelei.
Care snt topologiile de baz ale reelelor? Numii avantajele i dezavantajele
fiecrei topologii de baz.
Explicai cum se transmit pachetele de date n urmtoarele topologii de baz:
stea, inel, magistral, distribuit.
Precizai drumul pe care l va parcurge un pachet trimis de calculatorul C2
calculatorului C4 (fig. 7.4 a).
sii drumul pe care l parcurg pachetele expediate de calculatorul C2 calculatorului
C4 (fig. 7.4 b).
Cte ci de transmitere a pachetelor exist ntre calculatoarele C 1, C n din
figura 7.4d? Care este calea cea mai scurt?
Ce se va ntmpla cu reelele din figura 7.4 dac iese din funcie calculatorul C1?
Dar dac iese din funcie calculatorul C2?
Determinai topologia reelei locale cu care lucrai dvs. Enumerai avantajele i
dezavantajele acestei topologii.
Care este destinaia unui protocol? Ce norme conine un protocol?
Argumentai necesitatea standardizrii protocoalelor. Cine elaboreaz standardele resp
ective?
Aflai protocoalele utilizate de reeaua local cu care lucrai dvs.
Explicai modul cum se integreaz reelele locale n reele regionale i reele globale. Dese
ai topologia reelelor regionale sau globale la care avei acces dvs.
Explicai termenul arhitectura reelei.
Dai exemple de arhitecturi ale reelelor locale, regionale i globale.
Caracterizai arhitectura reelei cu care lucrai dvs.
Enumerai protocoalele utilizate n arhitectura ARPANET. Snt oare aplicate
aceste protocoale n reeaua cu care lucrai dvs.?
7.4. Reeaua Internet
Reeaua global Internet se bazeaz pe o topologie distribuit i include calculatoare sep
arate, subreele locale, regionale sau globale (fig. 7.5).
Interconectarea reelelor se realizeaz cu ajutorul unor echipamente dedicate de
reea, denumite pori sau rutere. Poarta (gateway) este un calculator specializat
destinat interconectrii a dou reele ce utilizeaz protocoale total diferite de co158

Fig. 7.5. Topologia Internetului


municaie. Ruterul (router) este un calculator dedicat care interconecteaz reelele
ce folosesc protocoale identice i snt utilizate pentru a determina cea mai bun cale
de transmitere a pachetelor. Calculatoarele conectate la Internet se numesc gazd
e
(host). Funcionarea reelei este reglementat de circa 100 de protocoale.
Identificarea calculatoarelor n cadrul reelei se face cu ajutorul adreselor
Internet. Acestea pot fi de dou tipuri: adrese numerice i adrese simbolice.
O adres numeric este format din 32 de cifre binare (4 octei) i are structura prezenta
t n figura 7.6.
Fig. 7.6. Structura adreselor numerice
159

ntruct Internetul este o reea de reele , adresa numeric conine adresa


subreelei (cmpul Adres Reea) i adresa calculatorului n cadrul subreelei
(cmpul Adres Calculator). n funcie de numrul maximal de calculatoare pe
care le poate identifica n cadrul unei subreele, adresele se mpart n clasele A,
B i C. Adresele din clasele D i E au o destinaie special. Caracteristica adreselor I
nternet este prezentat n tabelul 7.1.
Caracteristica adreselor numerice
Clasa
A
B
C
Tabelul 7.1
Numrul de adrese disponibile
de reea
de calculatoare
2 =128
214=16 384
221=2 097 152
224 = 16 777 216
216 = 65 536
28 = 256
7

Adresele din clasa A snt distribuite reelelor mari, n special reelelor globale.
O astfel de reea poate include circa 16 milioane de calculatoare. Adresele din
clasa B snt distribuite reelelor medii, n special reelelor regionale. O astfel de
reea poate include circa 65 mii de calculatoare. Adresele din clasa C snt rezervat
e reelelor relativ mici, care includ pn la 256 de calculatoare. Fiecare adres
Internet este unic. Adresele snt atribuite calculatoarelor de Centrul Informaional
al Reelei (Network Information Center).
De exemplu, numrul binar
10010010 00110011 00001001 11110111
este o adres de clasa B i identific calculatorul numrul
00001001 11110111
din cadrul reelei
010010 00110011.
Pentru comoditate, adresele binare se exprim n form zecimal, transformnd separat fiec
are octet. Numerele zecimale corespunztoare fiecrui octet se
delimiteaz prin puncte.
n cazul exemplului de mai sus obinem:
(10010010)2=(146)10;
(00110011)2=(51)10;
(00001001)2=(9)10;
(11110111)2=(247)10.
Prin urmare, n forma zecimal adresa respectiv va fi 146.51.9.247.
Adresele n form zecimal i cu att mai mult cele n form binar snt incomode pentru publ
larg. Din acest motiv, mai frecvent snt utilizate adresele
simbolice.
160

O adres simbolic este format din numele calculatorului-gazd i nume de


domenii separate prin puncte. Domeniul reprezint un grup de calculatoare organiza
te tematic sau geografic. Orice domeniu poate fi mprit n subdomenii,
ajungndu-se astfel la o structur ierarhic. Numele de domenii se indic n ordinea creter
ii ariei de cuprindere.
De exemplu, adresele simbolice
c1.lme.ch.md
c5.lme.ch.md
specific calculatoarele c1 i c5 din domeniul lme (Liceul
Adresele simbolice
c1.lic.ch.md
c9.lic.ch.md

Mihai Eminescu ).

specific calculatoarele c1 i c9 din domeniul lic (Liceul Ion Creang ). Domeniile


lme i lic snt subdomenii ale domeniului ch (Chiinu). La rndul su, ch este un
subdomeniu al domeniului md (Republica Moldova).
n mod similar, adresele simbolice
rector.ase.men.ro
decan.ase.men.ro
specific calculatoarele rector i decan din domeniul ase (Academia de Studii Econom
ice). Domeniul ase este un subdomeniu al domeniului men (Ministerul Educaiei
Naionale), iar men este un subdomeniu al domeniului ro (Romnia).
n mod normal, domeniul de cel mai nalt nivel este ara (md, ro, us etc.) sau
tipul instituiei (com comercial, mil
militar, edu
de educaie etc.).
Relaiile de incluziune ntre domenii pot fi reprezentate cu ajutorul diagramelor Eu
ler, frecvent utilizate n teoria mulimilor. Pentru exemplificare, n figura 7.7
snt prezentate astfel de diagrame pentru unele adrese simbolice din domeniul md.
Fig. 7.7. Diagrame Euler pentru adrese simbolice
161

Pentru a transforma adresele simbolice n adrese numerice i invers, n fiecare domeni


u exist un server de nume (name server). Acest program gestioneaz
domeniul respectiv fr intervenia serverelor ierarhic superioare. Prin urmare,
n Internet nu exist un calculator central care ar fi unicul responsabil de cele
aproximativ 1010 adrese de reea.
n cazul exemplului de mai sus (fig. 7.7), adresele calculatoarelor c1 i c5 snt
procesate n serverul lme, iar adresele calculatoarelor c1 i c9
de serverul lic.
Serverul ch va lucra numai cu adresele serverelor lic i lme, fr s se implice n
procesarea adreselor de calculatoare din aceste domenii. n mod similar, serverul
men nu proceseaz adresele calculatoarelor rector i decan, lsnd acest lucru n
obligaia serverului ase.

ntrebri i exerciii
Desenai topologia reelei Internet. Cum se interconecteaz subreelele n cadrul Internet
ului?
Care este destinaia unei pori? Dar a unui ruter?
Cum se identific calculatoarele n Internet? Care snt avantajele i dezavantajele adre
selor numerice? Dar ale adreselor simbolice?
Care snt clasele de adrese numerice? Pentru ce este necesar o astfel de clasificar
e?
Explicai destinaia cmpurilor Adres reea i Adres calculator ale unei adrese numerice.
Cine atribuie adrese calculatoarelor din Internet?
Determinai clasele urmtoarelor adrese. Precizai adresa subreelei i adresa
calculatorului n subreea.
a) 45.201.19.63;
d) 192.109.58.170;
b) 201.165.213.91;
e) 15.21.207.250;
c) 154.36.79.200;
f)
217.15.69.113.
Care snt criteriile de grupare a calculatoarelor n domenii? Numii domeniile
de cel mai nalt nivel.
Snt date urmtoarele adrese simbolice:
a) c1.lme.ch.md;
f)
b) c3.lme.ch.md;
g) c5.lme.ch.md;
c) c1.lic.ch.md;
h) c9.lic.ch.md;
d) director.lic.ch.md;
i)
prof.lic.ch.md;
e) elev1.lic.ch.md;

j)
elev4.lic.ch.md.
c4.lme.ch.md;
Precizai domeniile de calculatoare i relaiile de incluziune ntre domenii. Desenai dia
gramele Euler pentru adresele n cauz.
162

Desenai o diagram Euler pentru adresele simbolice ce urmeaz. Precizai domeniile de c


alculatoare i relaiile respective de incluziune.
a) rector.ase.men.ro;
d) rector.ase.met.md;
b) decan.ase.men.ro;
e) decan.ase.met.md;
c) student.info.ase.men.ro;
f)
student.cib.met.md.
Care este destinaia unui server de nume? Ce adrese snt procesate de un astfel
de server?
Precizai serverele de nume pentru adresele din exerciiile 9 i 10. Indicai adresele p
e care le proceseaz fiecare server.
Aflai adresa numeric i adresa simbolic a calculatorului cu care lucrai dvs.
Precizai clasa de adres, adresa subreelei i adresa calculatorului n cadrul
subreelei. Desenai o diagram Euler ce reprezint relaiile de incluziune ntre
domeniile la care aparine calculatorul dvs.
7.5. Servicii Internet
Reeaua Internet ofer urmtoarea gam de servicii:
accesul calculatoarelor la distan;
transferul de fiiere;
pota electronic;
tiri i discuii;
prezentarea i cutarea informaiilor etc.
Cooperarea calculatoarelor i programelor care ofer aceste servicii se bazeaz
pe modelul client-server. De obicei, pe calculatorul beneficiarului de serviciu
ruleaz programul client, iar pe calculatorul furnizorului de servicii ruleaz progr
amul server.
Serviciul Telnet permite utilizatorului s aib accesul la calculatoarele aflate la
distan. Dup stabilirea conexiunii, calculatorul utilizatorului devine un
simplu terminal al calculatorului aflat la distan. n continuare, utilizatorul poate
lansa n execuie pe calculatorul respectiv diverse programe, poate vizualiza
fiiere, schimba directoare etc. Protecia calculatoarelor i a datelor respective se
asigur prin utilizarea parolelor. Serviciul Telnet se utilizeaz pentru folosirea
n comun a unor resurse foarte scumpe, de exemplu, a supercalculatoarelor.
Serviciul transfer de fiiere sau, mai scurt, serviciul FTP (File Transfer
Protocol) permite utilizatorului s copie fiiere de pe calculatoare situate n divers
e puncte geografice. Acest serviciu ofer dou moduri de transfer al fiierelor:
modul binar, n care se pstreaz secvena de bii a fiierului, astfel nct
originalul i copia snt identice bit cu bit;
modul text, n care se transfer seturi de caractere n codul ASCII.
n general, pentru a avea acces la serverul FTP, clientul trebuie s introduc o
parol. Totui exist servere publice (FTP anonymous) care permit accesul la fiiere fr a
fi nevoie de o parol special.
163

Serviciul de pot electronic (electronic mail sau, prescurtat, e-mail) a


copiat modul de funcionare a potei obinuite.
Scrisoarea electronic, denumit mesaj (message) include:
adresa destinatarului;
subiectul, exprimat n cteva cuvinte;
adresa expeditorului;
textul scrisorii;
fiiere ataate opional.
Fiierele ataate pot fi de orice natur: texte, imagini, programe etc.
Scrisorile snt depuse n fiiere speciale, denumite cutii potale (mail box).
Adresa unei cutii potale are forma:
<nume cutie>@<Adres calculator>,
unde:
<nume cutie> este denumirea cutiei potale, de obicei acesta este numele de
familie al utilizatorului sau o abreviere;
@ simbolul at (la);
<Adres calculator>
adresa simbolic a calculatorului client pe care este creat
cutia potal.
Exemple:
1)
petrescu@c1.lme.ch.md
2)
florea@director.lic.ch.md
3)
ionescu@c1.lme.ch.md
4)
barbu@director.lic.ch.md
Cititorii pot expedia scrisori autorilor acestui manual la adresa:
Anatol_ remalschi@yahoo.com
Mesajele snt transmise prin reea de serverele de pot care au rolul oficiilor
i centrelor potale tradiionale.
Serviciul de pot electronic este foarte popular datorit avantajelor sale incontestab
ile, i anume: vitez, posibilitatea de a ataa la scrisori fiiere de orice
natur, faciliti avansate de redactare.
Cel mai modern serviciu de prezentare i cutare a informaiilor n Internet
este serviciul WWW (World Wide Web
Pnza Mondial de Pianjen). n acest
serviciu informaia este prezentat n form de pagini Web.
Pagina Web este un fiier scris n limbajul HTML (Hypertext Markup Language
Limbaj p
entru marcarea hipertextului) i poate conine, n afar de
informaii propriu-zise, referine la alte pagini Web. Paginile referite se pot
afla pe acelai calculator sau pe calculatoare situate n diverse puncte geografice
(fig. 7.8).
Tehnologia de cooperare n cadrul serviciului WWW este de tipul client-server.
Utilizatorul care dorete s ofere publicului larg anumite informaii instaleaz pe
164

Fig. 7.8. Pagini Web

calculatorul su un program server i elaboreaz una sau mai multe pagini Web.
Serverul intercepteaz cererile sosite de la alte calculatoare i asigur accesul la
paginile respective. Calculatorul pe care snt instalate paginile Web i serverul
WWW se numete site (site
sediu, reedin).
Programul client asigur transferul i afiarea pe ecran a paginilor Web citite
de pe diverse calculatoare din Internet. Imediat dup pornire, el afieaz propria
pagin de referin (home page pagina de acas) i ateapt indicaiile utilizatorului. Cn
zatorul activeaz o referin, programul client stabilete o conexiune cu serverul Web i
copiaz de la el pagina specificat n referin. Pagina
copiat este afiat pe ecran.
n continuare, utilizatorul activeaz o alt referin, programul client stabilete din nou
conexiunea cu un calculator din reea, din nou se va citi o pagin Web
etc. Cu alte cuvinte, utilizatorul rsfoiete paginile Web de pe diverse calculatoare,
indiferent de poziia lor geografic. Din acest motiv programele client snt
numite programe de rsfoire sau programe de explorare (n englez browser
sau explorer).
n cadrul serviciului WWW resursele reelei se specific cu ajutorul unor adrese speci
ale, denumite adrese URL (Uniform Resource Locator Locator Uniform
de Resurse). Aceste adrese au forma:
<protocol>: // <Adres simbolic>[:<port>]/<cale>/<fiier>
unde:
<protocol>

specific denumirea protocolului pentru transferul datelor prin

reea;
<Adres simbolic>
165

adresa calculatorului ce conine fiierul respectiv;

<port>
portul de acces (opional);
<cale>/<fiier>
specificarea fiierului.

Pentru exemplificare, prezentm cteva adrese URL ce conin informaii interesante:


http://www.edu.md site-ul Ministerului Educaiei i Tineretului, Moldova;
http://www.ctice.edu.md
site-ul Centrului de Tehnologii Informaionale i Comunicaion
ale n Educaie, Moldova;
http://www.dnt.md site-ul Asociaiei Dynamic Network Tehnologies, Moldova;
http://www.itc.ro/museum/museum.html site-ul Muzeului Naional de Art, Romnia;
http://www.nmsi.ac.uk
site-ul Muzeului de tiin i Industrie, Marea Britanie;
http://www.nasa.gov site-ul ageniei NASA, Statele Unite ale Americii.
Amintim c notaia http specific protocolul de transfer al hypertextelor (Hypertext T
ransfer Protocol).
n prezent, numrul fiierelor din reeaua Internet este de ordinul miliardelor.
Evident, nici nu poate fi vorba de cutarea informaiei necesare prin citirea indivi
dual a fiecrui fiier. Pentru a simplifica cutarea informaiei, n cadrul reelei
Internet au fost create servere de cutare (search engine).
Serverul de cutare este un calculator puternic care exploreaz ncontinuu
reeaua i citete paginile Web sau alte informaii prezentate publicului larg. Acestea
snt clasificate n funcie de datele pe care le conin, iar adresele lor snt reinute n ba
a de date de pe server.
Programul client adreseaz serverului de cutare o cerere n care indic de ce
fel de informaii are nevoie. Serverul interogheaz baza de date i transmite clientul
ui o list de adrese la care pot fi gsite informaiile cerute.
Pentru exemplificare amintim serverele de cutare frecvent utilizate:
http://www.yahoo.com serverul YAHOO (Yet Another Hierarhicaly Organizated
Oracle nc un oracol organizat ierarhic) al companiei Yahoo! Inc.;
http://www.google.com
serverul OO LE al corporaiei oogle Inc.;
http://www.bing.com
serverul BIN al corporaiei Microsoft Inc.;
http://www.yandex.ru
serverul YANDEX al companiei ;
http://www.infoseek.com
serverul Infoseek al firmei Infoseek Corp.
Accesul la aceste servere este gratuit.
ntrebri i exerciii
Care este gama de servicii oferite de Internet? Cum colaboreaz calculatoarele
din reea n procesul prestrii unui serviciu?
Care este destinaia serviciului FTP? Ce fiiere pot fi transferate prin acest
serviciu?
Studiai programul FTP instalat pe calculatorul dvs. Copiai cteva fiiere de pe
serverele FTP anonymous sau de pe alte servere la care avei acces.
De ce depinde viteza de transfer al fiierelor? Determinai viteza de transfer a
ctorva fiiere de pe serverele FTP aflate n Republica Moldova, Romnia i
Statele Unite ale Americii.
166

Cum se specific adresele n cadrul serviciilor de pot electronic?


Explicai cum interacioneaz calculatoarele client i serverele de pot n cadrul servici
i respectiv.
Ce informaii conine o scrisoare electronic? Care dintre ele snt opionale?
Explicai cum se formeaz o adres potal. Aflai adresele potale ale prietenilor dvs.
Studiai programul de pot electronic instalat pe calculatorul la care lucrai
dvs. Verificai dac acest program ofer urmtoarele faciliti:
utilizarea mai multor cutii potale;
clasificarea i pstrarea scrisorilor n dosare;
elaborarea scrisorilor conform unor abloane;
cifrarea i descifrarea corespondenei;
semnalarea momentelor cnd a sosit corespondena;
verificarea faptului c scrisorile expediate au ajuns la destinaie;
utilizarea semnturilor electronice.
Care snt avantajele potei electronice? Poate nlocui acest serviciu pota tradiional?
Formai grupe de cte patru utilizatori ai potei electronice i determinai experimental
viteza cu care se transmite corespondena.
Ce informaii conine paginaWeb? Cum formeaz aceste pagini o pnz de pianjen ?
Care este destinaia unui server Web? Dar a unui client Web? Cum interacioneaz acest
e programe?
Explicai modul de funcionare a unui client Web. Cum gsete acest program
paginile Web amplasate pe diferite calculatoare?
Explicai modul de specificare a resurselor n Internet cu ajutorul adreselor
URL. Care este semnificaia cmpurilor acestor adrese?
Studiai programul de explorare a Internetului instalat pe calculatorul cu care
lucrai dvs. Ce faciliti ofer acest program? Citii paginile Web adresele crora snt indi
ate n acest paragraf.
Care este destinaia unui server de cutare? Ce servicii ofer un astfel de server?
sii cu ajutorul unui server de cutare furnizorii de servicii Internet din Republic
a Moldova.
n afar de serviciile studiate n acest paragraf, reeaua Internet ofer i alte
servicii, cum ar fi: Archie, opher, WAIS, buletine de tiri, discuii etc. Folosind
un server de cutare, aflai informaia respectiv despre aceste servicii.
Elaborai paginile Web ale clasei i ale liceului dvs.
167

Test de autoevaluare nr. 7


1. Estimai durata de transmisie a unui film video n form arhivat (750 Mbii) prin
urmtoarele linii de comunicaie:
a) linie telefonic de 36 Kbii/s;
b) cablu cu fire torsadate de 1 Mbit/s;
c) cablu coaxial de 1 bit/s;
d) cablu optic de 1 Tbit/s.
2. Care dintre afirmaiile ce urmeaz snt adevrate:
a) reelele locale acoper aria unei localiti;
b) reelele globale acoper suprafaa unei ri, suprafaa unui continent sau chiar suprafaa
mai multor continente;
c) n general, reelele regionale deservesc localitile unei singure companii;
d) de obicei, reelele locale deservesc o singur instituie?
3. Numii componentele principale ale unei reele de calculatoare.
4. Care dintre afirmaiile ce urmeaz snt adevrate:
a) n tehnologia egal-la-egal funciile tuturor calculatoarelor din reea snt identice;
b) serverul unei reele are aceleai funcii ca i oricare alt calculator din reea;
c) n tehnologia client-server o resurs comun este gestionat de un calculator dedicat
;
d) orice calculator-client poate accesa datele de pe oricare alt calculator din
reea?
5* . Care dintre afirmaiile ce urmeaz snt adevrate:
a) n topologia stea legtura ntre dou calculatoare ale reelei are loc prin intermediul
calculatorului central;
b) n topologiile distribuite legtura ntre dou calculatoare ale reelei are loc prin in
termediul magistralei;
c) n topologia magistral legtura ntre dou calculatoare ale reelei are loc prin interme
diul calculatorului central;
d) n topologia inel toate calculatoarele au funcii identice?
6*. Care este destinaia unui protocol de reea?
7*. Explicai semnificaia termenului arhitectura reelei.
8. Desenai topologia reelei Internet.
9. Care dintre afirmaiile ce urmeaz este adevrat:
a) Internetul este o reea local ce are acces la alte reele locale, regionale sau gl
obale;
b) Internetul reprezint totalitatea reelelor dintr-o ar;
c) Internetul este o reea a marilor companii internaionale;
d) Internetul reprezint o reea distribuit, format din reele globale, regionale i local
e
interconectate ntre ele;
e) Internetul este format din toate calculatoarele lumii, interconectate ntre ele
?
10. Cum se identific calculatoarele n Internet?
11*. Determinai clasa adresei numerice Internet 214.121.216.109. Precizai adresa s
ubreelei i adresa calculatorului n subreea.
* Numai pentru profilul real.
168

12. Desenai o diagram Euler pentru adresele simbolice ce urmeaz. Precizai domeniile
de calculatoare i relaiile respective de incluziune.
a) directie.orhei.md;
d) directie.cahul.md;
b) contabilitate.orhei.md;
e) contabilitate.cahul.md;
c) presedinte.orhei.md;
f)
presedinte.calarasi.md.
13. Indicai corespondena ntre denumirile serviciilor Internet (coloana din stnga) i d
estinaia acestora (coloana din dreapta):
(a) transferul fiierelor de pe calculatorul aflat la distan
pe calculatorul utilizatorului;
(1)
(2)
(3)
(4)

Telnet;
FTP;
E-mail;
WWW.

(b) cutarea informaiilor pe discul magnetic al calculatorului


i afiarea lor la ecran;
(c) editarea imaginilor grafice i transmiterea lor n Internet;
(d) transmiterea scrisorilor electronice;
(e) prelucrarea datelor cu ajutorul unei aplicaii de calcul tabelar
i transmiterea rezultatelor prin pota electronic;
(f)
prezentarea, transmiterea i cutarea informaiilor n Internet;
(g) acces la alte calculatoare, calculatorul utilizatorului devenind
un terminal al calculatorului aflat la distan.
14. Indicai tehnologia de cooperare n reeaua Internet:
a) de la egal-la-egal;
b) client-server;
c) de la egal-la-egal i client-server.
15. Care dintre afirmaiile ce urmeaz snt adevrate:
a) la crearea paginilor Web se folosete limbajul PASCAL;
b) pentru a trimite o scrisoare electronic, avem nevoie de o conexiune Internet;
c) o pagin Web poate conine numai text i imagini;
d) la crearea paginilor Web se folosete limbajul HTML;
e) o pagin Web poate conine text, imagini, secvene sonore i secvene video;
f) scrisorile electronice nu pot fi citite de persoanele strine;
g) serverul de cutare poate citi informaiile de pe orice calculator conectat la In
ternet?
16. Selectai din lista ce urmeaz adresele de cutii potale:
a) www.directie.orhei.md;
d) bjosu@directie.cahul.md;
b) apetrescu@contabilitate.orhei.md;
e) www.contabilitate.cahul.md;

c) ivulpe@presedinte.orhei.md;
f)
munteanu@presedinte.calarasi.md.
169

RSPUNSURI LA TESTELE
DE AUTOEVALUARE
Testul nr. 1
1.
2. Mulimea de valori ale tipului de date OrarulLectiilor este constituit din tablo
uri
bidimensionale. Liniile snt specificate prin indici de tipul ZiDeScoala, iar colo
anele
prin
indici de tipul Lectie.
3.
a) x[1]+ x[2]+ x[3]+ x[4];
b) y[7]+ y[8]+ y[9]+ y[10];
c) abs(x[3]);
d) abs(y[6]);
e) x[1]+ y[10].
4.
Program RTA9;
{ Raspuns la Testul 1, Itemul 4 }
type Numere = array [1..50] of integer;
var A : Numere;
n, i : integer;
begin
write(Dati n=); realn(n);
{ Citim numerele e la tastatura }
for i:=1 to n o
begin
write(A[, i, ]=); realn(A[i]);
en;
{ Afisam numerele la ecran }
writeln(Numerele in orine inversa:);
170

for i:=n ownto 1 o


writeln(A[, i, ]=, A[i]);
realn;
en.
5. Asupra irurilor e tip string se poate efectua operaia e concatenare (juxtapun
ere),
notat prin + . Lungimea curent a unei valori v e tip string poate fi aflat cu ajutoru
l
funciei preefinite length(v) care returneaz o valoare e tip integer. De asemenea
,
asupra irurilor e caractere snt amise operaiile relaionale <, <=, =, >=, >, <>. Re
zultatele
acestor operaii snt e tipul boolean.
6.
Program RTA10;
{ Raspuns la Testul 1, Itemul 6 }
var S : string;
i : integer;
begin
writeln(Dati sirul e caractere:);
realn(S);
writeln(Sirul in orine inversa:);
for i:=length(S) ownto 1 o
write(S[i]);
writeln;
realn;
en.
7.
8.
Program RTA11;
{ Raspuns la Testul 1, Itemul 8 }
type Angajat = recor
NumePrenume : string;
Salariu : real;
en;
ListaDePlata = array [1..100] of Angajat;
var L : ListaDePlata;
171

s : real;
i, n : integer;
begin
write(Dati n=); realn(n);
{ Citirea atelor espre fiecare angajat }
for i:=1 to n o
begin
writeln(Dati atele espre angajatul , i);
write(Numele si prenumele: );
realn(L[i].NumePrenume);
write(Salariul: );
realn(L[i].Salariu);
en;
{ Cautarea salariului maximal }
s:=0;
for i:=1 to n o
if L[i].Salariu > s then s:=L[i].Salariu;
writeln(Salariul maximal = , s:10:2);
{ Afisarea informatiilor }
writeln(Angajatii cu cel mai mare salariu:);
for i:=1 to n o
if L[i].Salariu = s then writeln(L[i].NumePrenume);
realn;
en.
9. Instruciunea with se utilizeaz pentru a reuce textele programelor PASCAL prin
excluerea repetrilor e enumiri ale variabilelor e tip recor (articol).
10. Valorile variabilei V:
[ ] , [ X ] , [ Y ] , [ Z ] , [ X , Y ] , [ X , Z ] , [ Y , Z ] , [ X , Y , Z ] .
Valorile variabilei I:
[ ] , [8] , [9] , [8, 9] .
11.
Program RTA12;
{ Raspuns la Testul 1, Itemul 11 }
var S : string;
i, n : integer;
begin
write(Dati un sir e caractere format in );
writeln(literele mari ale alfabetului latin:);
realn(S);
{ Numaram vocalele in sir }
n:=0;
for i:=1 to length(S) o
if S[i] in [A, E, I, O, U] then n:=n+1;
writeln(Numarul e vocale = , n);
realn;
en.
172

12. Datele fiierelor PASCAL se pstreaz pe suporturile e informaie ale echipamentelo


r
periferice: iscuri i benzi magnetice, iscuri optice, hrtia imprimantei sau a is
pozitivului e citit
ocumente .a. Proceura assign asociaz variabilele e tip fiier in componena progra
melor PASCAL cu fiierele e pe suporturile e informaie ale echipamentelor perifer
ice.
13. n funcie e tipul operaiilor permise asupra componentelor, fiierele se clasific n:
fiiere e intrare (este permis numai citirea);
fiiere e ieire (este permis numai scrierea);
fiiere e actualizare (snt permise scrierea i citirea).
n funcie e moul e acces la componente, fiierele se clasific n:
fiiere cu acces secvenial sau secveniale (accesul la componenta i este permis up
ce s-a citit/scris componenta i 1);
fiiere cu acces aleator sau irect (orice component se poate referi irect prin nu
mrul
ei e orine i n fiier).
14.
Program RTA13;
{ Raspuns la Testul 1, Itemul 14 }
type Angajat = recor
NumePrenume : string;
Salariu : real;
en;
FisierAngajati = file of Angajat;
var A : Angajat;
F : FisierAngajati;
i, n : integer;
begin
{ Crearea fisierului SALARII.DAT }
assign(F, SALARII.DAT);
rewrite(F);
write(Dati n=); realn(n);
for i:= 1 to n o
begin
writeln(Dati atele angajatului , i);
write(Nume, prenume: ); realn(A.NumePrenume);
write(Salariul: ); realn(A.Salariu);
{ Scrierea atelor espre angajat in fisierul F }
write(F, A);
en;
close(F);
en.
15.
Program RTA14;
{ Raspuns la Testul 1, Itemul 15 }
type Angajat = recor
NumePrenume : string;
Salariu : real;
en;
FisierAngajati = file of Angajat;
173

var A : Angajat;
F : FisierAngajati;
begin
assign(F, SALARII.DAT);
reset(F);
writeln(Datele citite in fisierul SALARII.DAT:);
while not eof(F) o
begin
rea(F, A);
writeln(A.NumePrenume, , A.Salariu:10:2);
en;
realn;
close(F);
en.
16.
Program RTA15;
{ Raspuns la Testul 1, itemul 16 }
var a, b : real;
c : string;
Intrare, Iesire : text;
begin
assign(Intrare, REZULTAT.TXT);
reset(Intrare);
assign(Iesire, MEDII.TXT);
rewrite(Iesire);
while not eof(Intrare) o
begin
realn(Intrare, a, b, c);
writeln(Iesire, (a+b)/2, , c);
writeln((a+b)/2, , c);
en;
realn;
close(Intrare);
close(Iesire);
en.
Testul nr. 2
1. 000 , 001 , 010 , 011 , 100 , 101 , 110 , 111 .
2. Rezultatul ecoificrii: CACB. Rezultatul coificrii: 00001 00000 00010.
3. Alfabetul latin este format in 26 e litere. Prin urmare, numrul e mesaje po
sibile ale
sursei e informaie n = 26 + 26 = 52. Cantitatea e informaie ntr-un mesaj:
I = log2 52 5,7 bii.
Din inegalitatea m I, obinem m = 6.
174

4. Numrul e mesaje posibile ale calenarului electronic n = 31 12 100 = 37 200.


Cantitatea e informaie ntr-un mesaj:
I = log2 37 200 15,2 bii.
Din inegalitatea m I, obinem m = 16.
5. I = 8 bii (1 octet).
6. V = 10 min. 200 e caractere/minut 1 octet = 2000 e octei.
7.
Program RTA16;
{ Raspuns la Testul 2, Itemul 7 }
var c : char;
begin
while not eof o
begin
realn(c);
writeln(c, - , or(c));
en;
en.
8.
Program RTA17;
{ Raspuns la Testul 2, Itemul 8 }
var i : integer;
begin
while not eof o
begin
realn(i);
writeln(i, - , char(i));
en;
en.
9. I = (10 10) 30 log2 128 = 21 000 e bii = 2625 e octei.
10. a), c), ), f), h).
11.
12.
13. (1)
(e); (2) (f); (3)
(a); (4) (c).
14. (1)
(c); (2) (f); (3)
(a); (4) (e).
175

Testul nr. 3
1. a) 667; b) 31,5926; c) 176,7551.
2. b) 8 nu este o cifr octal; c) 2, 8, 4 i 6 nu snt cifre binare.
3.
Program RTA18;
{ Raspuns la Testul 3, Itemul 3 }
var b : integer; { baza }
x : string;
{ numarul citit e la
y : integer; { numarul transformat
i : integer;
bi : integer; { baza la puterea i }
begin
write(Dati baza b=); realn(b);
write(Dati un numar scris in baza ,
realn(x);
y:=0;
bi:=1; { baza la puterea 0 }
for i:=length(x) ownto 1 o
begin
y:=y+(or(x[i])-48)*bi;
bi:=bi*b;
en;
writeln(Numarul scris in baza 10: ,
realn;
en.
tastatura }
in baza 10 }
b, : );
y);
4. a) 1101,1110001; b) 111011,10110001; c) 10101000,011101001111.
5. a) 23036,7341; b) 1333,272; c) 155206,542.
6. a) 24FF,D611; b) 2DDB,534; c) 115,7F.
7. (222221)4, (1000001111)2, (BB)16, (132)8.
8. (1D3)16 = (723)8; (25)8 = (21)10.
9.
Program RTA19;
{ Raspuns la Testul 3, Itemul 9 }
var x : string; { numarul octal }
y : string; { numarul binar }
i : integer;
T : array [0..7] of string;
{ T[i] - reprezentarea binara a cifrei octale i }
begin
{ Initializarea tabelului }
T[0]:=000; T[1]:=001;
T[2]:=010; T[3]:=011;
T[4]:=100; T[5]:=101;
176

T[6]:=110; T[7]:=111;
write(Dati un numar octal x=); realn(x);
y:=;
for i:=1 to length(x) o
y:=y+T[x[i]];
writeln(Reprezentarea binara: , y);
realn;
en.
10. a) 1001000111; b) 111100001; c) 100100111; ) 111010.
11.
0 1 1 1 1 1 0 1
12.
1 0 1 0 0 1 0 1
13. a) 1; b) +64; c) 39.
14.
1 1 1 0 0 0 0 0
15. a) 0,1010100125; b) 0,10010010127; c) 0,112 3.
16. b = 8; x = 25.
17. a) 26; b) 45; c) 8.
18. a) [ 8, 7]; b) [ 128, 127]; c) [ 32 768, 32 767].
19. a) 0,375; b) 0,125; c) 0,5.
20. A = 0,9921875; B = 0,9921875.
21. a) 0,109375; b) 7,5; c) 0,25.
22.
1 0 1 0 1 0 1 1
23. A = 7,5; B = 7,5.
Testul nr. 4
1.
x
0
0
0
0
1
y
0
0
1
1
0
z
0
1
0
1
0

1
0
1
0
1
y
0
0

1
0
0
x M y
0
0
1
0
1
177

x
y
z

y
x M y
1
1
1
0
1
1
1
0
1
0
1
0
0
1
0
1
1
1
2. a) i ).
3. {000, 010, 100, 110, 111}.
4.
Program RTA20;
{ Raspuns la Testul 4, Itemul 4 }
var x, y, z, f : boolean;
xx, yy, zz, ff : 0..1;
begin
write(Dati x=); realn(xx);
if xx=0 then x:=false else x:=true;
write(Dati y=); realn(yy);
if yy=0 then y:=false else y:=true;
write(Dati z=); realn(zz);
if zz=0 then z:=false else z:=true;
f:=x an (not y) or z;
if f=false then ff:=0 else ff:=1;
writeln(Valoarea expresiei logice: , ff);
realn;
en.
5.
Program RTA21;
{ Raspuns la Testul 4, Itemul 5 }
var x, y, z, f : boolean;
xx, yy, zz, ff : 0..1;

begin
writeln(x y z f);
writeln();
for x:=false to true o
for y:=false to true o
for z:=false to true o
begin
f:=(not x) an (not y) or z;
if x=false then xx:=0 else xx:=1;
if y=false then yy:=0 else yy:=1;
if z=false then zz:=0 else zz:=1;
if f=false then ff:=0 else ff:=1;
writeln(xx, , yy, , zz, , ff);
en;
realn;
en.
178

6. Domeniul e efiniie: {000, 001, 010, 011, 100, 101, 110, 111}. Domeniul e va
lori: {0, 1}.
7.
x x
0 0
0 0
0 1
0 1
1 0
1 0
1 1
1 1
x!
0
1
0
1
0
1
0
1
y
0
0
0
0
1
1
0
1
8.
Program RTA22;
{ Raspuns la Testul 4, Itemul 8 }
var x1, x2,x3, y : boolean;
xx1, xx2, xx3, yy : 0..1;
begin
write(Dati x1=); realn(xx1);
if xx1=0 then x1:=false else x1:=true;
write(Dati x2=); realn(xx2);
if xx2=0 then x2:=false else x2:=true;
write(Dati x3=); realn(xx3);
if xx3=0 then x3:=false else x3:=true;
y:=x1 an ((not x2) or (not x3));
if y=false then yy:=0 else yy:=1;
writeln(Valoarea functiei logice y=, yy);
realn;
en.
9.
Program RTA21;
{ Raspuns la Testul 4, Itemul 9 }
var x1,x2, x3, y : boolean;
xx1, xx2, xx3, yy : 0..1;
begin
writeln(x1 x2 x3 y);
writeln();
for x1:=false to true o
for x2:=false to true o

for x3:=false to true o


begin
y:=(not x1) an (x2 or x3);
if x1=false then xx1:=0 else xx1:=1;
if x2=false then xx2:=0 else xx2:=1;
if x3=false then xx3:=0 else xx3:=1;
179

if y=false then yy:=0 else yy:=1;


writeln( , xx1, , xx2, , xx3,
en;
realn;
en.
5
10. 22 = 4294967296.
11.
I-NU
SAU-NU
x
x
xx
x
x
x M x
0
0
1
1
0
1
0
1
1
1
1
0
0
0
1
1
0
1
0
1
1
0
0
0
12. a) i c); b) i ).
13. b).
Testul nr. 5

1.
2.
180
, yy);

3. y = (x1 x2) (2 3).


4.
Program RTA24;
{ Raspuns la Testul 5, Itemul 4 }
var a, b, s, t : char;
begin
write(Dati a=); realn(a);
write(Dati b=); realn(b);
if (a=0) an (b=0) then begin
if (a=0) an (b=1) then begin
if (a=1) an (b=0) then begin
if (a=1) an (b=1) then begin
writeln(s=, s, , J=, t);
realn;
en.
s:=0;
s:=1;
s:=1;
s:=1;
t:=0;
t:=0;
t:=0;
t:=1;
en;
en;
en;
en;

5. Un semisumator conine 2 pori logice NU, 3 pori logice I i o poart logic SAU
(fig. 5.10). Un sumator elementar conine 2 semisumatoare i o poart logic SAU (fig. 5
.11).
Prin urmare, un sumator elementar conine 4 pori logice NU, 6 pori logice I i 3 pori lo
gice
SAU. Evient, un sumator e n bii conine 4n pori logice NU, 6n pori logice I i 3n pori
logice SAU (fig. 5.12). Pentru un sumator e n = 8 bii, obinem: 32 e pori logice N
U; 48 e
pori logice I; 24 e pori logice SAU.
6.
Program RTA25;
{ Raspuns la Testul 5, Itemul 6 }
label 1;
var A, B, S : string;
t : char;
{ transportul }
i : integer;
begin
writeln(Dati oua numere binare A si B. Fiecare numar);
writeln(trebuie sa contina exact 8 cifre binare.);
write(A=); realn(A);
write(B=); realn(B);
t:=0;
{ initial transportul t=0 }
S:=xxxxxxxx; { initial suma S este necunoscuta }
for i:=8 ownto 1 o
begin
{ aunarea cifrelor binare A[i], B[i], T[i-1] }
if (A[i]=0) an (B[i]=0) an (t=0) then

begin S[i]:=0; t:=0; goto 1;


if (A[i]=0) an (B[i]=0) an
begin S[i]:=1; t:=0; goto 1;
if (A[i]=0) an (B[i]=1) an
begin S[i]:=1; t:=0; goto 1;
if (A[i]=0) an (B[i]=1) an
begin S[i]:=0; t:=1; goto 1;
181

en;
(t=1) then
en;
(t=0) then
en;
(t=1) then
en;

if (A[i]=1) an (B[i]=0) an (t=0)


begin S[i]:=1; t:=0; en;
if (A[i]=1) an (B[i]=0) an (t=1)
begin S[i]:=0; t:=1; goto 1; en;
if (A[i]=1) an (B[i]=1) an (t=0)
begin S[i]:=0; t:=1; goto 1; en;
if (A[i]=1) an (B[i]=1) an (t=1)
begin S[i]:=1; t:=1; goto 1; en;
1: en;
writeln(S=, S);
writeln(Cifra e epasire t=, t);
realn;
en.
7. (1) (e); (2)
(g); (3) (a); (4)
8. y1
SUS; y2
JOS; y3
STNGA; y4
x1
x2
y1
y2
y3
y4
0
0
1
1
0
1
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
9. Q = 1 i = 0.
10.

then
then
then
then

(); (5)
DREAPTA.

(h); (6)

(c).

11. (1)
(); (2)
(i); (3) (g); (4)
12. 00010011.
13. 11010000.
14.
Program RTA26;
{ Raspuns la Testul 5, Itemul 14 }
var R : string;
n, m, i, j : integer;
182

(a); (5)

(c); (6)

(f).

begin
writeln(Dati continutul initial al registrului);
write(R=); realn(R);
n:=length(R); { capacitatea registrului }
write(Dati m=); realn(m);
for j:=1 to m o
begin
{ eplasarea cu o pozitie }
for i:=1 to n-1 o R[i]:=R[i+1];
R[n]:=0;
en;
writeln(Continutul registrului upa eplasare);
writeln(R=, R);
realn;
en.
15. 10010011.
16. 10101001.
17.
Program RTA27;
{ Raspuns la Testul 5, Itemul 17 }
label 1;
var A : string;
n, m, i, j : integer;
t : char; { transportul }
begin
writeln(Dati continutul initial al numaratorului);
write(A=); realn(A);
n:=length(A); { capacitatea numaratorului }
write(Dati m=); realn(m);
for j:=1 to m o
begin
{ aunarea unitatii la continutul numaratorului }
t:=1;
for i:=n ownto 1 o
begin
{ aunarea transportului la cifra A[i] }
if (A[i]=0) an (t=0) then
begin A[i]:=0; t:=0; goto 1; en;
if (A[i]=0) an (t=1) then
begin A[i]:=1; t:=0; goto 1; en;
if (A[i]=1) an (t=0) then
begin A[i]:=1; t:=0; goto 1; en;
if (A[i]=1) an (t=1) then
begin A[i]:=0; t:=1; goto 1; en;
1: en;
en;
writeln(B=, A);
realn;
en.
183

Testul nr. 6
1. (1)
(i); (2)
(f); (3) (a); (4)
(c); (5) (); (6)
(g).
2. Tastatura, mouse-ul, vizualizatorul, imprimanta, unitatea e isc magnetic, u
nitatea e
isc optic, cititorul e ocumente (scanerul).
3. a), c), f).
4. Magistrala asigur comunicarea procesorului cu memoria intern i echipamentul
periferic.
5. Vezi figura 6.2. Componentele obligatorii: procesorul, magistrala, memoria in
tern, controlerul, ispozitivul e intrare-ieire.
6. Coul instruciunii
n acest cmp se inic operaia ce trebuie executat. Ares operan
i Ares operan 2
n aceste cmpuri se inic aresele locaiilor in memoria
intern care conin, respectiv, primul i al oilea operan. Ares rezultat
inic aresa
locaiei in memoria intern n care va fi epus rezultatul operaiei.
7. a) numrul in locaia 101 este aunat cu numrul in locaia 153, iar rezultatul obin
ut
este epus n locaia 342;
b) numrul in locaia 508 este mprit la numrul in locaia 391, iar rezultatul obinut
este epus n locaia 216;
c) numrul in locaia 751 este nmulit cu numrul in locaia 852, iar rezultatul obinut
este epus n locaia 031;
) in numrul in locaia 450 se scae numrul in locaia 709, iar rezultatul obinut
este epus n locaia 011.
8. a), c), f)
instruciuni operaionale; g)
instruciune e transfer; e)
instruciune 
salt; b), )
instruciuni e intrare-ieire.
9.
INC
MEM
SCD
ADU
X
S
Y
X
10.
01
02
01
02
01
583
461
971
583
461
11. a), ), f), h)
resurse tehnice; b), c), e), g)
resurse programate.
12. n cazul memoriilor externe cu acces secvenial scrierea/citirea nregistrrii orit
e este
posibil oar up scrierea/citirea tuturor nregistrrilor preceente. n cazul memoriilo
r externe cu acces irect orice nregistrare poate fi scris/citit fr a mai citi/scrie n
registrrile
preceente.
13. b), c), e).
184

14. b), e).


15. 2867,2 Koctei/s.
16. a), c), ).
17. a), b), e).
18. Parametrii e baz ai unui calculator:
viteza e operare;
capacitatea memoriei interne;
componena, capacitatea i timpul e acces ale unitilor e memorie extern;
componena i parametrii tehnici respectivi ai echipamentelor periferice;
parametrii e mas i gabarit;
costul.
19. Parametrii e baz ai microprocesorului:
lungimea cuvntului;
frecvena ceasului e sistem;
capacitatea magistralelor;
capacitatea e prelucrare.
Testul nr. 7
1. a) 6 ore; b) 12 min. 30 s; c) 0,73 s; ) 0,00072 s.
2. b), ).
3. Calculatoarele, aaptoarele e reea, structura e comunicare.
4. a), c).
5. a), ).
6. Un protocol e reea efinete moul e aresare a calculatoarelor, lungimea i com
ponena pachetelor e ate, algoritmul e epistare i corectare a erorilor, moul 
e conectare
fizic a aaptoarelor i cablurilor e reea.
7. Arhitectura unei reele reprezint moul n care este conceput reeaua: topologia,
protocoalele e comunicaie, tehnologiile e cooperare n reea.
8. Vezi figura 7.5.
9. ).
10. n Internet calculatoarele se ientific cu ajutorul areselor. Acestea pot fi 
e ou
tipuri: arese numerice i arese simbolice.
11. ntruct (214)10 = (11010110)2, iar biii 0-2 au valoarea 110, aresa Internet apa
rine clasei C. n cazul clasei C aresa subreelei se inic n biii 3-32 ai aresei numer
ice. Din primul octet al aresei numerice selectm biii 3-7 i transformm numrul binar
obinut n sistemul zecimal: (10110) 2 = (22) 10. Prin urmare, aresa subreelei este
22.121.216. Numrul 109 in ultimul octet al aresei numerice reprezint aresa calc
ulatorului n subreea.
185

12. m omeniul e cel mai nalt nivel. Acest omeniu inclue subomeniile orhei,
cahul i calarasi. Subomeniul orhei inclue calculatoarele irectie, contabilitat
e i
preseinte. Subomeniul cahul inclue calculatoarele irectie i contabilitate. Su
bomeniul calarasi inclue calculatorul preseinte.
13. (1)
(g); (2) (a); (3)
(); (4)
(f).
14. b).
15. b), ), e).
16. b), c), ), f).
186

Bibliografie
1. Bolun Ion. Iniiere n reele. INTERNET. Chiinu, Eitura ASEM, 1997.
2. Ceapru Mihai. Comunicaia prin intermeiul reelelor e calculatoare. Bucureti, Ei
tura
Tehnic, 1996.
3. Cerchez Emanuela. Internet. Manual pentru liceu. Filiera teoretic. Iai, Eitura
Polirom,
2000.
4. Cerchez Emanuela, erban Marinel. Informatica pentru gimnaziu. Iai, Eitura Poli
rom, 2002.
5. Gremalschi Anatol, Mocanu Iurie, Spinei Ion. Informatica. Limbajul PASCAL. Ch
iinu, Eitura tiina, 2003.
6. Gremalschi Lumila, Mocanu Iurie. Structura i funcionarea calculatorului. Mater
ial iactic pentru licee i colegii. Chiinu, Eitura Lyceum, 1996.
7. Gremalschi Anatol, Bejan Viorel, Gremalschi Lumila. Structura calculatoarelo
r numerice.
Material iactic. Chiinu, UTM, 1996.
8. Levine John R. Internet pentru toi. Bucureti, Eitura Teora, 1996.
9. Lowe Doug. Reele pentru toi. Bucureti, Eitura Teora, 1995.
10. Mranu Rau. Sisteme e calcul. Manual pentru licee e informatic, clasa a IX-a.
R.A. Bucureti, Eitura Diactic i Peagogic, 1995.
11. Mranu Rau, Velicanu Manole. Tehnic e calcul. Manual pentru clasa a XII-a. Buc
ureti, Eitura ALL, 1999.
12. Mihoc Dan, Iliescu Sergiu Stelian. Elemente e informatic. Mecanizarea i autom
atizarea
prouciei. Manual pentru licee inustriale, clasa a XII-a. R.A. Bucureti, Eitura
Diactic i
Peagogic, 1995.
13. Mucenic Boiu, Mihai Boiu, Eugen tefan. Compact isc. Bucureti, Eitura Teora, 1995
.
14. Pfaffenberger Bryan, Petersen Juy. Dicionar explicativ e calculatoare. Bucu
reti, Eitura Teora, 1996.
15. Petrescu Arian, Iacob Francisc, Racovi Zoe. Iniiere n structura calculatoarelor
electronice. Bucureti, Eitura Teora, 1996.
16. Petrescu Silviu. Informatica aplicat: manual e informatic pentru clasa a XIIa. Bucureti, Eitura Teora, 1998.
17. Secrieru Nicolae, Gremalschi Anatol, Cornea Ion. Arhitectura i organizarea mi
croprocesoarelor. Chiinu, Eitura Universitas, 1995.
18. Velicanu Manole, Vasilescu Arian. Bazele informaticii. Manual pentru clasa
a XII-a. Bucureti, Eitura ALL, 1999.
19. .., .., .., .. . . -
20. .., .., .., .. .
7-9 . .: , 1999.
187

Manualul acesta este proprietatea Ministerului Eucaiei al Republicii Molova.


Liceul ___________________________________________________________________
Manualul nr. ______________
Anul
e folosire
Numele i prenumele
elevului
Anul
colar
Aspectul manualului
la primire
la restituire
1.
2.
3.
4.
5.

Dirigintele trebuie s controleze ac numele elevului este scris corect.


Elevul nu trebuie s fac niciun fel e nsemnri pe pagini.
Aspectul manualului (la primire i la restituire) se va aprecia folosin termenii:
nou, bun,
satisfctor, nesatisfctor.

Imprimare la Tipografia SEREBIA


str. Calea Ieilor, 10;
MD-2069, Republica Molova
Comana nr. 105

SRL

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