Sunteți pe pagina 1din 74

-Bazele Informaticii Economice 1

Cuprins

Cuprins 2
CAPITOLUL 1-------------------------------------------------------------3
1.1. Algoritmi: definiii, propriet!i-------------------------------------------------------------3
1.2. Structurile fundamentale ale algoritmilor------------------------------------------------4
1.3 Reprezentarea algoritmilor -----------------------------------------------------------------8
1.3.1. Schemele logice ------------------------------------------------------------------------ 8
1.3.2. Limbajul algoritmic (pseudocod)--------------------------------------------------- 11
1.3.3. Programarea structurat ------------------------------------------------------------- 17
1.4. Subrutine-------------------------------------------------------------------------------------- 18
1.4.1. Ce este o subrutin?------------------------------------------------------------------ 18
1.4.2. Modul de definire al subrutinelor -------------------------------------------------- 18
CAPITOLUL 2----------------------------------------------------------- 23
2.1. Noiuni de baz! privind prelucrarea automat! a datelor --------------------------- 23
2.1.1. Informa#ie. Dat. Decizie------------------------------------------------------------ 23
2.1.2. Procesul de prelucrare a datelor.---------------------------------------------------- 23
2.1.3. Circuit informa#ional, flux informa#ional------------------------------------------ 25
2.1.4. Etapele procesului de prelucrare automat a datelor----------------------------- 27
2.2. Tipuri de date-------------------------------------------------------------------------------- 29
2.2.1. Clasificarea tipurilor de date-------------------------------------------------------- 29
2.2.2. Tipuri de date elementare (simple)------------------------------------------------- 30
2.2.3. Tipuri de date structurate, statice--------------------------------------------------- 30
2.3. Structuri liniare------------------------------------------------------------------------------ 31
2.3.1. Stive, cozi, liste----------------------------------------------------------------------- 31
2.4. Structuri arborescente--------------------------------------------------------------------- 34
2.5. Grafuri ---------------------------------------------------------------------------------------- 37
2.5.1. Defini#ii, generalit#i: reprezentarea grafurilor ----------------------------------- 37
2.5.2. Grafuri orientate ---------------------------------------------------------------------- 38
2.5.3. Grafuri neorientate ------------------------------------------------------------------- 40
2.6. Fi$iere------------------------------------------------------------------------------------------ 40
2.6.1. Concepte fudamentale: suport, organizare, acces -------------------------------- 40
2.6.2. Opera#ii cu fi$iere -------------------------------------------------------------------- 41
CAPITOLUL 3----------------------------------------------------------- 42
3.1. Conceptul de arhitectur! a unui sistem de calcul (SC) ------------------------------ 42
3.2. Evoluia $i clasificarea sistemelor de calcul -------------------------------------------- 43
3.3. Arhitectura general! a unui calculator numeric-------------------------------------- 46
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 2

3.4. Reele de calculatoare.---------------------------------------------------------------------- 53
3.4.1. Clasificarea $i tipurile de comunica#ie--------------------------------------------- 54
3.4.2. Elemente de sisteme deschise------------------------------------------------------- 55
3.4.3. Structura unei re#ele locale---------------------------------------------------------- 57
3.4.4. Topologii de re#ea -------------------------------------------------------------------- 58
3.5. Comunicaia prin INTERNET ----------------------------------------------------------- 59
CAPITOLUL 4----------------------------------------------------------- 61
4.1. Sisteme de numeraie---------------------------------------------------------------------------- 61
4.1.1. Scrierea numerelor naturale ntr-o baz b ----------------------------------------- 62
4.1.2. Scrierea numerelor reale ntr-o baz b--------------------------------------------- 62
4.1.3. Schimbarea bazei de numera#ie----------------------------------------------------- 63
4.2. Codificarea datelor numerice n sistemele de calcul---------------------------------- 65
4.2.1. Reprezentarea ntregilor fr semn------------------------------------------------- 66
4.2.2. Reprezentarea numerelor ntregi cu semn----------------------------------------- 66
4.2.3. Reprezentarea n virgul flotant--------------------------------------------------- 68
4.3. Codificarea datelor alfanumerice n sistemele de calcul----------------------------- 70
4.4. Bazele logice ale sistemelor de calcul ---------------------------------------------------- 72
4.4.1. Elemente de algebr boolean ------------------------------------------------------------- 72
BIBLIOGRAFIE-------------------------------------------------------------------------------------- 74
































-Bazele Informaticii Economice 3

Capitolul 1
Algoritmi
1.1. Algoritmi: definiii, propriet!i
Conceptul de algoritm este fundamental pentru informatic. Termenul
de algoritm este foarte vechi $i provine de la numele matematicianului persan
Abu Jafar Mohammed Ibn Musa al-Khowarizm care a trit n jurul anului 850
d.Ch. n Asia Central $i care a scris o carte de matematic cunoscut n
traducere latin sub numele de Algorithmi de numero indorum, unde algorithm
provine de la al-Khwarizm, ceea ce, literal, nseamn din ora$ul Khwarizm. n
prezent acest ora$ se nume$te Khiva, $i se afl n Uzbekistan.
Dic#ionarul Webster define$te cuvntul algoritm ca fiind orice fel de
metod pentru a rezolva o anumit categorie de probleme. Acest cuvnt a
primit o conota#ie aparte n informatic, unde este utilizat pentru a desemna
orice fel de metod precis, care poate fi utilizat de calculator, pentru a
solu#iona un anumit gen de probleme.

Definiie: Un algoritm este o list de instruc#iuni care descriu precis un
proces ce se desf$oar pas cu pas $i care asigur c va da un rspuns pentru
orice problem de un tip dat $i care se termin dup parcurgerea unui numr
finit de pa$i.

n general, un algoritm are cinci propriet#i fundamentale sau de baz $i
anume:
1) Finitudine. Un algoritm se termin totdeauna dup un numr finit de
pa$i. O structur care are forma unui algoritm dar care poate s nu se
termine se nume$te metod! de calcul.
2) Determinism. ntr-un algoritm fiecare pas se succede unul altuia $i este
bine determinat nelsnd loc de ambiguit#i.
3) Intrare. Intrarea unui algoritm este o colec#ie de informa#ii necesare
pa$ilor si pentru ca ace$tia s s poat fi executa#i.
4) Ie$ire. Un algoritm furnizeaz totdeauna un rezultat ob#inut din execu#ia
pa$ilor si, rezultat ce este ntr-o anumit rela#ie cu intrrile.
5) Eficacitate. Un algoritm trebuie s se termine ntr-un timp acceptabil
astfel nct rezultatul su s fie utilizabil. Nu sunt interesan#i algoritmii
poten#iali, ce dau rezultatul ntr-un timp foarte mare.
-Bazele Informaticii Economice 4

1.2. Structurile fundamentale ale algoritmilor
Din punct de vedere structural, orice algoritm se prezint ca un bloc care
are o anumit structur. Exist un numr (mic) de structuri ce pot aprea n
descrierea unui algoritm sau, altfel spus, orice algoritm este rezultatul
combinrii unor astfel de structuri, numite structuri fundamentale, a cror
clasificare o prezentm n continuare:

I. STRUCTURI SECVEN'IALE
1. Secven#a;
II. STRUCTURI DE SELEC'IE
1. Selec#ia simpl;
2. Selec#ia propriu-zis (structur alternativ);
3. Selec#ia multipl;
III. STRUCTURI REPETITIVE (ITERATIVE)
1. Structura repetitiv precondi#ionat (numit $i structur repetitiv cu
test ini#ial);
2. Structura repetitiv postcondi#ionat (numit $i structur repetitiv
cu test final);
3. Structura repetitiv cu numr de pa$i cunoscut.

Aceste structuri sunt suficiente pentru reprezentarea oricrui algoritm
propriu, adic a oricrui algoritm care are un singur punct de intrare $i un
singur punct de ie$ire ( nu to#i algoritmii sunt proprii, unii algoritmi pot avea
mai multe puncte de intrare). Aceste structuri fundamentale nu sunt (toate)
necesare. S-a demonstrat (Bohm $i Jacopini, 1966) teorema de structur, care
afirm c orice algoritm propriu poate fi transformat ntr-un algoritm echivalent
care s con#in numai trei structuri fundamentale:
secven#a;
selec#ia propriu-zis;
itera#ia precondi#ionat.
Pe de alt parte, exist algoritmi care nu sunt proprii (de exemplu:
algoritmii recursivi) $i care nu mai pot fi reprezenta#i numai cu ajutorul celor
$apte structuri fundamentale, enumerate mai sus, prin urmare trebuie s mai
adugm la acestea nc un element de structur, numit subalgoritm. Un
subalgoritm este tot un bloc format din structuri fundamentale, dar care, n
plus, se poate apela pe sine nsu$i, permi#nd astfel descrierea proceselor
recursive de calcul. Prin definirea (crearea) unui subalgoritm, se ating mai
multe obiective:
parametrizarea datelor: datele de intrare $i datele de ie$ire sunt
prezentate ntr-un subalgoritm prin intermediul parametrilor (numi#i
parametri formali);
abstractizarea prelucrrilor: toate opera#iile sunt aplicate asupra
parametrilor, deci nu este necesar cunoa$terea n detaliu a acestor
opera#ii, ci numai efectul final al acestora;
-Bazele Informaticii Economice 5

crearea posibilit#ii descrierii proceselor (func#iilor) recursive, prin
apelarea subalgoritmului nsu$i chiar n interiorul descrierii sale.

O metod de reprezentare a algoritmilor comport:
un set de elemente de reprezentare $i
un set de reguli pentru utilizarea elementelor de reprezentare $i trebuie
s fie un instrument:
a) u$or de n#eles $i de utilizat $i, n acela$i timp,
b) suficient de puternic, pentru a permite reprezentarea tuturor
proceselor de calcul.
S-au creat mai multe astfel de mijloace de comunicare a algoritmilor,
din care cele mai des utilizate sunt:
schemele logice;
pseudocodul (numit $i pseudolimbaj sau limbaj structurat);
diagramele structurate.
n continuare prezentm structurile algoritmilor cu ajutorul
pseudocodului.
n cadrul acestei metode de reprezentare, elementele de reprezentare
sunt ni$te cuvinte, numite cuvinte rezervate (sau cuvinte cheie), care se folosesc
ntr-un mod bine determinat, nu neaprat legat de n#elesul acestora n limba
romn.
Cuvintele rezervate vor fi scrise cu litere groase. Exemple de cuvinte rezervate:
start, stop, dac!, atunci, execut!, pentru, etc. Terminarea unei structuri (sau
a unui bloc) se marcheaz, de regul, cu caracterul ; , iar dup stopsau sfr$it -
nume se pune punct.

1. Secven#a

Are urmtoarea sintax (form corect):
-------------------
Bloc 1;
Cite$te x;
Scrie y;
Bloc 2;
------------------
Efectul const n execu#ia, n ordinea n$iruirii, a opera#iilor $i blocurilor
care apar n secven#.

2. Selec#ia simpl

Are urmtoarea sintax:

dac! expr-cond atunci bloc;

n aceast structur expr-cond este o expresie condi#ional, adic o
expresie a crei valoare final este o valoare logic (adevrat sau fals) iar bloc
-Bazele Informaticii Economice 6

este un bloc care poate avea orice structur, inclusiv apelul unui subalgoritm.
Care este efectul acestei structuri?
nti se evalueaz expresia condi#ional; dac se ob#ine valuarea
adevrat, se execut bloc $i apoi se trece la structura urmtoare; dac se ob#ine
valoarea fals, nu se execut bloc $i se trece direct la structura urmtoare.

3. Selec#ia propriu-zis
Are urmtoarea sintax:

dac! expr-cond atunci bloc-1
altfel bloc-2;

Dac expr-cond ia valoarea adevrat, atunci se execut bloc-1 $i se trece
la structura urmtoare; n caz contrar, se execut bloc-2 $i se continu cu
structura urmtoare.

4. Selec#ia multipl

Are sintaxa:

dup! caz v execut!
lista-1: bloc-1;
lista-2: bloc-2;
-----------------
lista-n: bloc-n
altfel
bloc-0;

n aceast structur, v este o variabil, iar lista-1, lista-2, , lista-n
sunt mul#imi disjuncte de valori posibile ale variabilei v.
Dac valoarea lui v apare n lista-k, atunci se execut bloc-k $i se trece la
structura urmtoare; dac valoarea lui v nu se gse$te n nici o list, atunci se
execut bloc-0 $i apoi se trece la structura urmtoare.

5. Structura repetitiv precondi#ionat

Are sintaxa:

ct timpexpr-cond execut! bloc;

n aceast structur, expr-cond $i bloc au semnifica#iile artate mai sus.
Pentru a executa o astfel de structur, se procedeaz astfel:
se evalueaz expr-cond;
dac se ob#ine valoarea adevrat, se execut bloc $i apoi se evalueaz,
din nou, expr-cond;
-Bazele Informaticii Economice 7

dac se ob#ine fals, nu se mai execut bloc $i se trece la structura
urmtoare (adic se iese din structura respectiv, numit $i ciclu).
Cu alte cuvinte, se repet execu#ia blocului bloc n func#ie de modul n
care este ndeplinit condi#ia cuprins n expr-cond.

6. Structura repetitiv postcondi#ionat:

Are sintaxa:

repet!
bloc
pn! cnd expr-cond

Efectul:
se execut bloc;
se evalueaz expr-cond;
dac se ob#ine adevrat, se trece la structura urmtoare;
dac se ob#ine fals, se execut din nou bloc, se evalueaz expr-cond etc.

7. Structura repetitiv cu numr de pa$i cunoscut:

Are sintaxa:
pentru
i
v v lav
f
pas p execut! bloc;
n aceast structur:
v este o variabil;
v
i
$i v
f
sunt expresii calculabile ale cror valori posibile pot fi atribuite
variabilei v;
p este pasul de trecere de la v
i
(valoare ini#ial) la v
f
(valoarea final);
dac p > 0, atunci trebuie ca
f i
v v iar dac p < 0, atunci trebuie ca
f i
v v ; dac p=1, atunci nu mai apare pasp $i valoarea acestuia se
subn#elege;
Iat cum se execut aceast structur:

P1: se atribuie lui v valoarea v
i
;
P2: dac p > 0 $i
f
v v , atunci:
-se execut bloc;
-se atribuie p v v +
-se trece la P2;
P3: dac p > 0 $i
f
v v > , atunci nu se mai execut bloc $i se trece la
structura urmtoare;
P4: dac p < 0 $i
f
v v , atunci:
-se execut bloc;
-se atribuie p v v + ;
-Bazele Informaticii Economice 8

-se trece la P4;
P5: dac p < 0 $i
f
v v < , atunci nu se mai execut bloc $i se trece la
structura urmtoare.

Cu alte cuvinte, numrul de execu#ii ale bloc-ului este calculabil nainte
de intrarea n structura repetitiv $i este egal cu 1
p
v v
i f
+


.
1.3 Reprezentarea algoritmilor

Exist o mare varietate de modalit#i de exprimare a algoritmilor. Putem
alege, de exemplu, pentru reprezentarea algoritmilor un limbaj natural, cum ar
fi limba romn, dar n aceast situa#ie trebuie s fim aten#i ca opera#iile pe
care le formulm s respecte propriet#ile prezentate n paragraful anterior.
Pentru a u$ura scrierea unor algoritmi ale cror opera#ii respect criteriul
de definire $i fezabilitate, s-au dezvoltat limbaje speciale pentru exprimarea
algoritmilor numite metode de reprezentare.
Cele mai rspndite metode de reprezentare sunt schemele logice $i
limbajul algoritmic (pseudocodul). De$i schemele logice nu sunt utilizate de
ctre programatorii mai avansa#i, deoarece de la un moment dat devin greoaie,
pentru programatorul nceptor ele constituie totu$i un instrument excelent
pentru asimilarea primelor no#iuni despre algoritmi. Din acest motiv, la nceput
vom utiliza ambele metode de reprezentare, urmnd ca treptat s renun#m la
schemele logice n favoarea limbajului algoritmic.

1.3.1. Schemele logice

Prin scheme logice se realizeaz o reprezentare grafic a modului n care
se succed opera#iile prevazute n algoritm. Schemele logice sunt u$or de
urmrit, deoarece direc#ia de mers a algoritmului poate fi vizualizat ca un
traseu grafic.
Schemele logice sunt formate din instruc#iuni. Instruc#iunile descriu
ac#iunile algoritmului reprezentat prin schema logic. Fiecare instruc#iune este
ncadrat ntr-o figur geometric (dreptunghi, trapez, romb, etc) care i indic
tipul.
Exist n algoritmi anumite componente ale caror valori variaz n
cursul execu#iei. Aceste elemente se numesc variabile $i referirea la ele se face
printr-un nume care este alctuit din litere $i cifre, nume care ncepe cu o litera
(exemplu: i. aux, x1 etc). Este util ca numele fiecarei variabile s fie ales ct
mai sugestiv pentru semnifica#ia ei n cadrul problemei.
-Bazele Informaticii Economice 9

Prezentm acum elementele care compun o schema logic.

1. Fiecare algoritm are un nceput $i un sfr$it. nceputul $i sfr$itul
algoritmului sunt desemnate prin instruc#iuni speciale: START pentru
nceperea algoritmului $i STOP pentru oprirea calculelor. Ele sunt ncadrate
ntr-un dreptunghi cu marginile laterale rotunjite ca n figurile 1.1 $i 1.2.
2. Un algoritm are date de intrare $i date de ie$ire. Preluarea datelor de
intrare se realizeaz utiliznd instruc#iunea CITE(TE (Fig. 1.3). Ea are efect
ncrcarea datelor de intrare n variabilele x1, x2,...,xn.
3. Afi$area datelor de ie$ire se realizeaz cu instruc#iunea SCRIE (Fig.
1.4), unde a1,a2,...,an sunt nume de variabilesau mesaje. Un mesaj este un
text cuprins ntre apostrofuri (de exemplu, `Acesta este un mesaj`). Scrierea
unei variabile nseamn scrierea con#inutului ei, scrierea unui mesaj const n
scrierea textului cuprins ntre apostrofuri.
4. Instruc#iunea de atribuire are forma din figura 1.5, unde v este o
variabil, iar e este o expresie algebric. Atribuirea are ca efect evaluarea
expresiei e, dup care con#inutul variabilei v este nlocuit cu valoarea
expresiei; vechea valoare a lui v (dac a avut vreuna) se pierde.
5. Instruc#iunea de decizie are forma din figura 1.6, unde p este o
expresie logic. Se evalueaz p, dup care, dac valoarea rezultat este
adevarat, se continu calculele pe ramura din dreapta, iar dac valoarea
rezultat este fals se continu calculele pe ramura din stanga.



Fig. 1.5 Atribuirea
e v
p
Fig.1.6 Instruciunea de decizie
NU DA
STOP
CITE'TE
x1,x2,,xn
START
SCRIE
a1,a2,,an
Fig. 1.1 Fig. 1.2 Fig. 1.3 Fig. 1.4
Fig. 1.1 1.4 Instruciunile START, STOP, CITE'TE,
SCRIE
-Bazele Informaticii Economice 10

Vom vedea modul n care se asambleaz par#ile componente ale
schemelor logice prin cteva exemple. Pentru nceput, vom scrie schema logic
pentru algoritmul de calcul al modulului unui numar real. (Fig. 1.7).



1. citete valoarea lui x
2. compar# x cu 0
3. dac# x este pozitiv
atunci y ia valoarea lui x
altfel y ia valoarea lui x
4. scrie valoarea lui y








n figura 1.8 este prezentat schema
logic pentru rezolvarea ecua#iei de gradul
1.

1. citete valorile lui a i b
2. dac# a este nenul, scrie
valoarea b/a i treci la
pasul 4, altfel treci la pasul
3
3. dac# b este nenul, atunci scrie
Ecua&ia nu are solu&ii
4. altfel scrie Solu&ia este spa&iul real



Fig. 1.7 Calculul modulului unui
num!r real x
START
SCRIE
y
STOP
CITE'TE
x
y -x y x
x>0
NU DA
START
CITE'TE
a,b
a<>0
NU DA
b<>0
NU DA
SCRIE
x oarecare
SCRIE
Nu are sol
STOP
SCRIE
x
x -b/a
Fig. 1.8 Rezolvarea ecuaiei de gradul I
-Bazele Informaticii Economice 11

Simbolul < > utilizat n schema logic din figura 1.8 are semnifica#ia
diferit de.
Regulile fundamentale care descriu modul de nln#ire al schemelor
logice sunt:
schema logic ncepe cu instruc#iunea START;
extremitatea final a unei instruc#iuni (excep#ie instruc#iunea STOP
care nu are extremitate final);
extremitatea ini#ial a unei instruc#iuni este legat de extremitatea
final unei singure instruc#iuni (excep#ie instruc#iunea START care
nu are extremitate ini#ial);
schema logic se ncheie cu instruc#iunea STOP.

1.3.2. Limbajul algoritmic (pseudocod)

Un alt mod de reprezentare al algoritmilor este limbajul algoritmic
(numit $i pseudocod). Limbajul algoritmic, beneficiaz att de rigurozitatea
limbajelor de programare ct $i de flexibilitatea limbajului uman. Nu exist un
standard unanim acceptat al pseudocodului; fiecare autor prezint propria
versiune de pseudocod, adaptat exigentelor proprii; diferen#ele ntre diferitele
versiuni sunt, totu$i, minore.
Vom ntelege prin programn limbajul algoritmic o succesiune de
instruc#iuni ale limbajului. Instruc#iunile se executa succesiv, n ordinea n care
au fost scrise.
Iat care sunt instruc#iunile limbajului pseudocod, corespunzatoare
instruc#iunilor din schemele logice:
1. nceputul $i sfr$itul algoritmului sunt desemnate prin instruc#iunile
start, respectiv stop.
2. Instruc#iunea de citire are forma:
citete x1,x2,..., xn, unde x1,...,xn sunt variabile.
3. Instruc#iunea de scriere are forma:
scrie a1, a2,..., an
,unde a1,...,an sunt variabile sau mesaje, a$a cum am precizat $i la
schemele logice.
4. Instruc#iunea de atribuire are forma ve, unde v este o variabil, iar e
este o expresie.
5. Instruc#iunea de ramificare (caz particular al instruc#iunii de decizie!)
care are forma:

dac# p atunci
instruc&iuni1
altfel
instruc&iuni2
sfrit dac#




NU
Instruciuni1 Instruciuni2
p
DA
Fig. 1.9.A Instruciunea de ramificare
-Bazele Informaticii Economice 12


Se evalueaz condi#ia p. Dac p este adevarat, atunci se executa
instruc#iuni1, altfel se execut instruc#iuni2. Ramura altfel a instruc#iunii
de decizie poate s lipseasc:



dac# p atunci
instruc&iuni1
sfrit dac#




Iat care este programul pseudocod pentru calculul modulului unui
numr arbitrar x (Exemplul 1):

start
citeste x
dac# x>0 atunci
y x
altfel
y -x
sfrit dac#
scrie y
stop

Prezentm acum programul pseudocod pentru rezolvarea ecua#iei de
gradul I (Exemplul 2):

start
citeste a,b
dac# a<>0 atunci
scrie Solu&ia este, -b/a
altfel
dac# b=0 atunci
scrie Solu&ia este spa&iul real
altfel
scrie Ecua&ia nu are solu&ii
sfrit dac#
sfrit dac#
stop

Este indicat ca opera#iile aflate sub inciden#a instruc#iunii de ramificare
s fie grupate mai la dreapta (ca n exemplul de mai sus), pentru a eviden#ia
faptul c respectivele instruc#iuni apar#in uneia dintre ramifica#ii. Aceast
opera#ie se nume$te indentare$i ea este utilizat $i n cazul codului scris ntr-
un limbaj de programare pentru a mri lizibilitatea programelor.


NU
Instrucuni
p
DA
Fig. 1.9.B Instruciunea de ramificare
varianta f!r! ramura altfel
-Bazele Informaticii Economice 13

Exemplul 3 : S se interschimbe valorile a dou variabile x $i y.

Am putea fi tenta#i, la prima vedere, s
scriem pentru interschimbarea a doua valori o
secven# de genul:

x y
y x

La o examinare mai atent, se observ
c, dup atribuirea x y, valoarea
variabilei x s-a pierdut, deci, n loc de
interschimbare, ambele variabile vor avea
valoarea y. Pentru a rezolva aceast problem
vom utiliza o variabil auxiliar pe care o
vom numi aux n care vom "salva" valoarea
variabilei x:



start
citete x,y
aux x // se salveaz#
con&inutul
// lui x n aux
x y
y aux //se trece n y
//con&inutul lui x
scrie x,y
stop


Exemplul 4. S se calculeze partea ntreag ] x [ n = a unui numar real
pozitiv x.

x y
y aux
START
CITE'TE
x,y
aux x
SCRIE
y
STOP
Fig. 1.10 Interschimbarea valorilor
a dou! variabile
-Bazele Informaticii Economice 14


Ideea algoritmului este de a porni cu
0 n = $i ct timp x 1 n + i mrim pe n cu
o unitate ( se #ine cont de faptul c
1 n x n + < ).
Implementarea cu scheme logice este
dat n figura 1.11.

Dac am ncerca s implementm
acest algoritm $i n peudocod doar cu
instruc#iunile inv#ate pn acum, vom
constata c este imposibil. Motivul?
Instruc#iunea de decizie din cadrul
schemelor logice este mult mai flexibil
dect cea din cadrul limbajului algoritmic,
deoarece ea permite $i realizarea de structuri
repetitive (pentru x 1 n + se repet
instruc#iunea de incrementare a valorii lui
n). Acest lucru nu este posibil n limbajul
algoritmic, deoarece el impune o structur
mai fix prin instruc#iunea de ramificare (fig. 1.8).

Libertatea de nln#uire a instruc#iunilor din schemele logice poate
conduce la scrierea unor scheme logice extrem de complicate a cror urmrire
ar fi destul de dificil. Pentru a evita acest lucru, principiile programrii
structurate impun folosirea instruc#iunii de decizie doar sub urmatoarele trei
forme:

Am vzut deja c structura din figura 1.12.1 corespunde instruc#iunii
dac# (de ramificare) din limbajul algoritmic. Structurile din figurile alturate
(1.12.2, 1.12.3) se numesc instruc#iuni repetitive.


Instruciuni
p
NU
DA
Instruciuni1
NU
Instruciuni2
p
DA
Fig. 1.12 Cele trei variante ale instruciunii de decizie, acceptate n
programarea structurat!
p Instruciuni
NU
DA
Fig. 1. 12. 1 Fig. 1. 12. 2 Fig. 1. 12. 3
START
CITE'TE
x
n 0
x>=n+1
SCRIE
y
STOP
D
N
Fig. 1.11 Calculul p!rii ntregi a
unui num!r real x
-Bazele Informaticii Economice 15

Structura din figura 1.12.2 realizeaz repetarea grupului de instruc#iuni
pn cnd condi#ia p devine adevarat, cu verificarea condi#iei dup grupul de
instruc#iuni. Corespondentului ei n limbajul algoritmic este instruc#iunea

repet# .... pn# cnd.
repet#
instruc&iuni
pn# cnd p

Structura din figura 1.12.3 realizeaz repetarea grupului de instruc#iuni
ct timp condi#ia p este adevarat, cu verificarea condi#iei nainte de
instruc#iuni. Corespondentul ei n limbajul algoritmic este instruc#iunea ct
timp:

ct timp p
instruc&iuni
sfrit ct timp

Exist o diferen# important ntre cele dou instruc#iuni repetitive.
Condi#ia p din ciclul repet# ... pn# cnd se verific dup execu#ia
instruc#iunilor din ciclu, deci instruc#iunile se vor executa cel pu#in odat chiar
dac p este fals de la nceput. n cazul ciclului ct timp condi#ia p se
verific la nceput, deci dac ea este fals, instruc#iunile care compun ciclul nu
se vor executa niciodat.
Din acest motiv, instruc#iunea ct timp este de preferat instruc#iunii
repet#, mai ales n situa#ia n care execu#ia instruc#iunilor din acest ciclu -
cnd condi#ia p este fals nc de la nceput- ar putea genera efecte nedorite.
(i n cazul instruc#iunilor repetitive se realizeaz indentarea la dreapta a
grupului de instruc#iuni care se repet. n cazul unei indentari corecte,
instruc#iunile sfrit dac# $i sfrit ct timp se subn#eleg, $i pot fi
omise pentru a simplifica structura programului.

Avnd la dispozitie instuc#iunile repetitive, suntem n msur s
scriem programul pseudocod pentru calculul par#ii ntregi:

citete x
n 0
ct timp n+1<=x
n n+1
sfrit ct timp
scrie n
stop

Exemplul 5. S se calculeze suma a n numere care se citesc succesiv.
Metoda de rezolvare este simpl: citim numrul de elemente pe care le
avem de nsumat, ini#ializam o variabil S (n care calculm suma) cu 0, apoi
citim rnd pe rnd elementele $i le adaugm la suma:
-Bazele Informaticii Economice 16


start
citete n
s 0
i=1
ct timp I<=n
citeste x
s s+x
i i+1
sfrit ct timp
scrie s
stop

Variabila x este utilizat pentru a citi valorile elementelor care se
nsumeaz. Variabila i se nume$te variabil contor, deoarece ea re#ine numarul
de itera#ii care s-au realizat. n momentul n care valoarea ei devine n+1, au fost
citite toate cele n valori $i putem scrie suma calculat.
Structuri repetitive de genul celei din exemplul precedent, n care o
variabil (i- n cazul nostru) porne$te cu o valoare ini#ial $i cre$te cu un pas
constant pn la o valoare final, apar att de des n problemele de algoritmi,
nct limbajul algoritmic ($i majoritatea limbajelor de programare) le-a
consacrat o instruc#iune special: instruc#iunea pentru.
Forma instruc#iunii pentru este:



pentru v = a,b,r
instruc#iuni
sfr$it pentru






Schema logic de alturi ilustreaz modul de func#ionare al acestei
instruc#iuni: variabila v n valoarea a , dup care este incrementat succesiv cu
valoarea r (care de obicei este 1) pn cnd dep$e$te valoarea b , moment n
care se incheie ciclul. Variabila de incrementare, r , poate avea $i valori
negative (caz n care v descre$te) cu men#iunea c, n aceast situa#ie,
inegalitatea din schema logic corespondent este b v . n cazul n care
valoarea lui r nu se precizeaz aceasta se consider implicit a fi 1 dac b a <
$i -1 dac b a > .
Programul pentru calculul sumei a n numere reale rescris cu ajutorul
instruc#iunii pentru devine:



v<=b
instruciuni
vv+r
NU
DA
v a
Fig.1.13 Instruciunea pentru reprezentat!
cu scheme logice
-Bazele Informaticii Economice 17

start
citete n
s 0
pentru i=1,n
citete a
s s+a
sfrit pentru
scrie s
stop

Deoarece ciclul pentru este un caz particular al ciclului ct timp,
rezult c putem nlocui oricnd un ciclu pentru cu un ciclu ct timp
echivalent, dar nu $i invers. Este bine s se utilizeze ciclul pentru ori ce cte
ori este posibil, deoarece algoritmul devine mai scurt $i mai u$or de urmrit.

1.3.3. Programarea structurat!

Am vazut deja n paragraful anterior c schemele logice permit o
libertate foarte mare de nln#uire a instruc#iunilor, ceea ce poate conduce la
crearea unor structuri care s fie foarte greu de urmrit. Pentru a simplifica
structura programelor $i pentru a mri lizibilitatea $i adaptabilitatea lor, s-a
creat conceptul de "programare structurat", care impune anumite restric#ii
asupra modului de utilizare a instruc#iunii de decizie. n programarea
structurat exist trei variante n care fluxul de instruc#iuni poate s se execute:

secvena n care instruc#iunile se execut succesiv, o singur dat;
ramificarea care permite execu#ia unui grup din dou grupuri de
instruc#iuni, func#ie de valoarea unei condi#ii logice;
iteraiacare permite repetarea unui grup de instruc#iuni pn cnd se
ndepline$te o anumit condi#ie.

Un exemplu de cod n care se folose$te numai secven#a este programul
pentru interschimbarea valorilor a dou numere. Ramificarea corespunde
instruc#iunii dac#, iar itera#ia este realizat de instruc#iunile repet#, ct
timp, $i pentru. Programarea structurat este mai degrab un mod de a
aborda o problem dect o aderare la un set rigid de reguli. Utiliznd
programarea structurat, vom scrie programe lizibile, robuste $i adaptabile!








-Bazele Informaticii Economice 18

1.4. Subrutine

1.4.1. Ce este o subrutin!?

O subrutin poate fi privit ca o cutie neagr (black box) care preia
anumite date de intrare,

realizeaz anumite prelucrri precise asupra lor, $i furnizeaz rezultatul
prelucrarilor ca date de ie$ire.

De exemplu, o subrutin poate primi ca date de intrare dou numere $i
s furnizeze ca dat de ie$ire maximul lor; sau poate primi ca date de intrare un
tablou numeric de dimensiune n $i s furnizeze ca dat de ie$ire acela$i tablou,
dar cu elementele ordonate cresctor, sau poate primi dou variabile reale ca
date de intrare $i s furnizeze ca date de ie$ire acelea$i variabile cu con#inutul
interschimbat etc. Exist dou motive principale care au condus la crearea
subrutinelor:
n primul rnd, exist n cadrul unui program anumite opera#ii care se
repet: de exemplu, opera#ii cum ar fi citirea sau scrierea unui tablou, sortarea
unui tablou, interschimbarea a dou elemente, maximul a dou sau mai multe
elemente etc. sunt foarte frecvente $i se pot repet. Pentru a evita scrierea
codului necesar pentru opera#ia care se repet ori de cte ori ea apare, putem
nchide opera#ia respectiv ntr-o cutie neagr. De cte ori vom dori s realizm
opera#ia, vom apela cutia neagr (subrutina). La apel, subrutina preia controlul,
$i realizeaz sarcina, dup care red controlul programului care a apelat-o.
n al doilea rnd, a$a cum am vazut $i n cazul precedent, un program
complex devine mai lizibil dac este mpr#it n subrutine de dimensiuni mai
mici. Practic, n cazul n care avem de scris un program care are sute, sau chiar
mii de linii de cod, depanarea $i modificarea lui devin extrem de anevoioase
dac nu-l mpr#im n mai multe subrutine de dimensiuni mai mici care s
realizeze sarcini specifice. O subrutin poate la rndul ei s apeleze o alt
subrutin s.m.d





1.4.2. Modul de definire al subrutinelor


SUBRUTIN)
Date intrare Date ie$ire
-Bazele Informaticii Economice 19

Subrutinele se mpart n dou categorii: proceduri $i funcii. A$a cum
vom vedea n cadrul acestui paragraf, func#iile au n plus fa# de proceduri o
valoare, care poate fi utilizat ca operand al unei expresii.
n pseudocod, definirea unei proceduri se realizeaz astfel:

procedura NumeProc (ParamF1, ParamF2, .... ,
ParamFn)
...
corpul procedurii format din instruciuni
...
return

Cuvntul cheie procedur# marcheaz nceperea codului procedurii; n
continuare, se specific un nume care s o caracterizeze. De cte ori facem
referire ulterior la procedur, o vom face prin numele acesteia.
Este de preferat s nzestrm subrutinele (procedurile $i func#iile) pe
care le scriem cu nume ct mai sugestive, din care s reias prelucrarea pe care
o realizeaz. De exemplu, o subrutin care calculeaz maximul a doua
elemente o putem numi Max, una care sorteaz un tablou prin metoda bulelor,
SortBule etc.
Dup numele procedurii, ntre paranteze rotunde se specifica
parametrii formali separa#i prin virgul. Parametrii formali reprezint ni$te
variabile pe care programul apelant le va ncrca cu valorile pe care procedura
trebuie s le prelucreze.
Apelul unei proceduri se realizeaz prin scrierea numelui ei urmat de
parametri de apel cuprin$i ntre paranteze:

NumeProc (ParamAl, ParamA2, ...ParamAn)

n momentul apelului, valoarea variabilei ParamA1 se ncarc n
variabila ParamF1, a lui ParamA2 n ParamF2 s.a.m.d., dup care controlul este
preluat de ctre procedura NumeProc. Se execut instruc#iunile procedurii,
dup care la terminarea opera#iilor, valoarea lui ParamF1 se ncarc napoi n
ParamA1, a lui ParamF2 n ParamA2 etc. Acest mecanism permite reflectarea
modificrilor fcute de procedur $i n programul apelant.
A$a cum vom vedea mai tarziu, acest mod de transmisie a parametrilor
(n care modificrile fcute de procedur asupra parametrilor formali se reflect
asupra parametrilor de apel) se nume$te transmitere prin referin!, n antitez
cu transmiterea prin valoare n care modificrile fcute asupra parametrilor
formali nu afecteaz parametri de apel. n general, limbajele de programare
moderne (Pascal, C++, etc.) pun la dispozitia programatorului ambele variante
de transmisie a parametrilor. Variabilele ParamA1, ParamA2, ... se numesc
parametri actuali sau parametri de apel.
Cuvantul cheie return are ca efect ncheierea procedurii $i redarea
controlului programului apelant. A$a cum vom vedea mai tarziu, cuvntul cheie
return poate s apar n mai multe locuri n cadrul unei subrutine. Dup
-Bazele Informaticii Economice 20

ncheierea execu#iei procedurii, programul se reia cu urmtoarea instruc#iune de
dup apel.
Procedura de mai jos prime$te trei parametrii ntregi, calculeaz
maximul primilor doi parametri $i ncarc valoarea rezultatului n al treilea:

procedur# Maxim (x,y,Max)
dac# x<y atunci
Max y
Altfel
Max x
return

Programul de mai jos:

start
a2 b3
Maxim(a,b,M)
scrie M
stop.

va avea ca efect ncarcrea valorii 2 (a lui a) n parametrul formal x, a lui 3 n y
$i a lui M (a carui valoare este arbitrar, deoarece M nu a fost ini#ializat !!) n
Max. Apoi controlul este preluat de ctre subrutina care compar pe 2 cu 3 $i
atribuie lui Max valoarea 3. La ncheierea subrutinei, valorile lui x, y $i Max se
ncarc napoi n a, b respectiv M, dup care se execut comanda de scriere a
lui M (care are valoarea 3).
Exemplul de mai sus eviden#iaz mai multe aspecte importante. n
primul rnd, dup modul n care am definit transmisia parametrilor, to#i
parametrii sunt att variabile de intrare n cutia neagr care este procedura, ct
$i variabile de ie$ire. n al doilea rnd, se observ c numele parametrilor de
apel nu trebuie s fie identic cu numele parametrilor formali. Important este c
parametrii de apel s aib acela#i tip cu parametri formali care le corespund.
Din acest motiv, unii autori specific $i tipul parametrilor formali la definirea
subrutinei, pentru a nu crea ambiguit#i. Precizarea tipului parametrilor este
obligatorie n limbajele orientate cum ar fi Pascal, C, C++, n altele, cum ar fi
FoxPro, nu este necesar. Antetul procedurii noastre ar arata n acest caz:

procedur# Maxim(int x, int z, int Max)

unde cuvntul cheie int ne informeaz c parametrul care l urmeaz este un
tip ntreg. Pentru simplitate, noi nu vom utiliza aceast nota#ie dect n cazul n
care lipsa specificarii tipului ar putea s creeze ambiguit#i.


Procedura de mai jos realizeaz interschimbarea valorilor a dou variabile:
procedur# InterSch (x,y)
aux x
-Bazele Informaticii Economice 21

x y
y aux
return

Programul de mai jos utilizeaz procedura InterSch pentru a
interschimba valorile variabilelor a $i b:

start
citete a,b
InterSch(a,b)
scrie(a,b)
stop.

O alt categorie de subrutine o constituie funciile. Func#iile au toate
caracteristicile unei proceduri, dar au n plus posibilitatea de a ntoarce o
valoare programului apelat. Deoarece func#iile au o valoare, numele unei
func#ii poate fi utilizat ca un operand ntr-o expresie. Func#iile sunt foarte utile
n situa#ii n care exist practic un singur parametru de ie$ire (cum ar fi
subrutina de calcul a maximului a dou elemente).

n loc s simulm valoarea de ie$ire prin transmitere de parametri ca n
procedura de calcul a maximului din exemplul anterior, putem s o transmitem
ca valoare returnat de func#ie:
func&ie Max (x,y)
dac# x<y atunci
M y
altfel
M x
return M

Se observ c nceperea unei func#ii se desemneaz prin cuvntul cheie
func&ie, iar instruc#iunea de terminare return are acum $i un parametru:
acest parametru reprezint valoarea func#iei. Programul de mai jos calculeaz
maximul a dou numere utiliznd func#ia Max. Se observ c apelul unei
func#ii se realizeaz la fel ca apelul unei proceduri. Deoarece func#ia returneaz
o valoare, acea valoare trebuie utilizat (atribuit, scris, etc.); cu alte cuvinte,
numele unei func#ii trebuie s fie opernd ntr-o expresie:
start
a2 b3
M = Max(a,b)
scrie M
stop.

Valoarea func#iei Max se atribuie variabilei M, dup care se scrie
valoarea lui M. Putem scurtcircuita aceste opera#ii scriind direct valoarea
func#iei:

-Bazele Informaticii Economice 22

scrie Max(a,b)

Instruc#iunea return utilizat n mod inteligent poate adeseori
simplifica procedurile $i func#iile. Varianta func#iei Max de mai jos, n care
instruc#iunea return este utilizat de dou ori pentru a evita folosirea unei
variabile auxiliare, este gritoare n acest sens:
func&ie Max (x,y)
dac# x<y
return y
return x








































-Bazele Informaticii Economice 23

Capitolul 2
Structuri generale ale informaiei
2.1. Noiuni de baz! privind prelucrarea automat!
a datelor
Informa#ia se transmite eficient n organiza#ii, cu o excep#ie: ve$tile rele
ntlnesc piedici mari n a circula de jos n sus. Din aceast cauz, oamenii din
vrf iau decizii ca $i cum timpurile ar fi bune; doar oamenii de jos sunt
con$tien#i de faptul c organiza#ia se prbu$e$te.
2.1.1. Informaie. Dat!. Decizie
ntr-o economie pentru care managementul este modalitatea principal
prin care resursele sunt transformate, cu minimum de efort, n bunuri de
consum, informa#ia $i decizia sunt omniprezente $i strns interdependente.
Deciziile de calitate au la baz procese laborioase de informare.
Pentru a putea conduce un sistem economic sau o organiza#ie(indiferent
de mrime), acestea trebuie cunoscute. Cunoa$terea unui sistem (care are intrri
$i ie$iri) trebuie realizat n dou direc#ii: structural $i din punct de vedere
dinamic (al evolu#iei n timp).
Elementele de cunoa$tere structural se refer la aspecte, rela#ii, legit#i
relativ stabile n timp. Dobndirea elementelor care definesc structura unui
sistem este un proces a crui complexitate, deocamdat, nu poate fi simulat cu
ajutorul sistemelor de calcul. n schimb, exist numeroase exemple de sisteme
a cror dinamic poate fi urmrit sau simulat cu ajutorul sistemelor de calcul.
Potrivit filozofilor, informa#ia este una din cele trei forme de
manifestare a materiei, alturi de substan# $i energie. Deci este o no#iune
primar.
Potrivit teoriei comunica#iei (o teorie cu scopuri opera#ionale precise)
INFORMA'IA poate fi n#eleas ca un mesaj sau semnal ce reflect starea unui
sistem sau a mediului n care acesta func#ioneaz $i care aduce receptorului ei
un spor de cunoa$tere.
2.1.2. Procesul de prelucrare a datelor.
Informa#iile se ob#in, n general, printr-un proces de prelucrare a datelor.
Informa#iile nu trebuie confundate neaprat cu datele.
Teoretic vorbind, o dat! poate fi caracterizat prin tripletul:

<identificator, atribute, valoare>.

Astfel c, n informatic, no#iunea de dat este indisolubil legat de
no#iunea de valoare, dar presupune, n plus $i elemente referitoare la
reprezentare (identificatorul) $i manipulare (atributele).
-Bazele Informaticii Economice 24

Data este un model de reprezentare a informaiei.
Informa#ia $i data pot fi utilizate ca sinonime numai n msura n care
convenim s identificm sistematic obiectul prin modelul su.
Informa#ia trebuie legat ntotdeauna de no#iunea de noutate, de aportul
ei la mic$orarea nedeterminrii sistemului reflectat.
Perfec#ionarea activit#ii de conducere a organiza#iilor, a sistemelor
economice, tehnice sau de alt natur, este posibil pe baza unei informri
rapide $i cuprinztoare att pe orizontala ct $i pe verticala sistemului de
management.
Din perspectiv sistemic, o organiza#ie se reprezint ca n Figura 2.1.




















Fig. 2.1 Organiza#ia ca sistem cibernetic

Figura 2.1 ne arat c SUBSITEMUL INFORMA+IONAL realizeaz
legtura n ambele sensuri ntre subsistemul de conducere $i cel opera#ional
astfel:

Ca urmare a derulrii procesului opera#ional rezult date care sunt culese de
ctre subsistemul informa#ional;
Datele rezultate din procesul opera#ional sunt transmise $i prelucrate de
ctre subsistemul informa#ional ob#inndu-se informa#ii;
Informa#iile ob#inute n procesul de prelucrare a datelor sunt transmise de
ctre subsistemul informa#ional subsistemului de conducere;
Subsistemul de conducere analizeaz informa#iile $i, pe aceast baz,
adopt decizii cu privire la starea viitoare a ntregului sistem;

SUBSISTEM DE CONDUCERE

INTR*RI
PROCES DE
CONDUCERE
IE(IRI



SUBSISTEM INFORMA+IONAL

IE(IRI
PROCES
INFORMA'IONAL
INTR*RI



SUBSISTEM OPERA+IONAL

INTR*RI
PROCES
OPERA+IONAL
(DE EXECU'IE, DE BAZ*)
IE(IRI
Informaii
Decizii Date
Decizii
-Bazele Informaticii Economice 25

Deciziile adoptate de subsistemul de conducere sunt transmise, prin
intermediul subsistemului informa#ional, subsistemului opera#ional, care
trebuie s le pun n aplicare;
Ca urmare a aplicrii deciziilor, n subsistemul opera#ional rezult din nou
date $i ciclul se repet.
Perfec#ionarea activit#ii de conducere impune asigurarea unei informri
rapide $i cuprinztoare, pe fiecare treapt ierarhic.
Aceasta oblig conducerea organiza#iei (unit#ii economice) s-$i
perfec#ioneze subsistemul informa#ional astfel nct s realizeze urmtoarele
sarcini:
Asigurarea tuturor informa#iilor despre situa#ia trecut, prezent $i viitoare a
activit#ii;
Ob#inerea unor informa#ii sintetice privind rezultatele de ansamblu ale
organiza#iei (unit#ii economice);
Utilizarea unor indicatori cu putere mare de caracterizare;
Realizarea unui acces direct $i imediat la un volum de informa#ii din mai
multe domenii de activitate;
Asigurarea unui grad nalt de selectivitate a informa#iilor;
Existen#a unui sistem de urmrire $i control rapid $i eficient.

Optimizarea ndeplinirii acestor sarcini este, la ora actual o problem a
crei solu#ie depinde de proiectarea $i utilizarea unui sistem informatic.
Se nume$te SISTEM INFORMATIC acea parte a subsistemului
informa#ional n care opera#iile de culegere, transmitere, prelucrare $i stocare a
datelor se realizeaz cu ajutorul calculatorului electronic.
Sistemul informatic reprezint, de fapt, partea automatizat a
subsistemului informa#ional.
Se poate anticipa deja faptul c proiectarea unui sistem informatic este o
problem complex a crei rezolvare este esen#ial dependent de cunoa$terea
structurii $i dinamicii subsistemului informa#ional.
Discutarea acestei probleme nu face obiectul prezentului curs.
2.1.3. Circuit informaional, flux informaional
n literatura de specialitate se ntlnesc diverse criterii de clasificare a
informa#iilor, dintre care amintim:
1. Dup! forma de exprimare a fenomenelor pe care le reflect,
informa#ia poate fi: analogic, numeric, nenumeric.
Informa&ia analogic caracterizeaz parametrii cu varia#ie continu ai
unor procese tehnologice precum: presiunea, temperatura, viteza, tensiunea
electric, etc.
Informa&ia numeric sau cantitativ exprim aspectul cantitativ al
fenomenelor $i se prezint sub form de cifre, determinate prin msurare,
numrare, cntrire sau calcul.
Informa&ia nenumeric sau calitativ care exprim aspecte calitative
$i se exprim ntr-o mare varietate de forme: concepte, liste bibliografice, texte,
rapoarte, etc.
-Bazele Informaticii Economice 26

2. Dup! suportul informaional utilizat pentru transmitere
informa#ia poate fi: verbal, scris, grafic, sub form de imagini, sub forma
undelor radio sau electromagnetice, sub form codificat pe benzi, casete sau
discuri magnetice, discuri optice, etc.
3. Dup! situarea n timp fa# de momentul desf$urrii procesului sau
fenomenului reprezentat, informa#iile sunt: active, pasive $i previzionale.
Informa&iile active reprezint procese sau fenomene n curs de
desf$urare. Se mai numesc $i informa#ii operative.
Informa&iile pasive reflect procese $i fenomene care au avut loc.
Acestea sunt utile pentru conducerea activit#ii viitoare n condi#ii de repetare a
unor procese $i fenomene.
Informa&iile previzionale sunt cuprinse n planuri $i programe,
caracteriznd procese $i fenomene ce se vor desf$ura n viitor.
4. Dup! coninut, informa#iile sunt: elementare, complexe $i sintetice.
Informa&iile elementare definesc opera#ii $i fenomene indivizibile
(a cror caracterizare nu mai necesit descompunere).
Informa&iile complexe rezult prin agregarea informa#iilor elementare
cu scopul de a caracteriza un fenomen sau proces.
Informa&iile sintetice reflect aspecte legate de ob#inerea unor
indicatori sintetici (pre#, cost, productivitate, etc.) $i permit caracterizarea de
ansamblu a modului de desf$urare a unei activit#i.

Toate aceste tipuri de informa#ii $i multe altele circul n cadrul
organiza#iei (unit#ii economice) ntre persoane, compartimente sau chiar ntre
organiza#ii (unit#i economice) formnd circuite informa#ionale.
Un circuit informaional cuprinde drumul pe care l parcurge
informa#ia din momentul apari#iei unui eveniment $i pn cnd, pe baza
cunoa$terii lui, se declan$eaz un nou eveniment.
O sec#iune prin acest circuit informa#ional formeaz un flux
informa#ional.
n mod evident, aceste circuite informa#ionale depind de structura
organizatoric a unit#ii economice.

FLUXUL INFORMA+IONAL reprezint cantitatea de informa#ii care
circul ntre dou puncte ale grafului organiza#ional, avnd destina#ie, con#inut,
sens $i frecven# bine stabilite.
n procesul de fundamentare a deciziilor ntr-o organiza#ie (unitate
economic), informa#iile au un rol determinant. De calitatea informa#iilor
depinde calitatea deciziilor ce urmeaz a fi adoptate.
Acesta este motivul pentru care factorii de conducere trebuie s se
preocupe permanent de perfec#ionarea sistemului informa#ional decizional.
O modalitate esen#ial de atingere a acestui obiectiv o reprezint
utilizarea calculatoarelor electronice n procesul de prelucrare a datelor, deci
realizarea unui sistem informatic.


PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 27

2.1.4. Etapele procesului de prelucrare automat! a
datelor
Pentru ob#inerea informa#iilor necesare activit#ii de conducere, datele
sunt pregtite $i prelucrate dup anumite reguli bine stabilite.
Acest proces este numit prelucrarea datelor.

PROCESUL DE PRELUCRARE A DATELOR (P.A.D.)
cuprinde ansamblul opera#iilor de percepere, culegere, transmitere,
comparare, selectare, sortare, centralizare, grupare, stocare, etc. a
datelor, n vederea ob#inerii de informa#ii.
Dac procesul de prelucrare a datelor se realizeaz automat, atunci sunt
necesare urmtoarele elemente:
Un sistem de echipamente de calcul;
Un sistem de programe pentru conducerea echipamentelor (sistemul
de operare);
Un sistem de programe specifice pentru prelucrarea automat a
datelor (programe de aplica#ie);
Date de prelucrat, care reprezint materia prim a procesului de
prelucrare a datelor.
Pentru a putea fi prelucrate cu ajutorul calculatorului electronic, datele
trebuie organizate ntr-o form specific $i reprezentate conform cerin#elor
impuse de utilizarea acestora. n urma procesului de prelucrare se ob#in
informa#ii, care sunt furnizate beneficiarilor (persoane, compartimente
func#ionale, etc.).
Etapele procesului de prelucrare automat a datelor sunt eviden#iate n
Figura 2.2.

Figura 2.2 Etapele procesului de P.A.D.


Pregtirea
ini#ial a datelor


Introducerea datelor
n baza de date


Prelucrarea datelor


Ob#inerea rezultatelor


Stocarea
datelor $i informa#iilor
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 28


Preg!tirea datelor iniiale n vederea introducerii n procesul de
prelucrare presupune efectuarea unor opera#ii manuale de completare a unor
documente scrise, de codificare a datelor, de verificare a corectitudinii
documentelor n conformitate cu cerin#ele impuse de P.A.D..

Introducerea datelor n baza de date este o activitate specific
sistemului informatic, n care datele sunt preluate din documente primare $i
sunt introduse n memoria intern sau extern a calculatorului electronic
utiliznd echipamente periferice corespunztoare sau, n unele cazuri, sunt
culese direct din procesele (industriale, militare, meteorologice, etc.) n care
acestea se produc.
De regul, introducerea datelor n baza de date se realizeaz de ctre
sistemul de calcul sub controlul unui program de aplica#ie sau printr-un
echipament specializat.

Prelucrarea datelor este etapa n care toate opera#iile se realizeaz n
mod automat de ctre sistemul de calcul prin intermediul programelor de
aplica#ie, special concepute. n aceast faz se pot efectua opera#ii de tipul:
Validri de date;
Sortri $i ordonri de date dup criterii bine precizate prin program;
Interclasri de date prin care date din dou sau mai multe colec#ii
sunt reunite ntr-o alt colec#ie, dup un criteriu specificat n
program;
Comparri $i testri;
Calcule aritmetice.

Obinerea rezultatelor este etapa urmtoare etapei de prelucrare
propriu-zis, n care rezultatele pot fi furnizate prin imprimare cu ajutorul unor
echipamente specifice (imprimante, plottere) sau prin afi$area lor pe ecranele
terminalelor. Pentru a putea fi folosite n procesul de fundamentare a deciziilor,
rezultatele trebuie s ajung la utilizator n timp util.
Stocarea datelor $i informaiilor este ultima etap din procesul de
prelucrare automat a datelor, n care datele $i informa#iile ob#inute sunt stocate
sub forma unor fi$iere de arhiv sau prin men#inerea lor n baza de date pentru
realizarea unor prelucrri ulterioare, pn cnd se consider c acestea nu mai
sunt utile.

Realizarea fiecrei etape este un proces complex $i uneori chiar
ndelungat; de aceea, eforturile proiectan#ilor de soft $i echipamente de calcul
urmresc permanent crearea tuturor condi#iilor care s permit utilizatorilor
neinformaticieni s lucreze cu calculatorul electronic pe baza unui instructaj ct
mai sumar.



PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 29

2.2. Tipuri de date
Obiectivele abordrii structurilor de date n acest context sunt:
studierea propriet#ilor statice $i dinamice ale diferitelor tipuri de date;
studierea tehnicilor de alocare a memoriei pentru pstrarea $i
reprezentarea datelor cu diferite structuri;
studierea algoritmilor eficien#i pentru crearea, modificarea, regsirea $i
$tergerea datelor cu o anumit structur.
Pentru n#elegerea celor ce urmeaz este necesar cunoa$terea
urmtoarelor concepte definite n paragrafele anterioare: dat!, informa#ie, tip
de date, sistem informa#ional, sistem informatic, flux informa#ional.
2.2.1. Clasificarea tipurilor de date
Clasificarea tipurilor de date se poate face dup mai multe criterii.
Considerm n continuare patru astfel de criterii.

a) Clasificare dup complexitatea tipului de date:

Tipuri simple Tipuri structurate
Tipuri statice
numeric
logic
caracter
dat de control
masiv
$ir
mul#ime
list
Tipuri dinamice
arbore
fi$ier
baz de date

b) Clasificare dup modul n care se modific n timp valorile datelor:
Tipuri statice (vezi tabelul anterior)
Tipuri dinamice (vezi tabelul anterior)
c) Clasificare dup legtura dintre tipul de date $i calculator:
Tipuri independente de calculator toate tipurile anterior enumerate,
mai pu#in baza de date;
Tipuri dependente de sistemul de calcul: baza de date
d) Clasificare dup gradul de utilizare a memoriei calculatorului:
Tipuri care au valori ce pot fi reprezentate n memoria intern toate
tipurile anterioare, mai pu#in fi$ier $i baz de date;
Tipuri care pot fi reprezentate numai n memoria extern: fi$ier, baz de
date.

Clasificarea tipurilor de date se face dup mai multe criterii, cel mai
important fiind acela care mparte tipurile n simple $i stucturate.
Tipurile simple sunt acele tipuri n care o valoare (un element al
mul#imii de valori) este o dat atomic, care nu mai poate fi descompus n
componente.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 30

Tipurile structurate sunt acele tipuri n care fiecare valoare este o
colec#ie de componente ntre care exist anumite rela#ii, fiecare component
apar#innd unui tip simplu sau chiar unui (alt) tip structurat. Exemple: un masiv
este o colec#ie de valori ale unui tip simplu (numeric, n general), un fi$ier este
o colec#ie de articole, etc.
Din punct de vedere al modului de prelucrare al datelor, baza de date nu
exist dect n prezen#a calculatorului, pe cnd celelalte tipuri sunt
independente de calculator (de exemplu, papirusurile egiptene $i tbli#ele de lut
sumeriene cu scrierea cuneiform pot fi considerate ca apar#innd tipului
fi$ier).
Din punct de vedere al modului n care un tip (structurat) $i poate
modifica sau nu colec#ia de componente n timpul prelucrrii, tipurile pot fi
mpr#ite n statice $i dinamice.
Dac avem n vedere prelucrarea pe un sistem de calcul a datelor de
diferite structuri, atunci putem afirma c tipurile fi$ier $i baz de date nu pot
exista dect n memoria extern, pe cnd celelalte tipuri (de la numeric pn
la arbore) sunt memorate n memoria intern a sistemului de calcul.
2.2.2. Tipuri de date elementare (simple)
a) Tipul numeric este format dintr-o mul#ime de numere $i opera#iile
aritmetice $i rela#ionale obi$nuite cu numere.
b) Un tip logic are dou valori: adevrat $i fals, cu care putem efectua
opera#iile: nega#ia, conjunc#ia, disjunc#ia.
c) Tipul caracter este format dintr-o mul#ime de caractere (nu neaprat grafice)
$i opera#iile de comparare, ordonare, etc.
d) Un tip dat de control este format dintr-o mul#ime de valori care apar#in
altui tip simplu $i din opera#ii specifice. Exemple: etichete, adrese.
Controlul se face de la o informa#ie la alta.
2.2.3. Tipuri de date structurate, statice
a) Tipul masiv este o colec#ie finit $i omogen de componente, fiecare dintre
acestea avnd o valoare de tip simplu sau o valoare de alt tip masiv. Spunem
despre o astfel de component c este omogen deoarece toate valorile ei
trebuie s fie de acela$i tip. Opera#iile ce se pot efectua cu date de tip masiv
sunt, fie la nivelul masivului (rela#ionale), fie la nivelul componentelor
masivului. Exemplu: matricea.
b) Tipul $ir este o colec#ie finit $i neomogen de valori ale unor tipuri simple.
Opera#iile specifice: compara#ie, ordonare, concatenare etc.
c) Tipul mul#ime (set). O valoare de tip set este o submul#ime a unei mul#imi
de valori de tip simplu. Exemplu: mul#imea pr#ilor unei mul#imi.
Opera#iile cu variabile de tip mul#ime sunt cele din teoria mul#imilor:
reuniune, intersec#ie, diferen# etc.




PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 31

2.3. Structuri liniare
Structura liniar (lista) este reprezentat de o colec#ie de date care pot fi
organizate pe un singur nivel.
Se nume$te alocare opera#ia de atribuire a unui spa#iu din memoria
intern pentru o variabil de tip list. Dup modul de alocare a memoriei,
avem:
1. alocare secven#ial
2. alocare simplu nln#uit
3. alocare dublu nln#uit
4. alocare multiplu nln#uit (structura arborescent).

2.3.1.Stive, cozi, liste

Stiva este o structur liniar cu alocare secven#ial pentru care politica
de gestionare este de tip LIFO.
Reprezentarea schematic a unei astfel de structuri ar putea fi:
unde VS este vrfului stivei, adic adresa la care poate fi depus urmtoarea
component n stiv, iar BS este baza stivei, adic adresa de nceput a stivei.
Condi#ia ce trebuie ndeplinit de aceste dou adrese este:
BS VS.
Cnd BS = VS spunem c stiva este vid.
Adresele BS $i VS sunt suficiente pentru gestionarea stivei respective.
Opera#iile specifice pe stiv sunt: ncrcarea $i extragerea
componentelor de pe stiv. Sensul de cre$tere al stivei fiind consideratde la
adrese mari ctre adrese mici, la opera#ia de depunere n stiv se decrementeaz
adresa VS cu o unitate, iar operandul este nscris n memorie la aceast nou
adres. La opera#ia de scoatere din stiv se cite$te operandul din memorie, de la
adresa curent VS, iar apoi se incrementeaz adresa VS cu o unitate (stiva a
descrescut cu un cuvnt). Aceasta caracterizeaz politica de acces la
componentele unei stive care este de tip LIFO, Last In First Out (ultimul intrat,
primul ie$it).





VS
BS adr max
sens
cre$tere
stiv!
0
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 32

Coada este o structur liniar cu alocare secven#ial pentru care politica
de gestionare este de tip FIFO.
Reprezentarea schematic a unei astfel de structuri ar putea fi:







unde IC este nceputul cozii, adic adresa la care poate fi depus urmtoarea
component n coad, iar SC este sfr$itul cozii, adic adresa de la care se
poate extrage urmtoarea component din coad. Condi#ia ce trebuie
ndeplinit de aceste dou adrese este:
IC SC.
Cnd IC = SC spunem c avem coad vid.
Adresele IC $i SC sunt suficiente pentru gestionarea cozii respective.
Opera#iile specifice pe coad sunt: ncrcarea $i extragerea
componentelor. In coad, informa#iile se introduc $i se extrag de la capete
diferite. Adugarea sau introducerea unui element n coad se face la nceputul
cozii $i presupune incrementarea adresei IC. Extragerea unui element din coad
se face de la sfr$itul cozii $i presupune incrementarea adresei SC. Aceasta
caracterizeaz politica de acces la componentele unei cozi care este de tip
FIFO, First In First Out (primul intrat, primul ie$it).
Observaie. In stiv $i n coad nu avem acces la adresele
componentelor interne, altele dect cele situate la adresele VS, respectiv SC
sau IC.

Lista simplu nl!nuit! este o structur liniar cu alocare simplu
nln#uit. Memoria pentru lucru cu liste cuprinde att memoria necesar
stocrii informa#iei utile a componentelor listei, ct $i adresele de legtur de la
o component ctre componenta urmtoare ei.
Reprezentarea schematic a unei liste simplu nln#uite cu trei
componente este:










unde L este adresa de nceput a listei, adic adresa primului element al listei.
Ultima component a listei este legat la NIL (legtura spre nicieri).
INFO
INFO
INFO
L
SC
IC
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 33


Pentru o list cu n componente, consumul de memorie suplimentar
stocrii informa#iilor propriu-zise este de n+1 adrese.
Opera#iile specifice cu liste simplu nln#uite sunt:
adugarea unei celule n orice pozi#ie a listei: nceput, interior,
sfr$it;
parcurgerea listei;
$tergerea unui element din list, cu stabilirea corect a legturii ntre
componentele adiacente elementului $ters.

Lista dublu nl!nuit! este o structur liniar cu alocare dublu
nln#uit. Memoria pentru lucru cu liste con#ine att memoria necesar stocrii
informa#iei utile a componentelor listei, ct $i adresele de legtur de la o
component ctre componentele adiacente ei.
Reprezentarea schematic a unei liste dublu nln#uite cu trei
componente este:










unde L este adresa de nceput a listei, adic adresa primului element al listei.
Fiecare component a listei are:
adres de legtur ctre componenta anterioar;
informa#ie util;
adres de legtur ctre componenta urmtoare.
Ultima component a listei are zona urmtoare legat la NIL (legtura spre
nicieri), iar prima component are zona anterioar legat la NIL.

Pentru o list cu n componente, consumul de memorie suplimentar stocrii
informa#iilor propriu-zise este de 2n+1 adrese.
Opera#iile specifice cu liste dublu nln#uite sunt:
- adugarea unei celule n orice pozi#ie a listei: nceput, interior,
sfr$it;
- parcurgerea listei pe legtura urmtor (parcurgere n sens de ducere);
- parcurgerea listei pe legtura anterior (parcurgere n sens de
ntoarcere);
- $tergerea unui element din list, cu stabilirea corect a legturii ntre
componentele adiacente elementului $ters.
Observaie. Dac ultimul element al listei vede primul element atrunci
lista este una circular!.
INFO
INFO
INFO
L
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 34

2.4. Structuri arborescente
O structur arborescent (arbore) este, sau vid, sau format dintr-un
nod, sau dintr-un nod cruia i sunt subordona#i mai mul#i arbori (defini#ie
recursiv).
Se nume$te nod oricare dintre componentele elementare ale arborelui
nevid. Nodurile sunt legate ntre ele prin arce. In fiecare nod este re#inut
informa#ia util a acelei componente a arborelui.
Nodurile subordonate direct unui nod N se numesc noduri fii, iar nodul
N este nod p!rinte. Nodurile care nu au fii sunt terminale $i se numesc frunze.
Nodul care nu are ascenden#i este nodul r!d!cin!. Intr-un arbore,
rdcina este nod unic.
Gradul unui nod este dat de numrul de noduri subordonate direct
nodului respectiv. Gradul oricrei frunze este nul.
Ordinul unui nod este dat de numrul total de ascenden#i ai nodului
respectiv. Ordinul rdcinii arborelui este nul.
Se nume$te nivel al unui arbore submul#imea de noduri cu acela$i ordin.
Adncimea sau n!limea unui arbore este numrul de nivele pe care
sunt dispuse nodurile.
Un nod mpreun cu to#i descenden#ii lui formeaz un subarbore.
Exemplu
Tabelul T1 reprezint un arbore cu nodurile: A, B, C, D, E, F, G, H. I
dispuse pe nivelele: 0, 1, 2.


Adr NIVELUL


11
0





12
1







15
2



Pentru stocarea unui arbore cu n noduri dispuse pe k nivele, n k, k 1,
consumul de memorie suplimentar informa#iilor propriu-zise este de 3n+k
adrese.
URM*TOR
A
B C
D
E F
G H I
PREDECESOR
INFO
SUCCESOR
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 35

Se consider c informa#iile din nodurile acestui arbore se memoreaz la
adrese ncepnd cu valoarea 11 pentru rdcina A. Valorile adreselor nodurilor
$i ale componentelor adiacente sunt tabelate mai jos n tabelul T2. Acesta
con#ine adresele nodurilor de pe fiecare direc#ie: ascendent, descendent,
urmtor, conform reprezentrii tridimensionale anterioare. Valoarea 1 a unei
adrese arat c nu exist arc de la adresa curent pe direc#ia respectiv.

Tabelul T2
Adr INFO PRE
D
SUC
C
URM
11 A -1 12 -1
12 B 11 15 13
13 C 11 17 14
14 D 11 -1 -1
15 E 12 -1 16
16 F 12 -1 17
17 G 13 -1 18
18 H 13 -1 19
19 I 13 -1 -1

O opera#ie specific pentru arbori este parcurgerea nodurilor. In
func#ie de pozi#ia de citire a rdcinii avem urmtoarele variante:
1. parcurgere n preordine rdcin, subarbori de la stnga la dreapta
(RSD);
2. parcurgere n postordine subarbori de la stnga la dreapta, rdcin
(SDR).
Fiecare subarbore se parcurge conform cu aceea$i regul RSD sau SDR.

Pentru exemplul anterior cele dou parcurgeri sunt:
RSD: A B E F C G H I D
SDR: E F B G H I C D A

Un caz particular de arbore este arborele binar n care orice nod are
gradul cel mult 2. Cu alte cuvinte, ntr-un arbore binar orice nod are cel mult
doi descenden#i direc#i.
Pentru un arbore binar, reprezentarea schematic a unui nod $i a
descenden#ilor lui direc#i este:


unde SS este adresa rdcinii subarborelui
stng $i SD este adresa rdcinii
subarborelui drept.






INFO
SS SD
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 36

Exemplu. Fie urmtorul arbore binar:













ntr-un arbore binar, deoarece fiecare nod are cel mult doi descenden#i,
se pot completa modurile de parcurgere cu unul suplimentar $i anume
parcurgerea n inordine (SRD). Aceasta cite$te nodurile n ordinea subarbore
stng, rdcin, subarbore drept.
Pentru exemplul anterior avem urmtoarele parcurgeri ale arborelui
binar:
1. preordine (R - SS SD): A B D E H C F G I J
2. inordine (SS - R SD): D B H E A F C I G J
3. postordine (SS SD R): D H E B F I J G C A
Observaie. Pentru oricare arbore se poate defini un arbore binar
echivalent.

Un arbore de compilare se asociaz unei expresii aritmetice astfel nct
fiecare nod care nu este frunz con#ine un operator, iar frunzele con#in
operanzii. In rdcin se trece operatorul corespunztor ultimei opera#ii care se
efectueaz.
Un arbore de compilare nu este obligatoriu binar.

Se nume$te arbore de c!utare un arbore binar care este, sau vid, sau
respect regulile:
1. informa#ia din rdcin este mai mare dect toate informa#iile din
nodurile subarborelui stng;
2. informa#ia din rdcin este mai mic dect toate informa#iile din
nodurile subarborelui drept;
3. subarborii stng $i drept sunt arbori de cutare.
Observaie. Parcurgerea n inordine a unui arbore de cutare d
ordonarea cresctoare a informa#iilor din noduri.
Un arbore de selecie este un arbore binar care este, sau vid, sau
respect regulile:
1. informa#iile din rdcin sunt mai mici dect toate informa#iile din
subarbori;
2. subarborii stng $i drept sunt arbori de selec#ie.

A
B C
D E
H
F
G
I J
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 37


2.5. Grafuri
2.5.1.Definiii, generalit!i: reprezentarea grafurilor
n cele ce urmeaz toate no#iunile legate de grafuri, la care vom
face referire sunt cele introduse n sensul dat de Konig (n 1936 $i 1950) $i
Berge (n 1963).
Definiia 1.1. Orice mul#ime X , finit sau nu (dar msurabil),
prevazut cu o rela#ie se nume$te graf.
Vom nota graful cu ) , ( = X G . Nu va fi pus, prin defini#ie, o restric#ie
asupra lui $i, deoarece n aplica#iile uzuale se ntlnesc grafuri definite pe
mul#imi finite, ne vom ocupa numai de acestea $i n concluzie X va fi de
forma } , , , {
2 1 n
x x x X K = .
Reprezentarea grafului se face astfel:
elementele
i
x , numite vrfuri, vor fi reprezentate prin puncte;
tranzi#iile lui , numite arce, vor fi reprezentate prin sge#i;
sensul unui arc
j i
x x , va fi prezentat prin nota#ia ) , (
j i
x x care
precizeaz originea
i
x $i extremitatea
j
x a arcului.
n aplica#iile practice apare frecvent necesitatea valorizrii arcelor,
ata$nd fiecruia cte un numr a crui semnifica#ie concret variaz cu natura
problemei n care se folose$te graful. Vom nota un asemenea numr cu
ij
v ,
primul indice indicnd originea, iar al doilea extremitatea arcului.
Dac este o rela#ie simetric, graful se nume$te simetric $i n acest
caz din ) , ( ) , (
i j j i
x x x x , ceea ce nseamn c ntre vrfurile
i
x $i
j
x
vor exista dou arce de sens contrar.
Cnd ) , (
i i
x x , aceasta se reprezint printr-o bucl n
i
x .
Tranzi#iile din care se compun o rela#ie apar#in categoriei de concepte
orientate. Cnd reprezentm un graf simetric $i ntre dou vrfuri distincte ale
sale exist cele dou tranzi#ii pe care le cere simetria, vor fi figurate distinct
arcele corespunztoare, acestea deosebindu-se prin sensul lor. Nu totdeauna
ns problema ce se studiaz pe un graf conduce la concepte orientate. De
exemplu, dac se pune problema privind circula#ia vehiculelor pe o re#ea
stradal, fr sensuri unice, n graful respectiv X va fi mul#imea nodurilor de
circula#ie, iar sistemul legturilor ntre ele n ambele sensuri. n asemenea
cazuri rela#ia nu este distinct de transpusa ei $i, de$i s-ar putea considera
simetric, e suficient dac vom considera componentele sale prin cte un
segment cu extremit#i n vrfurile ntre care se a$eaz pe care l vom numi
muchie a grafului; acesta este conceptul de graf neorientat.
Graful orientat se numeste antisimetric dac este o rela#ie
antisimetric, adic din ) , ( ) , (
i j j i
x x x x .
Dac din ) , ( ) , ( ) , ( X x x x x x x
j i i j j i
, atunci graful se
nume$te complet. ntr-un graf complet, orice pereche de vrfuri distincte
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 38

particip la construirea rela#iei , pe cnd graful antisimetric poate avea
perechi de vrfuri nelegate printr-o tranzi#ie .
n anumite condi#ii un graf poate fi prevzut cu o rela#ie de ordine, dac
este un graf orientat.
O rela#ie de ordine nu se poate ntlni dect ntr-un graf orientat,
deoarece ordinea presupune prin defini#ie antisimetria, iar aceasta nu exist n
conceptul neorientat.
Toate no#iunile definite n baza ordinii (element prim sau ultim,
minorant, majorant) pot fi folosite n legtur cu grafurile prevzute cu o
ordine.
Pornind de la un graf dat ) , ( = X G se pot ob#ine no#iunile:
a) Graful partial, cnd din graful de referin# se suprim cel pu#in un
arc;
b) Subgraful ) , (
1 A
A G = , cnd din ) , ( = X G , se suprim unul sau
mai multe vrfuri $i arcele aferente lor.
Un graf dedus din altul poate fi un subgraf partial al acestuia.
c) Transpusul ) , (
~ ~
= X G al grafului ) , ( = X G are rela#ia
~

obtinu# din prin transpunere (inversarea sensului arcelor) , adic

~
) , ( ) , (
i j j i
x x x x
d) Graful complementar ) , (
* *
= X G al grafului ) , ( = X G are rela#ia
*
definit complementara lui ... fa# de produsul cartezian X X ,
adic. X X =
*
U $i =
*
I
Definitia 1.2. Dou vrfuri ale grafului se vor numi adiacente dac sunt
unite printr-o tranzi#ie binar, n cazul grafului orientat, respectiv printr-o
muchie n cazul grafului neorientat.
Definitia 1.3. Dou arce, respectiv muchii, sunt adiacente dac au un
vrf comun.
2.5.2.Grafuri orientate
Dac exceptm buclele, arcele care pleac dintr-un vrf se numesc
incidente n el spre exterior, iar cele care intr n vrf se numesc incidente n
el spre interior. Dac nu se specific altfel, buclele care reprezint tranziii
binare se includ n ambele categorii, iar cele care figureaz tranzi#ii unare se
exclud.

1
3
2
4
1 2
3 4
5
Graf ini#ial
Graf par#ial
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 39

Numrul arcelor incidente spre interior ntr-un vrf se nume$te
semigradul interior al acestuia, iar al arcelor incidente spre exterior se
nume$te semigradul exterior al vrfului.
Drumul este succesiunea de vrfuri legate, fiecare cu urmatorul, prin
cte un arc; drumul poate fi finit sau nu. Drumurile se noteaz astfel(vezi
fig.2.1a):
) , , , (
5 4 3 1 1
x x x x d = sau ) , , (
45 34 13 1
v v v d = ;
) , , , (
5 4 2 1 2
x x x x d = sau ) , , (
45 24 12 2
v v v d = ;
) , , (
5 2 1 3
x x x d = sau ) , (
25 12 3
v v d =
) , , (
5 4 1 4
x x x d = sau ) , (
45 14 4
v v d =

Un drum poate fi simplu sau compus, dup cum arcele sale sunt sau nu
folosite, fiecare, cte o singur dat.
Un drum poate fi elementar sau nu, dup cum trece sau nu cte o
singur dat prin vrfurile sale.
Un drum elementar ce trece prin toate vrfurile grafului se nume$te
drum hamiltonian.
Lungimea drumului este egal cu numarul arcelor sale, indiferent dac
acestea sunt sau nu valorizate; deci, dac drumul are n varfuri, lungimea sa
este 1 n .
Circuitul este un drum finit care ncepe $i se termin n acela$i vrf; el
se nume$te elementar cnd trece numai o singur dat prin toate celelalte
vrfuri ale sale. Dac circuitul are un singur arc, atunci se nume$te bucl!, iar
daca trece prin toate varfurile se numeste hamiltonian.
Graful tare conex este graful pentru care oricare ar fi vrfurile sale
i
x
$i
j
x ) ( j i , s existe cel pu#in un vrf de la
i
x la
j
x , sau ca orice pereche de
vrfuri distincte s se afle cel pu#in un circuit.
Arborescenta este un graf orientat, fr circuite n care:
a) un vrf $i numai unul, numit rdcin nu este precedat de nici un
altul;
b) oricare alt vrf este precedat de un singur alt vrf.
Vrfurile fr descenden#i se numesc frunze sau vrfuri atrnate.
Cnd dintr-un graf oarecare se poate extrage un graf par#ial care s fie o
arborescen#, aceasta se nume$te arborescen# par#ial.

1 2
3 4 5
1 2
3 4
5
Drumuri finite Drumuri infinite
Fig. 2.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 40

2.5.3.Grafuri neorientate

n cadrul grafurilor neorientate s-a adoptat o alt terminologie: ntre
dou vrfuri adiacente exist o muchie indiferent dac n graful orientat aceste
vrfuri erau legate prin unul sau dou ace (de sensuri diferite). Dac arcul se
noteaz ) , (
j i
x x atunci pentru muchie se utilizeaz nota#ia ) , (
j i
x x . Pentru a
pune n eviden# absen#a orientrii, pentru grafurile neorientate se utilizeaz
nota#ia ) , ( = X G . No#iunea de drum este nlocuit cu no#iunea de lan#,
lungimea acestuia fiind egal cu numrul muchiilor sale.
Lan#ul poate fi simplu sau compus, elementar sau nu, n acelea$i condi#ii
prezentate pentru drumuri. Oricrui drum i
corespunde un lan#, ns nu oricrui lan$ i
corespunde un drum.
No#iunea de circuit este nlocuit cu
cea de ciclu; orice circuit este un ciclu, dar nu
orice ciclu este $i circuit.
Un graf este conex dac ntre oricare
pereche de vrfuri distincte ale sale exist cel
pu#in un lan#.
Orice graf tare conex este conex dar reciproca nu este adevarat.
No#iunea de arborescen# este nlocuit cu cea de arbore $i deci ntr-un
graf neorientat G vor fi lua#i n considerare arbori par#iali.

2.6. Fi$iere
2.6.1.Concepte fudamentale: suport, organizare, acces
Numim suport materialul fizic pe care este stocat informa#ia.
Un fi$ier este o colec#ie de date depuse, de obicei, pe un suport de
memorie extern.
O component a unui fi$ier este un articol sau o nregistrare.
Organizarea datelor n fi$ier este necesar dac:
Volumul datelor prelucrate este foarte mare $i dep$e$te capacitatea
memoriei interne a calculatorului;
Datele trebuie stocate n vederea unei prelucrri ulterioare, n cadrul
aceluia$i program sau al altuia.
Tipul fi$ier define$te o structur care cuprinde un numr nefixat de componente
de acela$i tip.
Accesul la componentele unui fi$ier se face dup modul de organizare a
informa#iei $i poate fi:
1. acces secven#ial continuu elementele din fi$ier sunt dispuse
secven#ial;

1
x
3
x
2
x
Fig. 2.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 41

2. acces secven#ial indexat la fiecare articol din fi$ier se adaug o
informa#ie de indexare (indice) care nu face parte din articolul
propriu-zis;
3. acces direct (randomizat) fiecare articol trebuie s aib una sau mai
multe informa#ii unice de acces.
Organizarea secven#ial continu este posibil pe orice tip de suport, n
timp ce organizarea indexat exploateaz caracteristicile suporturilor de tip
disc.
Accesul direct are urmtoarele avantaje:
a) indicii sunt n dependen# func#ional cu con#inutul fiecrui articol;
b) d posibilitatea unor opera#ii mult mai performante fa# de celelalte
tipuri de organizri.
2.6.2.Operaii cu fi$iere
Dup modul de organizare, avem:
a) opera#ii la nivel de fi$ier
b) opera#ii la nivel de articol.
Opera#iile la nivel de fi$ier se efectueaz indiferent de structura fi$ierului
sau a articolelor. La nivelul fi$ierului, opera#iile specifice sunt:
1. alocarea unui fi$ier;
2. distrugerea unui fi$ier;
3. redenumirea unui fi$ier.
Alocarea fi$ierului const n opera#ia prin care o cantitate de memorie
este atribuit fi$ierului n vederea stocrii informa#iilor utile con#inute n
componentele structurii $i n vederea stocrii informa#iei de legtur ntre
componente, cu toate particularit#ile lor.
La nivel de articol opera#iile se efectueaz dependent de structura
articolului. Dintre acestea, cele mai uzuale sunt:
1. crearea fi$ierului (popularea);
2. actualizarea fi$ierului: adugare, modificare, $tergere de articole;
3. copierea unui fi$ier articol cu articol;
4. reorganizarea fi$ierului cu sau fr schimbarea suportului;
5. salvarea, arhivarea, restaurarea unui fi$ier modificarea suportului $i
compactarea informa#iei;
6. sortarea unui fi$ier articolele fi$ierului sunt aranjate n ordine
conform cu o rela#ie de ordine;
7. ventilarea unui fi$ier dintr-un fi$ier rezult mai multe fi$iere prin
parti#ionare dup un anumit criteriu;
8. concatenarea fi$ierelor din mai multe fi$iere surs cu aceea$i
structur a articolelor se formeaz un singur fi$ier rezultat, prin
adugarea articolelor fiecrui fi$ier surs d du up p articolele fi$ierului
deja rezultat;
9. interclasarea fi$ierelor din mai multe fi$iere surs cu aceea$i
structur a articolelor se formeaz un singur fi$ier n care articolele
sunt sortate conform cu o rela#ie de ordine unic pentru toate sursele.

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 42

Capitolul 3
Arhitectura sistemelor de calcul

Ne propunem s prezentm n acest capitol structura unui calculator
electronic $i raporturile dintre diferite organe constitutive ale acestuia
(anatomia), precum $i func#iile diferitelor sale structuri anatomice
(fiziologia). Nivelul de prezentare este subordonat cerin#elor de n#elegere a
mecanismului de lucru al calculatorului.
Calculatorul electronic numeric este un sistem automat care prime$te,
prelucreaz $i transmite informa#ia codificat sub form numeric. Un
calculator electronic este format dintr-un ansamblu de echipamente (hardware)
$i de programe (software) intercorelate, care asigur introducerea, prelucrarea
$i extragerea automat a datelor, potrivit cerin#elor utilizatorilor. Dintre
elementele software un rol deosebit revine sistemului de operare. El este un
sistem de programe de control $i de serviciu care controleaz dinamic toate
activit#ile calculatorului $i asist utilizatorii n scopul utilizrii eficiente a
resurselor (memorie, timp unitate central, periferice ).
Dar care este anatomia unui calculator?

3.1. Conceptul de arhitectur! a unui sistem de calcul
(SC)

Calculatorul sau sistemul de calcul (pe care l notm prescurtat SC)
este un dispozitiv care lucreaz automat, sub controlul unui program memorat,
acceptnd date n vederea producerii de informa&ii ca rezultat al prelucrrii.

Orice calculator modern are n esen# trei pr#i:
partea de echipamente (hardware);
partea de programe (software);
partea de microprograme (firmware).
Toate aceste tipuri de elemente se combin dup o anumit arhitectur pentru a
compune un sistem de calcul.
Literatura de specialitate prezint conceptul de arhitectur din dou
puncte de vedere diferite:
din punctul de vedere al utilizatorului, arhitectura include, n esen#,
setul de instruc#iuni, interfe#ele cu utilizatorii, modul de operare $i
control al intrrilor ie$irilor, etc. realizarea unei arhitecturi din
acest punct de vedere, duce la o familie de calculatoare.
din punct de vedere tehnic sau al proiectan#ilor de echipamente,
termenul de arhitectur se utilizeaz pentru descrierea naturii,
configurrii $i interconectri dispozitivelor SC. Aceasta este accep#ia
cea mai rspndit a no#iunii de SC.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 43



3.2. Evoluia $i clasificarea sistemelor de calcul

Istoria ma$inilor $i dispozitivelor de calcul este foarte veche. Astfel,
abacul, un dispozitiv bazat pe un sistem de bile (numrtoarea utilizat n
grdini#e $i $coli elementare) a fost introdus cu 2000 3000 ani n urm. n
1614 matematicianul sco#ian John Napier, odat cu introducerea no#iunii de
logaritm a inventat $i o tabl de calcul pentru acesta. Pornind de la aceste
elemente, n 1620 Wiliam Oughtred a inventat rigla de calcul, bazat pe
logaritmi $i utilizat $i n calcule inginere$ti.
Istoria ma$inilor mecanice de calcul ncepe n 1642 odat cu ma$ina
unui tnr francez de 19 ani, Blaire Pascal, care va deveni ulterior un celebru
matematician, fizician $i filozof. Ma$ina Pascal, cu unele mbunt#iri, a fost
utilizat pn nu de mult $i la noi n #ar la toate casele de marcat n magazine.
n 1671 Gottfred von Leibnitz, celebrul matematician german, realizeaz
o ma$in care putea s efectueze nmul#iri $i mpr#iri.
Printele SC modern este considerat englezul Charles Babbage, profesor
de matematic la universitatea din Cambridge, care $i-a petrecut toat via#a
proiectnd sisteme de calcul.
n 1834 el a prezentat Societ#ii Regale de (tiin#e un proiect al unui
dispozitiv complex numit ma$in analitic, care a avut o arhitectur
asemntoare cu cea a calculatoarelor moderne. Dintre principiile proiectului
Babbage amintim:
datele $i programele trebuiau introduse pe cartele perforate;
sistemul trebuia s aib posibilit#i de memorare;
sistemul trebuia s fie dotat cu un dispozitiv de calcul;
sistemul trebuia s fie dotat cu un dispozitiv de ie$ire.
Ma$ina analitic nu a putut fi realizat din cel pu#in dou motive: lipsea
suportul tehnologic adecvat $i realitatea economic a vremii nu era pregtit s
suporte un proiect att de costisitor.
Urmeaz epoca calculatoarelor electromecanice care culmineaz cu
realizarea ma$inii Mark I de ctre Howard Aitken de la Harward University, n
perioada 1937 1944.
Calculatorul Mark I a fost n func#iune pn n 1949.
Mai mult sau mai pu#in sub presiunea evenimentelor celui de-al doilea
rzboi mondial, n Statele Unite s-au alocat resurse considerabile $i s-a format
o vast echip de cercetare care avea drept obiectiv punerea bazelor teoretice $i
tehnologice pentru realizarea unui salt calitativ n domeniul SC.
Din echipa men#ionat mai sus a fcut parte $i matematicianul John von
Neumann, care, fcnd analogii cu modul de func#ionare a creierului uman, a
instituit principiile care ar trebui s stea la baza construc#iei SC. Ideile lui von
Neumann au fost puse n practic, multe dintre calculatoarele din zilele noastre
respectnd ceea ce se nume$te arhitectura von Neumann.

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 44

Enumerm principiile von Neumann a$a cum au fost prezentate la
vremea respectiv:

1. Deoarece ma$ina este destinat calculelor, ea va executa cel mai
frecvent opera#iile aritmetice (adunarea, scderea, nmul#irea $i
mpr#irea). Este necesar deci existen#a unei componente
specializate destinat calculului (astzi i putem spune Unitate
aritmetico logic).

2. Opera#iile se vor executa secven#ial. Pentru a asigura elasticitatea $i o
relativ universalitate, se impune o distinc#ie ntre instruciunile
necesare rezolvrii unei probleme particulare $i controlul general
asupra acestor instruc#iuni (apare astfel ceea ce astzi numim
componenta de control).

3. Evolu#ia sistemelor de calcul a dovedit utilitatea nglobrii unit#ii de
calcul $i a unit#ii de control ntr-o unitate denumit CPU (Control
and Processing Unit) sau procesor.

4. Este necesar o component numit memorie n care se #in minte
att instruc#iunile ct $i datele necesare rezolvrii problemei. (Astzi
o numim memorie intern sau operativ).

5. Pentru receptarea semnalelor din afara sistemului de calcul $i de
asemenea pentru emiterea de semnale n afara sistemului de calcul
sunt necesare componentele care astzi sunt denumite generic
dispozitive de intrare / ie$ire.

6. Este necesar o component care s #in minte permanent, pe care o
numim memorie permanent! (memoria extern de astzi).

7. Este necesar existen#a posibilit#ii de trecere de la memoria intern
la cea permanent $i invers.

n zilele noastre o serie din principiile de mai sus sunt perimate sau
par#ial adevrate.
Astfel, sistemele paralele, numite $i arhitecturi non von Neumann, nu
respect principiul secven#ialit#ii, iar sistemele simbolice, utilizate n aplica#ii
complexe din domeniul inteligen#ei artificiale, se bazeaz pe inferen#e logice,
nu exclusiv pe calcule aritmetice.
Al doilea rzboi mondial a nsemnat confruntare armat, dar $i
confruntare n planul inteligen#elor, alocndu-se fonduri nsemnate pentru
cercetri n domeniul calculatoarelor.
n 1941, germanii au realizat prin Konrad Zuse dou ma$ini, Z
3
$i Z
4
,
care func#ionau pe baz de program $i puteau efectua calcule. Aceste sisteme
au fost distruse n urma bombardamentelor alia#ilor.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 45

Britanicii au realizat la British Inteligence Establishment din Bletchley
calculatorul COLOSSUS, cu ajutorul cruia a fost descifrat n 1943 codul
german ultrasecret ENIGMA.
ntre anii 19301942, John V. Atanasoff de la Iowa State College,
mpreun cu un student al su, Clifford Berry, a nceput s construiasc primul
calculator electronic, bazat pe circuite logice realizate cu tuburi electronice.
Proiectul a fost abandonat imediat dup moartea lui Atanasoff n 1942.
Unul dintre admiratorii lui Atanasoff, John V. Mauchly, mpreun cu J.
Prosper Eckert a continuat ideile proiectului Atanasoff Berry la University of
Pensylvania, realiznd, ntre 1939 1943 primul calculator ENIAC (Electronic
Numeric Integrator And Calculator).
Astfel a nceput era calculatoarelor electronice.
Speciali$tii n calculatoare mpart calculatoarele n 5 genera#ii,
elementul determinant n clasificare fiind reprezentat de suportul tehnologic
utilizat. Cu men#iunea c CPU este abrevierea pentru Central Processing Unit,
prezentm mai jos caracteristicile genera#iilor de calculatoare pn n zilele
noastre.

Gene-
raia
Peri-
oada
Tehnologie
CPU
Tehnologie
memorie
Limbaje utilizate
Performane,
memorie $i CPU
I
1946
1956
Tuburi
electronice
Tambur
magnetic
De asamblare
Memoria : 2 Kb
Viteza: 10
4
i/s
II
1957
1963
Tranzistori Inele de ferit!
Nivel nalt:
FORTRAN,
COBOL, etc.
Memoria: 32 Kb
Viteza: 2*10
5
i/s
III
1964
1981
Circuite
integrate
Memorii
semiconduc-
toare, discuri
magnetice,
etc.
Nivel foarte nalt:
Pascal, LISP,
limbaje grafice
Memoria: 2Mb
Viteza: 5*10
6
i/s
IV
1982
1989
Circuite
integrate pe
scar! larg! $i
foarte larg!
Memorii cu
bule, discuri
optice
ADA, limbaje
orientate pe obiecte
Memoria: 8 Mb
Viteza: 3*10
7
i/s
V
Dup!
1990
Circuite
integrate pe
scar! extrem
de larg!,
ma$ini LISP
$i PROLOG
Arhitecturi
paralele
Limbaje
concurente; limbaje
funcionale (LISP);
limbaje logice
(PROLOG)
Viteza: 10
9
10
12

i/s
Memorare $i
prelucrare
cuno$tine,
vedere artificial!,
tehnologia
vorbirii, etc.

Fig. 3.1. Generaiile de calculatoare.







PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 46

3.3. Arhitectura general! a unui calculator numeric

Putem privi calculatorul, pentru nceput, ca o cutie neagr (black-box) n
care se introduc programele $i datele de prelucrat $i de la care se ob#in
rezultatele (fig. 3.2). Dar utilizarea calculatorului n deplin cuno$tin# de
cauz presupune cunoa$terea principalelor sale componente.
Pentru a-$i putea exercita func#iile, calculatorul are n compunerea
nucleului su urmtoarele elemente:

unitatea de comand! $i control (CU-Control Unit;
unitatea aritmetico-logic!( ALU - Arithmetic & Logic Unit);
memoria intern!;
perifericele.














PROCESOR (CPU)
UNITATEA DE CONTROL
Implementeaz
instruc#iunile memorate
Asigur comanda tuturor
elementelor calculatorului
UNITATEA
ARITMETICO-LOGIC)
(ALU)
Execut opera#iile aritmetice $i
logice
DISPOZITIVE DE
IE'IRE
Rezultatele prelucrrii
DISPOZITIVE DE
INTRARE
Date $i instruc#iuni
MEMORIA INTERN)
Pstreaz datele, instruc#iunile
$i rezultatele prelucrrii
MEMORIA EXTERN)
Extinde memoria intern
Date
Instruc#iuni
Comenzi
Fig 3.2. Structura logic! a unui calculator.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 47

Blocul CU mpreun cu ALU formeaz a$a-numitul procesor (CPU),
iar procesorul alturi de memoria intern poart numele de unitate central! de
prelucrare (UCP)

a. Unitatea de comand! $i control controleaz activitatea tuturor
echipamentelor din sistem, pe baza unei secven#e de instruc#iuni
reprezentnd programul memorat.

Din punct de vedere structural, elementele unit#ii de comand-control,
dispozitivele de comand, pot fi de tip convenional, n sensul clasic propus de
von Neumann, $i microprogramate, conform conceptului introdus de Wilkes.
n primul caz, dispozitivul este cablat $i o stare corespunde unei faze de
lucru: ntr-o faz sunt generate anumite semnale de comand necesare
ndeplinirii unei func#ii (execu#ia unei instruc#iuni, a unui ordin etc.).
n cazul microprogramat, unei stri i corespunde o
microinstruciune, adic o succesiune de bi#i ce codific o serie de comenzi
relativ simple. Execu#ia unei func#ii mai complexe necesit un microprogram.
Acest microprogram se afl ntr-o memorie special, numit memorie de
comand! (sau memorie de control). Unitatea de comand-control trebuie s fie
capabil s execute un set de instruc#iuni, iar fiecrei instruc#iuni i corespunde
un microprogram nregistrat, ncepnd cu o anumit adres, n memoria de
comand.

instruc#iune
ALU
REGISTRUL
DE LUCRU
CIRCUITE
DE INTERFA+)

BLOC
EMULATOR
MEMORIA
DE COMAND)
ROM/RAM
GENERATOR
DE IMPULSURI
DECODIFICATOR
BUS - EXTERN
Fig 3.3. Structura unit!ii de comand! $i
control.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 48

Simularea unui set de instruc#iuni pe un calculator microprogramat se
nume$te emulare, microprogramul corespunztor poart numele de
microprogram de emulare sau, simplu, emulator. Executarea unei instruc#iuni
din programul utilizatorului presupune preluarea acestei instruc#iuni din
memoria intern, decodificarea ei $i generarea adresei de nceput a
microprogramului de emulare. Toate acestea sunt realizate ntr-un bloc
emulator.
Urmeaz derularea microinstruc#iunilor din microprogramul selectat.
Fiecare microinstruc#iune ajunge n blocul de decodificare a cmpurilor
microinstruc#iunii $i de generare a comenzilor ce definesc strile procesorului.
Trecerea de la o stare la alta a procesorului este sincronizat de ctre blocul de
generare a impulsurilor de ceas.
O unitate de comand microprogramat poate fi realizat att cu circuite
discrete (integrate standard), ct $i cu circuite integrate pe scar medie (MSI),
larg (LSI) sau foarte larg (VLSI). Cre$terea integrrii permite realizarea unui
bloc func#ional cu pu#ine cipuri sau chiar a mai multor blocuri func#ionale pe
acela$i cip.

Microprocesoarele sunt circuite care con#in n acela$i cip ALU,
registrele de lucru $i decodificatoarele de comenzi nregistrate (partea
delimitat cu linii ntrerupte n figur). Dac setul de instruc#iuni al
calculatorului coincide cu setul de instruc#iuni ce poate fi decodificat $i
executat de microprocesor, atunci blocul de emulare este inutil $i memoria de
comand se confund, practic, cu memoria central. Sistemele realizate cu
microprocesorul se numesc microcalculatoare.

Conectarea cu exteriorul a microprocesorului se realizeaz prin cele
trei magistrale - de date,de adrese si de comenzi

Un microprocesor este caracterizat n principal de:
viteza de lucru;
capacitatea maxim de memorie pe care o poate adresa.;
setul de instruc#iuni pe care le poate executa.

Viteza de lucru a unui microprocesor este determinat de urmatorii
factori:
frecven#a ceasului intern;
dimensiunea regi$trilor interni $i a magistralei de date;
tipul microprocesorului;
dimensiunea memoriei cache:

Frecven#a cu care ceasul intern genereaz pulsuri se nume$te frecven#a
ceasului intern.
Cu ct dimensiunea regi$trilor din microprocesor este mai mare, cu att
viteza de lucru este mai mare; deoarece cre$te capacitatea de memorare n
interiorul microprocesorului $i deci numrul de opera#ii de transfer cu memoria
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 49

intern (care consum timp) scade. Dimensiunea magistralei de date
influen#eaz de asemenea viteza de lucru a procesorului, deoarece pe o
magistral de dimensiune mare debitul de date care circul este mai mare.

Capacitatea maxim de memorie pe care o poate adresa. n
principiu, microprocesorul poate adresa numai cantitatea de memorie maxim
impus de procesorul su. Valoarea maxim a memoriei adresabile este
important, n primul rnd, pentru c microprocesorul lucreaz mult mai rapid
cu memoria intern dect cu cea extern, iar n al doilea rnd, pentru c un
program se poate executa doar dac se afl n memoria intern

Setul de instruciuni pe care un calculator le poate executa este n
general caracterizat direct de tipul microprocesorului. Cu ct setul este mai
bogat, cu att pot fi abordate mai multe domenii de activitate.

b. Unitatea aritmetico-logic! (ALU). Este componenta care prelucreaz
datele cu ajutorul instruc#iunilor. Instruc#iunile sunt aduse, n ordinea dictat de
CU, n registrii, unde se interpretez, se aduc operanzii din memorie, se execut
opera#iile $i rezultatul se depune n memorie.

c. Memoria intern! este memoria n care se afl programele sau por#iuni din
programele active (ce se execut la un moment dat) $i datele necesare lor,
precum $i o parte a sistemului de operare.
Este caracterizat de elementele:
capacitate (numar de octe#i);
timp de acces (intervalul dintre cererea de acces la o dat $i furnizarea
datei de ie$ire);
modul de organizare $i adresare (adresa identific locul unui element
de informa#ie).
Memoria intern se mparte n trei grupe:
memoria de baz;
memoria expandat;
memoria extins.

Memoria de baz. Este o memorie RAM $i reprezint primii 640 Kb de
memorie, fiind zona n care se execut toate aplica#iile sub sistemul de operare
MS-DOS.
Memoria de 384 Kb, rmas disponibil pn la 1 Mb, este memoria
nalt (high memory). n acest spatiu de adrese sunt amplasate:
memoria video - care este o memorie RAM ce con#ine informa#ia text
sau grafic ce se afi$eaz pe ecran;
adaptoare ROM $i RAM pentru diferitele dispozitive ce se pot conecta
n sistem ;
memoria ROM-BIOS- BIOS este un set de instruc#iuni ce asigur
comunicarea ntre procesor $i alte module a$a cum sunt tastatura $i
driverul de disc.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 50

Memoria expandat. Odat cu mrirea gradului de complexitate a
programelor, cei 640 Kb au devenit insuficien#i. Solu#ia adoptat a fost
utilizarea memoriei expandate. Aceast memorie poate fi adresat ntr-o
fereastr fix, de 64 Kb, rezervat n spa#iul de adrese peste 640 Kb a
microprocesorului.

Memoria extins. Este numit astfel memoria de peste 1 Mb adresabil
de ctre microprocesor.

n afara celor trei tipuri de memorie descrise anterior, exist memoria
cache (memorie tampon rapid). Ea este o memorie RAM $i are rolul de a
mbunt#i viteza de operare a sistemului. Aceasta se realizeaz prin pstrarea
n memoria cache a informa#iei ce trebuie gasit rapid. Cu ct memoria cache
este mai mare, cu atat viteza de lucru a microprocesorului cre$te.

Capacitatea memoriei este reprezentat prin numrul de bi#i de
informa#ie pe care i poate stoca. Se utilizeaz ca unitate de msur a capacit#ii
memoriei octetul sau byte (cuvnt de 8 bi#i), mpreun cu multiplii si:
Kilooctet (Ko sau Kb-Kilo Bytes);
-1 Kb =2
10
= 1024 octe#i.
Megaoctet (Mo sau Mo-Mega Bytes);
-1 Mb =2
20
= 1024 Kb.
Gigaoctet (Go sau Gb-Giga Bytes) :
-1 Gb =2
30
= 1024 Mb.
Teraoctet (To sau Tb-Tera Bytes) ;
-1 Tb =2
40
= 1024 Gb.

Din punctul de vedere al accesului, exist dou tipuri de memorie:
memorie RAM $i memorie ROM.

Memoria RAM (Random Access Memory) - este implementat cu
circuite statice (SRAM) sau dinamice (DRAM). Accesul la aceste memorii se
poate face att pentru citirea, ct $i pentru scrierea unei loca#ii. Memoria RAM
con#ine programele utilizator active $i datele necesare lor, precum $i o zon de
date a sisemului de operare. Informa#ia con#inut de aceast memorie se pierde
la deconectarea tensiunii de alimentare. n acest caz spunem c memoria este
volatil.

Memoria ROM (Read Only Memory) - permite accesul doar pentru
citirea informa#iei. Memoria ROM este o memorie nevolatil, informa#ia
memorat nu se pierde la deconectarea tensiunii. Timpul de acces la memoria
ROM este, n general, mai mare dect timpul de acces la memoria RAM. O
categorie special de astfel de memorii, numite PROM (Progrmable ROM)
este programabil, adic informa#iile pot fi ncrcate, dar numai de ctre firma
productoarea calculatorului sau alte institu#ii specializate n hard.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 51

Promurile erau ini#ial programabile prin ardere, adic un proces chimic
ireversibil. Ulterior au aprut EPROM-urile (Ereaseble PROM), care pot fi
$terse $i reprogramate cu ajutorul unui dispozitiv special cu ultraviolete.

d. Perifericele sunt acele dispozitive care asigur extinderea capacit#ilor
sistemului de calcul. Ele sunt de dou categorii:
dispozitivele de intrare-ie$ire, care asigur schimbul sistemului de
calcul cu mediul nconjurtor, deci $i interfa#a cu utilizatorul;
memoria extern!, care extinde capacitatea memoriei interne.

Dispozitivele periferice sunt:
dispozitive de intrare sau de introducere;
dispozitive de ie$ire sau de extragere;
dispozitive de intrare-ie$ire.

Dipozitivele de intrare sunt acele echipamente care permit:
s introduc date $i programe n memoria calculatorului
s se comunice calculatorului comenzile utilizatorului.

Principalele echipamente de intrare sunt:
tastatura;
mouse-ul;
joystick-ul;
scanner-ul.

Tastatura reprezint dispozitivul principal de intrare $i se folose$te
pentru introducerea comenzilor $i a datelor n system.
Mouse-ul este un dispozitiv de introducere, utilizat pentru selectarea
unor op#iuni din meniuri sau manipularea unor obiecte, cum ar fi texte sau
grafice.
Scanner-ul este un echipament periferic pentru preluarea de imagini $i
texte. Scanner-ul preia imaginea pe puncte (pixeli). Exist programe de de
citire $i de recunoa$tere a textelor (OCR Optical Caracter Recognition),
programul ncercnd s izoleze fiecare grup de pixeli $i s l converteasc n
caracter. Una dintre problemele cele mai complexe ale prelucrrii imaginilor
const n faptul c acestea sunt foarte mari consumatoare de memorie .
Cititorul de coduri de bare este un caz particular de combina#ie dintre
handz scanner $i ORC. Se utilizeaz mai ales n nregistratoarele de cas din
marile magazine, fiind format dintr-un ansamblu de citire, emisie / detec#ie a
intensit#ii luminoase. Pentru siguran# $i aceste sisteme sunt legate de tastaturi,
ca n caz de indecizie, s se poat tasta datele.

Echipamente de ie$ire permit extragerea rezultatelor prelucrrii, pe
calculator.
Principalele echipamente de ie$ire sunt:
monitorul;
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 52

imprimanta;
ploterul, etc.
Monitorul $i placa video. Dintre subsistemele de ie$ire, unul dintre
cele mai importante este cel video. El const din dou componente principale:
monitorul (sau afi$ajul video)
adaptorul video (numit $i placa video sau placa grafic).
Rezoluia monitorului reprezint numrul de puncte distincte (pixeli)
afi$abile pe toat suprafa#a ecranului.Exte evident c, cu ct numarul de
puncte este mai mare, cu att imaginile au mai multe detalii, sunt mai clare $i
deci, rezolu#ia monitorului este mai bun. Numrul de puncte se indic sub
forma produsului dintre numrul de caractere dintr-o linie(numrul de coloane)
$i numrul de linii.
Pl!cile video furnizeaz semnale care comand monitorul, existnd mai
multe standarde, dintre care :
pentru ecran monocrom sunt: MDA, Hercules etc
pentru ecrane color sunt: CGA, EGA, VGA, SVGA, XGA.
Azi variantele uzuale sunt SVGA $i XGA , care ofer rezolu#ii foarte bune, iar
rezolu#ia 1024x768 devine rezolu#ie standard.

Imprimantele sunt principalele echipamente de ie$ire care realizeaz
apari#ia pe hrtie a informa#iilor alfanumerice sau grafice.
Structura general a unui echipament de imprimare este definit de existen#a
unor blocuri func#ionale cum ar fi:
blocul de imprimare
sistemul de avans al hrtiei
blocul logic de comand
interfa#a
Imprimantele uzuale folosite la PC-uri pot fi clasificate astfel:
dup calitatea tipririi caracterelor:
cu laser sau cu jet de cerneal
liniare sau cu cap de tiprire
matriciale
dup calitatea tipririi graficelor:
cu laser sau cu jet de cerneal
matriciale
dup pre#:
cu laser
cu lan#
cu jet de cerneal
matricial
cu cap de tiprire.

Plotterul (echipament de trasat) este un dispozitiv periferic care poate
genera o imagine grafic pe un suport material (de obicei hrtie, calc sau film).
Echipamentul se compune din:
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 53

un modul de trasare, care este ansamblul func#ional ce genereaz
imaginea grafic pe suportul material, pe baza unui anumit procedeu
fizic de trasare
blocul de control al trasrii
unitatea logic
interfa#a cu calculatorul.

Plottere-le pot fi cu mas, cu tambur,cu laser etc. Principalele plottere
sunt, ns, cu mas $i cu tambur. Aceste plottere deseneaz pe hrtie sau calc.
Plotterele se utilizeaz pentru trasarea hr#ilor, precum $i a unor desene mai
preten#ioase dect cele ce se pot realiza cu imprimantele. n concluzie, ele se
utilizeaz n special n acele ntreprinderi n care exist activit#i specifice de
CAD (Computer Aided Design proiectare asistat de calculator).


e. Magistrale de date, de adrese, de comenzi

Magistrala se define$te ca mul#imea conductoarelor (linii) folosite n
comun de mai multe unit#i func#ionale pentru realizarea unor sarcini.

Magistrala de date este alctuit din liniile ce asigur transferul datelor
ntre microprocesor, memorie si dispozitivele I/E. Aceast magistral este
bidirec#ional - pe ea intr date cnd se efectueaz o citire din memorie sau de
la dispozitivele I/E $i ies date la efectuarea unei scrieri.

Magistrala de adrese este unidirec#ional - adresele ies din
microprocesor pentru a fi transmise ctre memorie sau dispozitivele de I/E.

Magistrala de comenzi este reuniunea unor semnale individuale de I/E
din microprocesor. Aceste semnale se pot clasifica astfel:
semnale de control -prin care microprocesorul coordoneaz
func#ionarea dispozitivelor de pe magistral (exemple: READ,WRITE);
semnale de stare -prin care microprocesorul prime$te reac#ii de la
dispozitivele situate pe magistral (exemple: cerere de ntrerupere,
cerere de suspendare a controlului magistralei).
3.4. Reele de calculatoare.

Prin reea de calculatoare ntelegem un ansamblu de calculatoare
legate ntre ele prin intermediul canalelor de comunica&ie n scopul schimbului
de informa&ie sau al utilizrii n comun a mai multor resurse.

Din punct de vedere fizic, o re#ea de calculatoare se compune dintr-o
re#ea de comunica#ii $i o mul#ime de calculatoare $i echipamente periferice
destinate prelucrrii, memorrii $i accesului la datele $i programele din re#ea.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 54


Re#eaua de comunicatii asigur nivelul fizic al legaturilor din re#ea;
nivelul fizic poate fi realizat ntr-o varietate de configura#ii care depind de
mediul de cumunica#ie (telefonic, fibre optice s,a.), de tipul liniilor (simplex,
semiduplex, duplex integral), de dispunerea geografic a punctelor din re#ea.

3.4.1. Clasificarea $i tipurile de comunicaie

Din punct de vedere al ntinderii, re#elele pot fi clasificate:
de arie larg (WAN) peste 100 km:
de arie metropolitan (MAN) 1-100 km;
de arie local (LAN) sub 1 km.

Re#elele de comunica#ii de date pot fi clasificate dup arhitecturile $i
tehnicile utilizate pentru transferul de date astfel:
re#ele cu comutare de circuite;
re#ele cu comutare de mesaje;
re#ele cu comutare de pachete.

Comutarea de circuite. Comunica#ia prin comutare de circuite implic
existen#a unei ci de comunica#ie ntre dou sta#ii. Cel mai comun exemplu al
comutrii de circuite este cel al re#elei telefonice. Ea se caracterizeaz prin
stabilirea n prealabil a unei legturi $i prin ocuparea liniilor n timpul duratei
comunica#iei, iar n final eliberarea legturii. Datele sunt transmise cu rat fix,
fr nici o alt ntrziere dect cea necesar propagrii datelor prin cablu,
ntrzierea necesar comutrii la noduri, la ncrcri normale ale re#elei, fiind
neglijabil.

Comutarea de mesaje. La comutarea de mesaje, nu este necesar s
stabilim o cale direct ntre dou sta#ii. Dac o sta#ie dore$te s transmit un
mesaj, va aduga o adres de destina#ie a mesajului. Mesajul va fi trecut apoi
din nod n nod prin toat re#eaua pn la destina#ie. La fiecare nod, ntregul
mesaj este memorat si apoi retransmis urmtorului nod.

Comutarea de pachete reprezint o ncercare de a combina avantajele
comutrii de mesaje $i de circuite, ncernd n acela$i timp s limiteze
dezavantajul ambelor. Pentru simplificarea tehnicilor de transmisie n subre#ea,
mesajele se fragmenteaz n unit#i mai mici. Unittile de informatie n care se
fragmenteaz mesajele $i care sunt vehiculate n re#ea se numesc pachete.
Pachetele nu mai sunt memorate n fi$iere. O copie a unui pachet poate fi
temporar stocat pentru eventuala recuperarea a erorilor, dar numai pentru
acest scop. Unitatea de mesaj (pachetul) a fost introdus pentru a men#ine timpul
de transmisie sub control.

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 55

3.4.2. Elemente de sisteme deschise
Re#elele moderne de calculatoare sunt organizate ca o ierarhie de
niveluri, fiecare nivel fiind construit pe baza celui precedent. La nivelul cel mai
de jos se afl comunicaia fizic, iar la nivelurile superioare comunica#ia
virtual. ntre fiecare pereche de niveluri adiacente exist o interfa# care
define$te ce opera#ii primitive $i servicii ofer un nivel pentru nivelul superior.
Ierarhiei de nivele i corespunde una de protocoale.
Conceptul de re#ele implic faptul c entit#i din diferite sisteme trebuie
s comunice. Exmple de entit#i sunt programele de aplica#ii, sistemele de
administrare a bazelor de date, po$ta electronic etc. n general, o entitate este
capabil de transmisie/recep#ie, iar un sistem este un obiect fizic distinct ce
con#ine una sau mai multe entit#i. Setul de reguli ce guverneaz schimbul de
date ntre dou entit#i se nume$te protocol.
n ncercarea de standardzare a protocoalelor de comunica#ie
Organizaia Internaional pentru Standardizare (ISO) a propus un model
de re#ea, structurat pe sapte niveluri ierarhice - model cunoscut sub numele de
modelul de referin! ISO pentru interconectarea sistemelor deschise
(OSI).

Modelul de referin# OSI (ISO) este reprezentat n fig. 3.4.
ISO/OSI descrie $apte nivele func#ionale, astfel:


Niveln
r.
Sistemul A Protocoale Sistemul B
7. Aplicaie Aplicaie
6. Prezentare Prezentare
5. Sesiune Sesiune
4. Transport Transport
3. Reea Reea
2. Leg!tur! de date Leg!tur! de date
1. Nivel fizic Nivel fizic
Mediul fizic

Fig. 3.4 Nivelele modelului ISO/OSI.

Nivelul fizic (1)
Acest prim nivel este, de fapt, un set de reguli care stabilesc exact
hardware-ul care trebuie folosit pentru transmiterea datelor. Aici se stabilesc
cablurile, conectorii, nivelele de tensiune, timpii fiecrui semnal, semnalele
primare de sincronizare,etc. Tot acest nivel define$te diferitele metode care pot
fi folosite n transmiterea la nivel fizic. Aici se precizeaz dac transmisia va fi
serial sau paralel, de exemplu.




PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 56

Nivelul leg!turii de date (2)

Nivelul fizic transmite nivelului legturii de date un flux continuu de
bi#i. Aici bi#ii primesc un anume sens, fiind nlocui#i cu no#iunea de cadru de
date (data frame) sau pachet de date (package). Acest nivel rspunde de
adugarea unor bi#i fanion care indic nceputul $i sfr$itul pachetelor.
Totodat, se adaug adrese de re#ea (de obicei doar ale sursei $i destina#iei) $i
bi#i pentru detec#ia $i corec#ia erorilor de transmisie.

Nivelul reea (3)

Serviciul de re#ea este responsabil pentru stabilirea, men#inerea $i
terminarea conexiunilor prin intermediul facilit#ilor de comunica#ie implicate.

Nivelul transport (4)

Acest nivel are ca sarcin principal asigurarea transmiterii corecte a
mesajelor de la nivelul aplica#iei ,la fel cum nivelul legturii de date asigur
transmiterea corect a pachetelor ntre noduri adiacente. Diferen#a principal
este aceea c nivelul transport asigur acest serviciu ntre surs $i destina#ie.
Toate aspectele legate de aceast problem sunt tratate de acest nivel. Ca un
exemplu, mesajele lungi sunt fragmentate n mai multe pachete nainte de
transmisie $i reasamblate la destina#ie de ctre acela$i nivel.

Nivelul sesiune (5)

Putem privi acest nivel ca pe un manager al re#elei n sensul c acesta se
ocup de parole, translatri de adrese $i nume, monitorizarea traficului pe re#ea,
terminarea transmisiei ntre dou calculatoare,etc.

Nivelul prezentare (6)

Acest nivel nu se ocup de transmisia propriu-zis a informa#iei ci de o
prelucrare a acesteia. Acestui nivel i revine sarcina s gseasc un format
comun pentru surs $i destina#ie (de exemplu, caracteristicile terminalelor), s
converteasc fi$ierele, eventual s le compacteze sau s le codifice.

Nivelul aplicaie (7)

Acesta este nivelul aplica#iilor cu care utilizatorul interac#ioneaz direct.
La acest nivel gsim o multitudine de aplica#ii, multe cu propriul lor protocol.
Totu$i, exist domenii pentru care s-au definit standarde $i la acest nivel (ca un
exemplu, avem domeniul bancar). La acest nivel ntlnim aplica#ii ca: baz de
date, po$t electronic, transfer de fi$iere, gestiunea fi$ierelor, etc.


PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 57

3.4.3. Structura unei reele locale

Principalele componente ale unei re#ele locale sunt:
Sta#iile de lucru;
File Serverele;
Cablurile de legtur;
Adaptoarele pentru re#ea.
Pentru interconectarea mai multor re#ele avem urmtoarele componente:
Repeater-ul;
Puntea;
Routerul;
Poarta (gateway).

Staia de lucru este un microcalculator (n general un compatibil IBM-
PC) conectat la o re#ea prin intermediul plcii de re#ea $i este folosit pentru a
executa diferite lucrri, programe de aplica#ie, utilitare, etc.

File Server-ul este un calculator pe care este ncrcat $i ruleaz sistemul
de operare pentru re#ea (Net Operating System). El supervizeaz comunica#iile
n cadrul re#elei $i gestioneaz resursele partajate (ca de exemplu, fi$ierele,
imprimantele, utilizatorii, drepturile de acces, etc.).
File Server-ul trebuie s fie echipat cel pu#in cu un hard disk, memorie intern
suficient $i cel pu#in o plac de re#ea.
File Server-ele pot fi :

dedicate (folosite exclusiv pentru monitorizarea re#elei);
nededicate (pot fi folosite $i ca sta#ii de lucru).

Punile permit comunicarea ntre re#ele care au nivelul fizic $i nivelul
legtur de date diferite (de exemplu, printr-o punte de LAN se poate lega o
re#ea de tip TOKEN_RING cu o re#ea de tip ETHERNET).
La re#elele interconectate prin pun#i, utilizatorii pot folosi n comun resursele
comune din re#ea (fi$iere, imprimante, discuri, etc.) sau pot comuta mesaje
ntre sta#ii.

Repeater-ul func#ioneaz ca un amplificator de semnal ntre sisteme
situate la o distan#a mai mare dect cea care asigur acurate#ea transmisiei.
Un router, ca $i un gateway, separ, de obicei, re#ele de tip diferit, fiind astfel
elemente de baz n interconectarea re#elelor. Ele se deosebesc prin nivelul
diferit la care lucreaz.
Una dintre cele mai rspndite tipuri de LAN este re#eaua local
Ethernet. Aceasta utilizeaz pentru comunicarea ntre nodurile re#elei cabluri.
Nodurile pot fi file-server, sta#ii de lucru, print-server, etc.


PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 58

n re#elele Ethernet se utilizeaz dou tipuri de cabluri:
cabluri sub#iri, situa#ie n care sta#iile se leag una de alta n $ir;
cabluri groase (singurele prevzute n standardul Ethernet), situa#ie
n care toate sta#iile se leag pe acela$i cablu, numit magistral.
Por#iunea dintre primul $i ultimul calculator dintr-o re#ea Ethernet
formeaz un segment de reea sau tronson. Fiecare tronson are la capete cte
un terminator pentru a evita efectele de reflexie a semnalului.

3.4.4. Topologii de reea

Forma re#elei de comunica#ii dat prin pozi#ia $i legturile dintre
nodurile acesteia st la baza proiectrii traseelor de informa#ii n vederea
alegerii acelei configura#ii care s asigure cele mai multe dintre criteriile de
performan# urmrite (timpul n care poate fi transferat informa#ia ntre dou
puncte oarecare ale re#elei, siguran#a n transmisie, costuri $.a.).

Topologiile de LAN pot fi:
inel;
stea;
bus;
arbore;
plas;
cu hub-uri.

Topologia de tip inel.

Realizeaz o conectivitate fizic minimal $i nesimetric ntre
elementele sistemului, fiecare element fiind conectat doar la vecinii si imedia#i
prin ci dedicate unidirec#ionale. n fiecare nod avem un repeat-er de
informa#ie, deci punctele de acces sunt active, spre deosebire de conexiunea
bus (cum vom vedea n continuare).

Topologia n stea

ntr-o topologie de tip stea, fiecare nod din re#ea care accept $i livreaz
informa#ie utilizatorilor este conectat la un singur nod central, prin care trebuie
s treac tot traficul. Doar nodul central trebuie s posede informa#ii ce
definesc topologia re#elei; fiecare nod destinatar este conectat printr-o linie
distinct, iar tabele de dirijare a nodului central indic, pentru fiecare sta#ie,
linia de ie$ire corespunztoare.





PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 59

Topologia magistral!

Se caracterizeaz prin aranjarea nodurilor ntr-o structur liniar pe baza
utilizrii unei ci de comunica#ie partajate, unice.
Punctele de acces sunt conectate, prin jonc#iuni pasive la suport, iar informa#ia
este emis spre suport $i recopiat prin celelalte puncte de acces.

Topologia arborescent!

ntr-o re#ea de acest tip exist o singur cale ntre fiecare pereche de
noduri, dar ntre nodurile nepereche pot exista mai multe ci. Toate informa#iile
necesare pentru func#ionarea algoritmului de dirijare pot fi con#inute n adresa
nodului destina#ie.
n ncheiere men#ionm faptul c hub-ul este un distribuitor de legturi,
tot mai mult folosit n pregtirea mai multor tipuri de re#ele LAN pentru a
participa la comunica#ia prin INTERNET.

3.5. Comunicaia prin INTERNET

Din punct de vedere al utilizatorului, INTERNET-ul trebuie privit ca o
reea de reele. Fie c este vorba de re#ele locale, de cele metropolitane sau de
mari re#ele cu larg rspndire geografic, toate acestea sunt tratate n mod
identic chiar dac folosesc diferite arhitecturi sau standarde. INTERNET-ul
trebuie asimilat cu o reea virtual! care conecteaz echipamente ntr-un mod
uniform, indiferent de deosebirile constructive ale acestora. Acest lucru
permite existen#a unor aplica#ii de nivel nalt, prezente pe orice platform hard,
independent de arhitectur sau de sistemul de operare. Toate serviciile puse la
dispozi#ie de INTERNET sunt universal accesibile $i la dispozi#ia tuturor.

Servicii oferite de INTERNET

Po$ta electronic! (E-mail);
Acesta este un serviciu de transmisie de mesaje prin intermediul re#elei
INTERNET. Folosirea po$tei electronice este foarte simpl $i rapid, mult mai
ieftin fa# de modalit#ile tradi#ionale de trimitere a mesajelor. Prin po$ta
electronic se pot trimite mesaje text la care se pot ata$a, dac este nevoie
fi$iere de orice tip. Deservirea este prompt, de ordinul a cteva minute pentru
persoane aflate la mii de kilometri distan#. Dac mesajul nu ajunge la
destina#ie din motive obiective, este ntors emitentului cu un mesaj explicativ.
Destinatarul nu trebuie s fie n fa#a calculatorului cnd prime$te mesajul (cum
se ntmpl n cazul telefonului sau fax-ului).
Serviciul de po$t electronic este asigurat de programe diferite pe platforme
de operare diferite. Operarea este foarte u$or de nv#at.


PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 60

Usenet-ul
Acesta este un sistem de conferin#e bazat pe articole. Discu#iile se poart
n a$a numite newsgroups (grupuri de $tiri). Fiecare newsgroup are un nume
care define$te $i subiectul de discu#ie. Oricine are acces la Usenet poate
publica un articol n orice grup dore$te. De asemenea, oricine poate citi orice
grup fr a fi necesar o abonare prealabil. Ca $i E-mail-ul, Usenet-ul este
un protocol. Pentru a putea folosi sistemul, utilizatorul are nevoie de un
program care respect acest protocol.

FTP (File Transfer Protocol)
Este principalul serviciu de transfer de fi$iere ntre dou calculatoare n
INTERNET.

Talk
De$i E-mail-ul este cel mai folosit $i mai comod mod de comunicare,
apar situa#ii cnd acest serviciu nu este suficient. Dac dou persoane vor s
duc o conversa#ie pe o anumit tem, care presupune mesaje scurte, dar multe
ntre cei doi, atunci aplica#ia Talk este cea mai potrivit. Aceast aplica#ie este
un instrument de comunicare sincron (cei doi particip simultan la
comunicare), fiecare din cei doi vede ceea ce scrie cellalt la tastatur.

WWW
Acest serviciu este unul din ultimele aprute pe INTERNET dar care a
c$tigat deja un mare renume $i o larg rspndire. Dezvoltat la CERN n
Elve#ia, World Wide Web (prescurtat WWW) este un sistem care adun mai
multe facilit#i ale INTERNET-ului ntr-o singur aplica#ie. n principal,
WWW ofer un numr uria$ de pagini de informa#ii multimedia, conectate prin
hiperlegturi. O pagin poate con#ine text formatat, imagini, sunet sau chiar
imagini video, precum $i referin#e la alte pagini.

Telnet-ul
Acesta este un protocol INTERNET pentru conectarea la un calculator
aflat la distan# (remote). El ofer utilizatorului posibilitatea s foloseasc un
alt calculator pentru executarea anumitor programe.

Toate serviciile INTERNET prezentate pot fi urmrite in extenso n
referin#ele bibliografice.
Concluzionm aceast prezentare sumar a unui univers n plin
expansiune, afirmndu-ne convingerea c succesul unei afaceri sau al unui
demers oarecare care presupune comunicare operativ, poate fi sus#inut
puternic de lumea re#elelor interconectate la scar planetar.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 61

Capitolul 4
Bazele logico-matematice ale
sistemelor de calcul
Pentru cei mai mul#i dintre noi calculatorul este o unealt. Manager,
informatician sau simplu consumator de servicii informatice fiind, este corect
s de#ii informa#ii concise $i precise relativ la ceea ce este de competen#a unui
sistem de calcul $i ceea ce rmne n nchipuirea celui care modeleaz.
n acest capitol abordm, de fapt, trei probleme importante pentru o
n#elegere mai profund a poten#ialului unui sistem de calcul: aritmetica
sistemelor de calcul, codificarea datelor n sistemele de calcul $i bazele logice
ale sistemelor de calcul.
4.1. Sisteme de numeraie
Un sistem de numeraie este reprezentat prin totalitatea regulilor de
reprezentare a numerelor cu ajutorul unor simboluri numite cifre.
De-a lungul vremurilor s-au inventat mai multe sisteme de numera#ie.
Acestea se pot clasifica dup mai multe criterii. Cea mai uzual clasificare a
acestora este urmtoarea:
sisteme de numera#ie nepozi#ionale;
sisteme de numera#ie pozi#ionale.
Cel mai reprezentativ sistem nepozi#ional este sistemul roman care
folose$te simbolurile: I,V,X,L,C,D,M. Regulile folosite n acest sistem pentru
formarea numerelor sunt:
nsumarea cifrelor (simbolurilor) de aceea$i valoare, a$ezate una lng
alta, ca de exemplu: III=3, XXVII=27;
cifr de valoare mai mic a$ezat naintea uneia de valoare mai mare se
scade din aceasta, ca de exemplu: IV=4, XL=40;
cifr de valoare mai mare a$ezat naintea uneia de o valoare mai mic,
se adun la aceasta, ca de exemplu: VI=6, LX=60.
Regulile prezentate mai sus prezint o serie de neajunsuri care au
determinat, de fapt, abandonarea sistemului. Dintre neajunsurile posibile
semnalm:
lungimea numrului nu are nici o legtur cu valoarea lui;
exist dificult#i n efectuarea calculelor.
Dintre sistemele pozi#ionale, cel mai reprezentativ este sistemul arab,
caracterizat prin faptul c aportul unei cifre la valoarea numrului depinde att
de valoarea ei ct $i de pozi#ia pe care o ocup n scrierea numrului.
Astfel, de exemplu, dac scriem numrul 1231, cifrele 1 din pozi#ia
unit#ilor $i a miilor au ponderi diferite. Pozi#ia unei cifre n scrierea unui
numr depinde de ordinul ei de mrime n acel numr. Vom avea, prin urmare:
ordinul unit#ilor, ordinul zecilor, ordinul sutelor, $.a.m.d..

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 62

ntr-un sistem de numera#ie pozi#ional, numrul unit#ilor de acela$i
ordin de mrime care formeaz o unitate de ordin imediat superior se nume$te
baz! a sistemului de numeraie. Numrul simbolurilor (cifrelor) necesare
pentru scrierea numerelor ntr-un sistem de numera#ie este egal chiar cu baza
acelui sistem.
4.1.1.Scrierea numerelor naturale ntr-o baz! b
Fie bN, b>1, un numr natural numit baz! de numeraie. ntreaga
teorie aritmetic a reprezentrii numerelor n baza b este fundamentat pe
afirma#ia:
Pentru orice numr natural nenul x, exist un unic numr natural n,
numit rang $i n+1 numere naturale c
0
, c
1
, , c
n
, numite cifre n baza b, care
satisfac rela#iile:
x=c
n
b
n
+c
n-1
b
n-1
++c
1
b
1
+c
0
;
c
i
{0, 1, , b-1}, i{0, 1, , n};
c
n
0.
Pentru exemplificare s considerm numrul:
x =3235
(10)
=CA3
(16)
Dac este scris n baz 10, avem x =3*10
3
+2*10
2
+3*10
1
+5.Deci n=3,
c
0
=5, c
1
=3, c
2
=2, c
3
=3
n baza 16, avem x=C*16
2
+A*16+3.
Deci n=2, c
0
=3, c
1
=A, c
2
=C.

Ata$m fiecrui numr din mul#imea {0,1, , b 1} cte un simbol C
i
n
a$a fel nct la numere diferite s ata$m simboluri diferite. Convenim, de
asemenea, c atunci cnd ne refenim la o cifr c
i
, s scriem de fapt simbolul C
i

asociat numrului c
i
. Cu aceste conven#ii avem reprezentarea num!rului x n
baza b:
C
m
C
m-1
C
1
C
0(b)

De exemplu, pentru numrul x=1024 din baza 10 avem:
x =3235
(10)
=CA3
(16)
Sistemul de numera#ie cel mai des utilizat n via#a de zi cu zi este
sistemul zecimal.
Sistemul de numera#ie cu baza doi, numit sistem binar, care utilizeaz
numai cifrele 0 $i 1, st la baza construc#iei sistemelor de calcul.
Sistemul de numera#ie cu baza 16, numit sistem hexazecimal, folose$te
cifrele:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
Ultimele $ase simboluri desemneaz numerele zecimale 10, 11, 12, 13,
14, 15 ca cifre n baza 16.
4.1.2.Scrierea numerelor reale ntr-o baz! b
Defini#ia dat reprezentrii numerelor naturale poate fi extins $i la
numere reale. Fie x un numr real strict pozitiv.
Spunem c succesiunea:
c
n
c
n-1
c
1
c
0,
c
-1
c
-2
c
-m(b)

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 63

este reprezentarea numrului real x n baza b, dac sunt ndeplinite condi#iile:

x=c
n
b
n
+c
n-1
b
n-1
++c
1
b
1
+c
0
+c
-1
b
-1
+c
-2
b
-2
++c
-m
b
-m
;
c
i
{0,1,,b-1} i{n,n-1,,1,0,-1,-2,,-m};
c
n
0;
(k0) exist (jk) astfel nct c
j
<b-1.

Comparnd defini#ia dat reprezentrii numerelor reale cu cea dat
reprezentrii numerelor naturale, se observ c la numerele reale avem, n plus,
condi#ia a patra, care cere s nu existe un rang ncepnd de la care toate cifrele
reprezentrii s fie egale cu b-1. Aceast condi#ie este necesar pentru a asigura
unicitatea reprezentrii numerelor. n absen#a acestei condi#ii are loc egalitatea:
0,5=0,49999
Succesiunea:
c
n
c
n-1
c
1
c
0(b)

reprezint, n baza b, partea ntreag a numrului x, iar succesiunea:
c
-1
c
-2
c
-m

reprezint, n baza b, partea frac#ionar a numrului x.
Extinderea acestei reprezentri la toate numerele reale este realizat fcnd
precizrile:
numrul zero se reprezint 0;
dac x<0 atunci se reprezint valoarea absolut a lui x ca mai sus, n fa#a
acestei reprezentri punndu-se semnul (-).
4.1.3.Schimbarea bazei de numeraie
Existen#a $i utilitatea mai multor baze de numera#ie ridic problema
conversiei numerelor dintr-o baz n alta. Pentru fixarea ideilor, s presupunem
c numrul x este reprezentat ntr-o baz veche p $i se dore$te conversia lui
ntr-o baz nou q. Mai cunoscute sunt urmtoarele trei metode de conversie:
Metoda mp!ririi la baz! a numerelor ntregi, cu calcule n baza veche
p (pentru conversia pr#ii ntregi).
Metoda nmulirii cu baza a pr#ilor frac#ionare, cu calcule n baza
veche p (pentru conversia pr#ii frac#ionare).
Metoda substituiei, care presupune calcule n baza nou q.
4.1.3.1. Conversia ntregilor prin mp!riri successive
Ideea de baz a acestei metode de conversie porne$te de la observa#ia c
cifra unit#ilor unui numr natural x scris ntr-o baz q coincide cu restul
mpr#irii lui x la q. Calculele care permit determinarea restului se fac n baza
veche p. Pornind de la aceast observa#ie, algoritmul de conversie prin
mpr#iri succesive const din mpr#iri succesive la q ale numrului x $i apoi
ale cturilor succesiv ob#inute. Algoritmul se opre$te cnd se ajunge la primul
ct egal cu zero.
Resturile mpr#irilor succesive, luate n ordine invers apari#iei, vor fi
cifrele numrului ntreg x n baza nou q.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 64

Exemplu.
Fiind dat numrul 123 n baza 10 s se afle echivalentul lui n baza 16.
Pasul 1. 123:16 => Ct = 7, Rest = 11
(10)
= B
(16)
Pasul 2. 7:16 =>Ct = 0, Rest = 7.
Deci, 123
(10)
=7B
(16)
.

Evident, aceast metod de conversie este preferat atunci cnd baza
veche este 10, calculele n alte baze nefiind la ndemna celor mul#i.

4.1.3.2. Conversia p!rilor fracionare prin muliri succesive
Ne intereseaz acum gsirea cifrelor zecimale atunci cnd dorim s
trecem dintr-o baz veche p ntr-o baz nou q. S considerm numarul real x
reprezentat n baza p.

Algoritmul de conversie a pr#ii frac#ionare const n nmul#iri
successive cu q ale pr#ii frac#ionare a numrului x $i apoi ale pr#ilor
frac#ionare ale produselor succesiv ob#inute. Algoritmul se opre$te cnd se
ajunge la una din urmtoarele situa#ii:

partea frac#ionar a produsului par#ial este zero; n acest caz rezultatul
conversiei este un numr subunitar cu un numr finit de cifre la partea
frac#ionar;
partea frac#ionar a produsului se repet; n acest caz rezultatul
conversiei este o frac#ie periodic;
dac nu se ajunge la nici una dintre situa#iile de mai sus, algoritmul se
opre$te cnd se consider c s-au determinat suficiente cifre ale
rezultatului conversiei.
Pr#ile ntregi ale produselor ob#inute prin nmul#iri succesive,
considerate n ordinea apari#iei lor, vor fi cifrele pr#ii frac#ionare a numrului
real x n noua baz q.
Exemplul 1. Fie a=0.25
(10)
x=?
(2)
.

0.25 a x 2
0.50 a x 2
1.00 STOP

x=0.01
(2)


Exemplul 2. Fie a=0.124
(10)
x=?
(3)
.

0.124 a x 3
0.372 a x 3
1.016 a x 3
0.048 a x 3
0.144 a x 3
0.432 a x 3
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 65

1. 296 a x 3
0. 888 a x 3
2.664 $.a.m.d.

x0.01000102
(3)
.

Orice numr scris ntr-o baz p se poate converti la o baz q efectund
calculele n baza p, convertind partea lui ntreag prin algoritmul de mpr#iri
succesive, iar partea lui frac#ionar prin algoritmul de nmul#iri succesive.

4.1.3.3. Conversia numerelor prin metoda substituiei.
Dac metodele prezentate n paragrafele de mai sus permiteau un traseu
de tipul De la baza p la baza 10 $i de aici la baza q, ceea ce echivaleaz cu
faptul c toate calculele se fac n baza 10, exist $i posibilitatea de a schimba
baza de numera#ie fcnd calcule n baza nou, astfel:
Dat numrul N n baza p, conversia la baza q se poate realiza fcnd
toate calculele n baza q, tinnd cont de faptul c din

N
(p)
=C
n
p
n
+C
n-1
p
n-1
++C
1
p+C
0
+C
-1
p
-1
+C
-2
p
-2
+C
-m
p
-m


deducem c putem avea:
N
(q)
=Eq(C
n
)(Eq(p))
n
+Eq(C
n-1
)(Eq(p))
n-1
++Eq(C
1
)(Eq(p))+Eq(C
0
) +
+Eq(C
-1
)(Eq(p))
-1
+Eq(C
-2
)(Eq(p))
-2
+... Eq(C
-m
)(Eq(p))
-m
.
Prin Eq(x) se n#elege echivalentul n baza q al numrului natural x.
De asemenea, de remarcat c toate calculele se fac n baza q, ceea ce nu
este ntotdeauna extrem de convenabil dac nu exist exerci#iu.
Exemplu. Fiind dat numrul 123 n baza 10 s se afle echivalentul lui n
baza 8 prin metoda substitu#iei.

N
(10)
=(110
2
+210+3)
10
= (1(12)
2
+212+3)
8
=(144+24+3)
8
=173
(8)
.

ncheiem aceste considera#ii relativ la sisteme de numera#ie cu
precizarea c mai exist $i alte procedee de conversie, extrem de rapide, n
cazul n care bazele ntre care se fac conversii sunt puteri ale lui 2 (2,4,8,16,
etc.).
4.2. Codificarea datelor numerice n sistemele de
calcul
Unitatea aritmetico-logic a unui sistem de calcul efectueaz toate
calculele n binar. Datele numerice de intrare ale celor mai multor programe se
prezint n baza 10. Aceste date pot fi ntregi (cu sau fr semn) sau numere
reale (cu semn sau fr semn). Este, evident, necesar conversia datelor din
format intern n format binar. Reprezentarea n format binar pune cteva
probleme:
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 66

Reprezentarea numerelor negative de o manier care s faciliteze
opera#iile cu acestea $i s fie convenabil din punct de vedere
constructiv;
Rezolvarea problemei extinderii rezonabile a ordinului de mrime al
numerelor reprezentate n calculator;
Rezolvarea problemei reprezentrii cu o precizie ct mai mare a
numerelor reale. Subliniem faptul c, n condi#iile n care, n sistemele
de calcul se pun la dispozi#ie pentru reprezentarea numerelor un numr
finit de pozi#ii binare (de regul un multiplu de 8 bi#i), vor exista numere
reale care se reprezint n calculator prin aproximare cu un numr
ra#ional.
A$adar, reprezentarea numerelor se face pe un numr ntreg de octe#i.
Reprezentarea semnului, atunci cnd este cazul, se realizeaz cu ajutorul
bitului de semn. Prin conven#ie, bitul de semn are valoarea 0 pentru a indica
un numr pozitiv $i valoarea 1 pentru a indica un numr negativ.
4.2.1.Reprezentarea ntregilor f!r! semn
Pentru astfel de reprezentri exist o constant prestabilit n care indic
pe ci bii se realizeaz! reprezentarea. De regul, n este un multiplu de 8.

8 bi&i formeaz un octet sau byte

Aceast conven#ie se rezum la scrierea n baza doi a numrului ntreg
pe cei n bi#i afecta#i reprezentrii. Pe n bi#i se pot reprezenta numere din
intervalul [0,2
n
-1]. Concret, aceste intervale pentru diferite valori ale lui n sunt:
n = 8[0, 255]
n =16[0, 65535]
n situa#ia n care un numr binar necesit mai pu#in de n bi#i, restul
bi#ilor (cei mai semnificativi) vor fi completa#i cu zerouri.
Astfel pentru n=8, avem reprezentrile:
23
(10)
=00010111
(2)

243
(10)
=11110011
(2)
.
4.2.2.Reprezentarea numerelor ntregi cu semn
Principala cauz care a impus standarde speciale de reprezentare a
numerelor ntregi a fost existen#a numerelor negative. Aceste standarde asigur
simplificarea opera#iilor aritmetice. Astfel, prin codurile de reprezentare pe
care le vom prezenta, se elimin opera#ia de scdere, ea fiind transformat n
adunare de ctre unitatea aritmetico-logic! a sistemului.
Ca o regul general, bitul cel mai semnificativ din reprezentare n-1 este
rezervat semnului. Vom nota cu s acest bit. Dac s = 0 atunci este vorba de un
numr pozitiv, iar dac s = 1 este vorba de un numr negativ

S ..
2
n-1
2
n-2
2
n-3
2
2
2
1
2
0

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 67

Evident, ntr-o astfel de conven#ie se lucreaz cu numere ntregi avnd
valoarea absolut de maximum 2
n-1
-1, adic un numr de forma:

0 1 1 ... 1 1 1
2
n-1
2
n-2
2
n-3
2
2
2
1
2
0

4.2.2.1. Codul direct

Numerele ntregi se reprezint prin mrime (valoare absolut) $i semn.
Pentru numerele negative, bitul cel mai semnificativ bitul de semn este 1,
iar ceilal#i n-1 bi#i servesc pentru reprezentarea valorii absolute a numrului.

Exemple.Dac x=25 atunci reprezentarea lui n cod direct pe 8 pozi#ii
binare este:

0 0 0 1 1 0 0 1
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

Dac x= -25 atunci reprezentarea lui n cod direct este

1 0 0 1 1 0 0 1
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

4.2.2.2. Codul invers(complement fa! de 1)
Pentru numerele negative, bitul de semn este 1, ceilal#i n-1 bi#i servind
pentru reprezentarea valorii absolute negate a numrului. Negarea se realizeaz
la nivel de bit: bi#ii 0 devin 1 $i bi#ii 1 devin 0.

Exemple.

Dac x=25 atunci reprezentarea lui n cod invers pe 8 pozi#ii binare este:

0 0 0 1 1 0 0 1
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

Dac x=-25 atunci reprezentarea lui n cod invers pe 8 pozi#ii binare
este:

1 1 1 0 0 1 1 0
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 68

4.2.2.3. Codul complementar(complement fa! de 2)
Pentru reprezentarea numerelor negative se aplic urmtoarea regul de
complementare: se reprezint numrul n valoare absolut, apoi se inverseaz
bit cu bit, inclusiv bitul de semn (care devine 1), $i se adun 1 la rezultatul
ob#inut.deci complementul fa# de 2 se ob#ine din complementul fa# de 1, la
care se adaug 1.
Exemple.

Dac x=25 atunci reprezentarea lui n cod complementar pe 8 pozi#ii
binare este:

0 0 0 1 1 0 0 1
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

Dac x= -25 atunci reprezentarea lui n cod complementar pe 8 pozi#ii
binare este


1 1 1 0 0 1 1 1
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0

Codul complementar este codul cel mai utilizat n reprezentarea
numerelor algebrice n calculator.
Reamintim faptul c toate aceste coduri sunt nso#ite de algoritmi care
transform, ntr-o form sau alta scderea n adunare.
De asemenea, facem observa#ia c, n conven#ie ntreag, virgula are o
pozi#ie fix, considerndu-se c este amplasat, imaginar, dup pozi#ia cea mai
pu#in semnificativ.
n mod evident, opera#iile cu numere ntregi, n oricare dintre
conven#iile prezentate, pot genera o serie de evenimente de excep#ie numite
dep$iri.


4.2.3.Reprezentarea n virgul! flotant!

Acest tip de reprezentare $i propune s dea o rezolvare par#ial unor
probleme legate de ordinul de mrime $i precizia numerelor reprezentate n
calculator. Ideea de baz a reprezentrii n virgul mobil, porne$te de la
observa#ia c orice numr real x0 poate fi scris astfel:

x=+<Mantis>
normalizat
16
<Exponent>

Acest mod de scriere, a generat de-a lungul timpului mai multe variante
de reprezentare n virgul mobil. Aceste variante pot fi clasificate astfel:

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 69

Variante n care s-a pus problema reprezentrii att a exponentului ct $i
a mantisei mpreun cu semnul corespunztor. Deci registrul n care se
fcea reprezentarea era partajat astfel:

Semn mantis! Mantis! Semn exponent Exponent

Neconvenabil pentru constructorii de procesoare, aceast conven#ie a
fost abandonat.

Variante n care s-a pus problema introducerii unui artificiu care s
elimine reprezentarea semnului exponentului. Registrul n care se face
reprezentarea n aceste variante are structura:

Semn mantis! Mantis! Caracteristic!

Elementul de noutate l reprezint no#iunea de caracteristic introdus
astfel:
Dac e este un exponent astfel nct e [-a,a] atunci numim
caracteristic numrul c ob#inut prin abatere a lui e fa# de a, adic:
c=e+a.
Deducem c, n aceste circumstan#e, c[0,2a]. Deci a fost suprimat
problema reprezentrii semnului pentru exponent.
Exigen#ele fa# de reprezentarea n virgul mobil rmn acelea$i:
s fie u$or de implementat constructiv;
s fie nso#it de algoritmi performan#i pentru simularea opera#iilor
fundamentale.
Exist mai multe standarde de reprezentare n virgul mobil. Astfel,
putem enumera:
reprezentarea IEEE n simpl! precizie;
reprezentarea IEEE n dubl! precizie;
reprezentarea IEEE n dubl! precizie extins!;
reprezentarea IEEE n quadrupl! precizie;

4.2.3.1. Reprezentarea n virgul! mobil! simpl! precizie
Are la dispozi#ie 4 octe#i, structura#i astfel:

S C=E+127 M
31 30 23 22 0

A$adar:
un bit pentru semnul mantisei;
8 bi#i pentru reprezentarea caracteristicii;
23 bi#i pentru reprezentarea mantisei.

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 70

4.2.3.2. Reprezentarea n virgul! mobil! dubl! precizie
Are la dispozi#ie 8 octe#i, structura#i astfel:

S C=E+1023 M
63 62 52 51 0

A$adar:
un bit pentru semnul mantisei;
11 bi#i pentru reprezentarea caracteristicii;
52 bi#i pentru reprezentarea mantisei.
4.2.3.3. Reprezentarea n virgul! mobil! dubl! precizie extins!
Are la dispozi#ie 12 octe#i, structura#i astfel:

S C=E+16383 M
95 94 80 79 0

A$adar:
un bit pentru semnul mantisei;
15 bi#i pentru reprezentarea caracteristicii;
80 bi#i pentru reprezentarea mantisei.
4.2.3.4. Reprezentarea n virgul! mobil! quadrupl! precizie
Are la dispozi#ie 16 octe#i, structura#i astfel:

S C=E+16383 M
127 126 112 111 0

A$adar:
un bit pentru semnul mantisei;
15 bi#i pentru reprezentarea caracteristicii;
112 bi#i pentru reprezentarea mantisei.

Din analiza standardelor de mai sus, propuse de IEEE (Institute of Electrical
and Electronic Engineers), reies avantajele oferite de virgula mobil pentru
mrirea preciziei $i ordinului de m!rime aferente datelor numerice cu care
lucreaz sistemele de calcul.
4.3. Codificarea datelor alfanumerice n sistemele
de calcul
Datele de intrare ale programelor executate pe sisteme de calcul reale
pot fi, dup cum am mai spus, numerice sau alfanumerice. Deoarece ntreaga
logic de func#ionare a sistemului de calcul se bazeaz pe alfabetul binar, este
evident faptul c datele alfanumerice, din format extern ajung n format intern
n urma unui proces de codificare.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 71

n general, o problem de codificare are urmtorul enun#:
Dat o mul#ime S de simboluri, cu ajutorul crora se pot formula mesaje
inteligibile pentru o instan# <Emitor>, pentru a asigura transcrierea acestor
mesaje pe n#elesul unei instan#e <Receptor> ale crei mesaje sunt formulate
cu ajutorul unei mul#imi de simboluri C. Pentru transcrierea mesajelor
formulate de <Emitor> pe n#elesul instan#ei <Receptor> este necesar o
func#ie care s codifice simbolurile din S cu ajutorul simbolurilor din C.
O astfel de func#ie este n general de forma:
f :SC*(n);
unde C*(n) este o nota#ie pentru mul#imea $irurilor de simboluri din C
de lungime n. Evident, f trebuie s fie injectiv, ceea ce presupune ndeplinirea
condi#iei:
card(S) (card(C) )
n

Exemplu.
S presupunem c S={0,1,2,3,4,5,6,7,8,9}, iar C={0,1}. Se cere s se
gseasc o codificare a elementelor din S cu ajutorul simbolurilor din C.
Pentru n=1 am putea codifica doar dou elemente din S.
Pentru n=2 putem codifica patru elemente din S.
A$adar, ne-ar putea interesa cel mai mic n pentru care card(S)2
n.
Evident n=4. Pentru n=4 am putea avea urmtoarea defini#ie tabelar a
lui f :

Simbol Cod
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001

Deoarece comunica#ia dintre utilizatori $i sistemele de calcul are la baz
o mul#ime de simboluri mult mai larg, lungimea n a codurilor este, n general,
mai mare dect patru.
n comunica#ia utilizator-calculator compatibil IBM-PC, de exemplu,
folosim: cifrele sistemului zecimal de numera#ie, literele alfabetului latin,
semnele de punctua#ie, alte simboluri indispensabile pentru comunica#ia cu un
sistem de calcul prin intermediul tastaturii, etc..
De-a lungul timpului au fost utilizate mai multe sisteme de codificare,
care au rspuns problemelor specifice momentului n care au fost definite.
Exemple de coduri: EBCDIC (Extended Binary Coded Decimal
Interchange Code), ASCII (American Standard Code for Information
Interchange), care sunt coduri pe 8 bi#i, deci fiecare poate codifica 256
caractere.
PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 72

Multe dintre sistemele de calcul actuale folosesc diferite versiuni ale
codului ASCII, care n versiune Pascal opereaz cu 256 de coduri, cu destina#ii
diverse. Mediul Java, ca un alt exemplu, opereaz cu un cod mult mai larg,
numit UNICODE, pe 16 bi#i, (prin urmare, acest sistem de codificare poate
reprezenta 65536 caractere; primele 32768 caractere sunt deja stabilite!), care
$i propune s asigure o platform de comunica#ie mult mai larg dect codul
ASCII, de exemplu.
4.4. Bazele logice ale sistemelor de calcul
Calculatoarele electronice folosesc elemente fizice care comport dou
stri distincte, stri care pot fi puse, n cele din urm, n coresponden# direct
cu propozi#ii logice, crora li se asociaz una din valorile de adev!r sau fals.
Necesitatea cunoa$terii bazelor logice ale sistemelor de calcul vine din dou
direc#ii:
1. Din punct de vedere constructiv, suportul logicii este esen#ial pentru
sinteza dispozitivelor func#ionale ale sistemului de calcul; speciali$tii n
proiectarea dispozitivelor func#ionale ale sistemelor de calcul utilizeaz
diverse tipuri de algebre, pentru a simpilfica constructiv $i complexifica
func#ional circuitele logice;
2. La nivelul aplica#iilor, expresiile logice $i operatorii logici sunt esen#iali
pentru specificarea structurilor de prelucrare.

4.4.1. Elemente de algebr! boolean!

nc din secolul al XIX-lea, matematicianul englez George Boole, s-a
gndit s organizeze mul#imea propozi#iilor logice, conforme logicii
aristotelice, ntr-un sistem formal numit (ca o recunoa$tere a meritelor lui)
algebr Boole sau algebra logicii.
Peste mul#imea propozi#iilor relative la un anumit univers, crora li se
poate asocia una din valorile 1 (adevr) sau 0 (fals), definim urmtoarele
opera#ii logice:
Negaia(Operatorul NOT). Se aplic unei singure propozi#ii. Negarea
unei propozi#ii p se noteaz non(p) $i se define$te astfel: dac p este adevrat,
atunci non(p) este fals ; dac p este fals atunci non(p) este adevrat. Tabelar
avem:

p Non(p)
0 1
1 0

Disjuncia inclusiv! sau suma logic! (Operatorul OR). Se aplic la
dou propozi#ii p $i q $i se noteaz pvq (sau p+q sau pq). Se define$te astfel:
pvq este adevrat dac $i numai dac cel pu#in una din propozi#iile p,q este
adevrat. Tabelar avem:

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 73

p q p V q
0 0 0
0 1 1
1 0 1
1 1 1

Conjuncia sau produsul logic(Operatorul AND). Se aplic la dou
propozi#ii p $i q $i se noteaz pq (sau pq sau pq ). Se define$te astfel: pq
este adevrat dac $i numai dac p $i q sunt simultan adevrate. Tabelar
avem:

p q p q
0 0 0
0 1 0
1 0 0
1 1 1

Disjuncia exclusiv! (Operatorul XOR). Se aplic la dou propozi#ii p
$i q $i se noteaz p q ( sau p q ). Se define$te astfel: p q este adevrat
dac $i numai dac p $i q sunt diferite. Tabelar avem :

p q p q
0 0 0
0 1 1
1 0 1
1 1 0

Cunoa$terea acestor operatori logici st la baza specificrii corecte a
tuturor tipurilor de enun#uri care se bazeaz pe logica aristotelian (bivalent):
ra#ionamente, specificare de algoritmi de rezolvare a unor probleme, scrierea de
programe, etc..

PDF created with pdfFactory trial version www.pdffactory.com
-Bazele Informaticii Economice 74


BIBLIOGRAFIE

1. BOCU, Dorin;
DANCIU, Daniel;
BOCU, Dorina;
COL'A, Roxana
Informatic! general!,
Editura Funda#iei Romnia de Mine, Bucure$ti,
1999

2. NI'CHI, Gh.;
RACOVI'EANU, D.
Bazele prelucr!rii informaiilor $i tehnologie
informaional!,
Editura Intelcredo, Deva, 1996

3. KNUTH, D.E. Tratat de programarea calculatoarelor,
Editura Tehnic, Bucure$ti,
vol. I, 1974, vol.III, 1976, vol.II, 1981

4. CORMEN, T.H.,
LEISERSON, C.E.,
RIVEST, R.L.
Introducere n algoritmi,
Editura Computer Libris Agora,
Cluj-Napoca, 2000

5. LIVOVSCHI, L.,
GEORGESCU, H.
Bazele informaticii. Algoritmi fundamentali,
Editura Tehnic, Bucure$ti, 1994

6. VASIU, C.,
VASIU, I
INTERNET ghid de navigaie,
Editura Albastr, Cluj-Napoca, 1997

7. BUL*CEANU, C RE+ELE LOCALE DE CALCULATOARE
Arhitecturi prezente $i viitoare
Editura Tehnic, Bucure$ti, 1995


PDF created with pdfFactory trial version www.pdffactory.com

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