Sunteți pe pagina 1din 74

1

-Bazele Informaticii Economice

Cuprins
Cuprins 2

CAPITOLUL 1-------------------------------------------------------------3
1.1.

Algoritmi: definiii, proprieti------------------------------------------------------------- 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.
Informaie. Dat. Decizie------------------------------------------------------------ 23
2.1.2.
Procesul de prelucrare a datelor.---------------------------------------------------- 23
2.1.3.
Circuit informaional, flux informaional------------------------------------------ 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.
Definiii, generaliti: reprezentarea grafurilor ----------------------------------- 37
2.5.2.
Grafuri orientate ---------------------------------------------------------------------- 38
2.5.3.
Grafuri neorientate ------------------------------------------------------------------- 40
2.6.
Fiiere------------------------------------------------------------------------------------------ 40
2.6.1.
Concepte fudamentale: suport, organizare, acces -------------------------------- 40
2.6.2.
Operaii cu fiiere -------------------------------------------------------------------- 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

3.4.
Reele de calculatoare.---------------------------------------------------------------------- 53
3.4.1.
Clasificarea i tipurile de comunicaie--------------------------------------------- 54
3.4.2.
Elemente de sisteme deschise------------------------------------------------------- 55
3.4.3.
Structura unei reele locale ---------------------------------------------------------- 57
3.4.4.
Topologii de reea -------------------------------------------------------------------- 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 numeraie----------------------------------------------------- 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

Capitolul 1
Algoritmi
1.1. Algoritmi: definiii, proprieti
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 oraul Khwarizm. n
prezent acest ora se numete Khiva, i se afl n Uzbekistan.
Dicionarul Webster definete cuvntul algoritm ca fiind orice fel de
metod pentru a rezolva o anumit categorie de probleme. Acest cuvnt a
primit o conotaie aparte n informatic, unde este utilizat pentru a desemna
orice fel de metod precis, care poate fi utilizat de calculator, pentru a
soluiona un anumit gen de probleme.
Definiie: Un algoritm este o list de instruciuni care descriu precis un
proces ce se desfoar 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 pai.
n general, un algoritm are cinci proprieti fundamentale sau de baz i
anume:
1) Finitudine. Un algoritm se termin totdeauna dup un numr finit de
pai. O structur care are forma unui algoritm dar care poate s nu se
termine se numete metod de calcul.
2) Determinism. ntr-un algoritm fiecare pas se succede unul altuia i este
bine determinat nelsnd loc de ambiguiti.
3) Intrare. Intrarea unui algoritm este o colecie de informaii necesare
pailor si pentru ca acetia s s poat fi executai.
4) Ieire. Un algoritm furnizeaz totdeauna un rezultat obinut din execuia
pailor si, rezultat ce este ntr-o anumit relaie cu intrrile.
5) Eficacitate. Un algoritm trebuie s se termine ntr-un timp acceptabil
astfel nct rezultatul su s fie utilizabil. Nu sunt interesani algoritmii
poteniali, ce dau rezultatul ntr-un timp foarte mare.

-Bazele Informaticii Economice

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 SECVENIALE
1. Secvena;
II.
STRUCTURI DE SELECIE
1. Selecia simpl;
2. Selecia propriu-zis (structur alternativ);
3. Selecia multipl;
III.
STRUCTURI REPETITIVE (ITERATIVE)
1. Structura repetitiv precondiionat (numit i structur repetitiv cu
test iniial);
2. Structura repetitiv postcondiionat (numit i structur repetitiv
cu test final);
3. Structura repetitiv cu numr de pai 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 ieire ( nu toi 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 conin numai trei structuri fundamentale:
secvena;
selecia propriu-zis;
iteraia precondiionat.
Pe de alt parte, exist algoritmi care nu sunt proprii (de exemplu:
algoritmii recursivi) i care nu mai pot fi reprezentai 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 nsui, permind astfel descrierea proceselor
recursive de calcul. Prin definirea (crearea) unui subalgoritm, se ating mai
multe obiective:
parametrizarea datelor: datele de intrare i datele de ieire sunt
prezentate ntr-un subalgoritm prin intermediul parametrilor (numii
parametri formali);
abstractizarea prelucrrilor: toate operaiile sunt aplicate asupra
parametrilor, deci nu este necesar cunoaterea n detaliu a acestor
operaii, ci numai efectul final al acestora;

-Bazele Informaticii Economice

crearea posibilitii descrierii proceselor (funciilor) recursive, prin


apelarea subalgoritmului nsui 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) uor de neles i de utilizat i, n acelai 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 nite cuvinte, numite cuvinte rezervate (sau cuvinte cheie), care se folosesc
ntr-un mod bine determinat, nu neaprat legat de nelesul 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 stop sau sfrit nume se pune punct.
1. Secvena
Are urmtoarea sintax (form corect):

------------------Bloc 1;
Citete x;
Scrie y;
Bloc 2;
------------------

Efectul const n execuia, n ordinea niruirii, a operaiilor i blocurilor


care apar n secven.
2. Selecia simpl
Are urmtoarea sintax:
dac expr-cond atunci bloc;
n aceast structur expr-cond este o expresie condiional, adic o
expresie a crei valoare final este o valoare logic (adevrat sau fals) iar bloc

-Bazele Informaticii Economice

este un bloc care poate avea orice structur, inclusiv apelul unui subalgoritm.
Care este efectul acestei structuri?
nti se evalueaz expresia condiional; dac se obine valuarea
adevrat, se execut bloc i apoi se trece la structura urmtoare; dac se obine
valoarea fals, nu se execut bloc i se trece direct la structura urmtoare.
3. Selecia 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. Selecia 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 mulimi 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 gsete n nici o list, atunci se
execut bloc-0 i apoi se trece la structura urmtoare.
5. Structura repetitiv precondiionat
Are sintaxa:
ct timp expr-cond execut bloc;
n aceast structur, expr-cond i bloc au semnificaiile artate mai sus.
Pentru a executa o astfel de structur, se procedeaz astfel:
se evalueaz expr-cond;
dac se obine valoarea adevrat, se execut bloc i apoi se evalueaz,
din nou, expr-cond;

-Bazele Informaticii Economice

dac se obine 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 execuia blocului bloc n funcie de modul n
care este ndeplinit condiia cuprins n expr-cond.
6. Structura repetitiv postcondiionat:
Are sintaxa:
repet
bloc
pn cnd expr-cond
Efectul:
se execut bloc;
se evalueaz expr-cond;
dac se obine adevrat, se trece la structura urmtoare;
dac se obine fals, se execut din nou bloc, se evalueaz expr-cond etc.
7. Structura repetitiv cu numr de pai cunoscut:
Are sintaxa:

pentru v vi la vf pas p execut bloc;


n aceast structur:
v este o variabil;
vi i vf sunt expresii calculabile ale cror valori posibile pot fi atribuite
variabilei v;
p este pasul de trecere de la vi (valoare iniial) la vf (valoarea final);
dac p > 0, atunci trebuie ca vi v f iar dac p < 0, atunci trebuie ca

vi v f ; dac p=1, atunci nu mai apare pas p i valoarea acestuia se


subnelege;
Iat cum se execut aceast structur:
P1: se atribuie lui v valoarea vi;
P2: dac p > 0 i v v f , atunci:
-se execut bloc;
-se atribuie v v + p
-se trece la P2;
P3: dac p > 0 i v > v f , atunci nu se mai execut bloc i se trece la
structura urmtoare;
P4: dac p < 0 i v v f , atunci:
-se execut bloc;
-se atribuie v v + p ;

-Bazele Informaticii Economice

-se trece la P4;


P5: dac p < 0 i v < v f , atunci nu se mai execut bloc i se trece la
structura urmtoare.
Cu alte cuvinte, numrul de execuii ale bloc-ului este calculabil nainte

v f vi
+ 1.
p

de intrarea n structura repetitiv i este egal cu

1.3 Reprezentarea algoritmilor


Exist o mare varietate de modaliti de exprimare a algoritmilor. Putem
alege, de exemplu, pentru reprezentarea algoritmilor un limbaj natural, cum ar
fi limba romn, dar n aceast situaie trebuie s fim ateni ca operaiile pe
care le formulm s respecte proprietile prezentate n paragraful anterior.
Pentru a uura scrierea unor algoritmi ale cror operaii 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). Dei schemele logice nu sunt utilizate de
ctre programatorii mai avansai, deoarece de la un moment dat devin greoaie,
pentru programatorul nceptor ele constituie totui un instrument excelent
pentru asimilarea primelor noiuni despre algoritmi. Din acest motiv, la nceput
vom utiliza ambele metode de reprezentare, urmnd ca treptat s renunm 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 operaiile prevazute n algoritm. Schemele logice sunt uor de
urmrit, deoarece direcia de mers a algoritmului poate fi vizualizat ca un
traseu grafic.
Schemele logice sunt formate din instruciuni. Instruciunile descriu
aciunile algoritmului reprezentat prin schema logic. Fiecare instruciune 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 execuiei. 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 semnificaia ei n cadrul problemei.

-Bazele Informaticii Economice

Prezentm acum elementele care compun o schema logic.

START

Fig. 1.1

STOP

CITETE
x1,x2,,xn

SCRIE
a1,a2,,an

Fig. 1.2

Fig. 1.3

Fig. 1.4

Fig. 1.1 1.4 Instruciunile START, STOP, CITETE,


SCRIE

1. Fiecare algoritm are un nceput i un sfrit. nceputul i sfritul


algoritmului sunt desemnate prin instruciuni 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 ieire. Preluarea datelor de
intrare se realizeaz utiliznd instruciunea CITETE (Fig. 1.3). Ea are efect
ncrcarea datelor de intrare n variabilele x1, x2,...,xn.
3. Afiarea datelor de ieire se realizeaz cu instruciunea SCRIE (Fig.
1.4), unde a1,a2,...,an sunt nume de variabile sau mesaje. Un mesaj este un
text cuprins ntre apostrofuri (de exemplu, `Acesta este un mesaj`). Scrierea
unei variabile nseamn scrierea coninutului ei, scrierea unui mesaj const n
scrierea textului cuprins ntre apostrofuri.
4. Instruciunea 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 coninutul variabilei v este nlocuit cu valoarea
expresiei; vechea valoare a lui v (dac a avut vreuna) se pierde.

v e
Fig. 1.5 Atribuirea

5. Instruciunea 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.

NU

DA

Fig.1.6 Instruciunea de decizie

10

-Bazele Informaticii Economice

Vom vedea modul n care se asambleaz parile 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

START
CITETE
x
NU

x>0

y -x

DA
yx

n figura 1.8 este prezentat schema


logic pentru rezolvarea ecuaiei de gradul
1.

SCRIE
y

1. citete valorile lui a i b


2. dac
a
este
nenul,
scrie
STOP
valoarea b/a i treci la
pasul 4, altfel treci la pasul
Fig. 1.7 Calculul modulului unui
3
3. dac b este nenul, atunci scrie
numr real x
Ecuaia nu are soluii
4. altfel scrie Soluia este spaiul real

START
CITETE
a,b
NU
NU
SCRIE
x oarecare

b<>0

a<>0
DA
SCRIE
Nu are sol

DA
x -b/a
SCRIE
x

STOP

Fig. 1.8 Rezolvarea ecuaiei de gradul I

11

-Bazele Informaticii Economice

Simbolul < > utilizat n schema logic din figura 1.8 are semnificaia
diferit de.
Regulile fundamentale care descriu modul de nlnire al schemelor
logice sunt:
schema logic ncepe cu instruciunea START;
extremitatea final a unei instruciuni (excepie instruciunea STOP
care nu are extremitate final);
extremitatea iniial a unei instruciuni este legat de extremitatea
final unei singure instruciuni (excepie instruciunea START care
nu are extremitate iniial);
schema logic se ncheie cu instruciunea 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; diferenele ntre diferitele
versiuni sunt, totui, minore.
Vom ntelege prin program n limbajul algoritmic o succesiune de
instruciuni ale limbajului. Instruciunile se executa succesiv, n ordinea n care
au fost scrise.
Iat care sunt instruciunile limbajului pseudocod, corespunzatoare
instruciunilor din schemele logice:
1. nceputul i sfritul algoritmului sunt desemnate prin instruciunile
start, respectiv stop.
2. Instruciunea de citire are forma:
citete x1,x2,..., xn, unde x1,...,xn sunt variabile.
3. Instruciunea de scriere are forma:
scrie a1, a2,..., an
,unde a1,...,an sunt variabile sau mesaje, aa cum am precizat i la

schemele logice.
4. Instruciunea de atribuire are forma ve, unde v este o variabil, iar e
este o expresie.
5. Instruciunea de ramificare (caz particular al instruciunii de decizie!)
care are forma:
dac p atunci
instruciuni1
altfel
instruciuni2
sfrit dac

NU
Instruciuni1

DA
Instruciuni2

Fig. 1.9.A Instruciunea de ramificare

12

-Bazele Informaticii Economice

Se evalueaz condiia p. Dac p este adevarat, atunci se executa


instruciuni1, altfel se execut instruciuni2. Ramura altfel a instruciunii
de decizie poate s lipseasc:
NU

dac p atunci
instruciuni1
sfrit dac

DA
Instrucuni

Fig. 1.9.B Instruciunea de ramificare


varianta fr ramura altfel

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 ecuaiei de


gradul I (Exemplul 2):
start
citeste a,b
dac a<>0 atunci
scrie Soluia este, -b/a
altfel
dac b=0 atunci
scrie Soluia este spaiul real
altfel
scrie Ecuaia nu are soluii
sfrit dac
sfrit dac
stop

Este indicat ca operaiile aflate sub incidena instruciunii de ramificare


s fie grupate mai la dreapta (ca n exemplul de mai sus), pentru a evidenia
faptul c respectivele instruciuni aparin uneia dintre ramificaii. Aceast
operaie se numete indentare i ea este utilizat i n cazul codului scris ntrun limbaj de programare pentru a mri lizibilitatea programelor.

13

-Bazele Informaticii Economice

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


Am putea fi tentai, la prima vedere, s
scriem pentru interschimbarea a doua valori o
secven de genul:
x y
y x

START

CITETE
x,y

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:

aux x

start
citete x,y
aux x
// se salveaz
coninutul
// lui x n aux
x y
y aux //se trece n y
//coninutul lui x
scrie x,y
stop

STOP

xy
y aux

SCRIE
y

Fig. 1.10 Interschimbarea valorilor


a dou variabile

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


pozitiv x .

14

-Bazele Informaticii Economice

Ideea algoritmului este de a porni cu


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

START

CITETE
x
n0

Dac am ncerca s implementm


acest algoritm i n peudocod doar cu
x>=n+1
D
instruciunile invate pn acum, vom
constata c este imposibil. Motivul?
N
Instruciunea de decizie din cadrul
SCRIE
y
schemelor logice este mult mai flexibil
dect cea din cadrul limbajului algoritmic,
deoarece ea permite i realizarea de structuri
STOP
repetitive (pentru n + 1 x se repet
Fig. 1.11 Calculul prii ntregi a
instruciunea de incrementare a valorii lui
unui numr real x
n ). Acest lucru nu este posibil n limbajul
algoritmic, deoarece el impune o structur
mai fix prin instruciunea de ramificare (fig. 1.8).
Libertatea de nlnuire a instruciunilor 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 instruciunii de decizie doar sub urmatoarele trei
forme:

NU

Instruciuni2

DA
Instruciuni1

Instruciuni
NU

p
DA

Fig. 1. 12. 1

Fig. 1. 12. 2

DA

Instruciuni

NU
Fig. 1. 12. 3

Fig. 1.12 Cele trei variante ale instruciunii de decizie, acceptate n


programarea structurat

Am vzut deja c structura din figura 1.12.1 corespunde instruciunii


dac (de ramificare) din limbajul algoritmic. Structurile din figurile alturate
(1.12.2, 1.12.3) se numesc instruciuni repetitive.

-Bazele Informaticii Economice

15

Structura din figura 1.12.2 realizeaz repetarea grupului de instruciuni


pn cnd condiia p devine adevarat, cu verificarea condiiei dup grupul de
instruciuni. Corespondentului ei n limbajul algoritmic este instruciunea
repet .... pn cnd.
repet
instruciuni
pn cnd p

Structura din figura 1.12.3 realizeaz repetarea grupului de instruciuni


ct timp condiia p este adevarat, cu verificarea condiiei nainte de
instruciuni. Corespondentul ei n limbajul algoritmic este instruciunea ct
timp:
ct timp p
instruciuni
sfrit ct timp

Exist o diferen important ntre cele dou instruciuni repetitive.


Condiia p din ciclul repet ... pn cnd se verific dup execuia
instruciunilor din ciclu, deci instruciunile se vor executa cel puin odat chiar
dac p este fals de la nceput. n cazul ciclului ct timp condiia p se
verific la nceput, deci dac ea este fals, instruciunile care compun ciclul nu
se vor executa niciodat.
Din acest motiv, instruciunea ct timp este de preferat instruciunii
repet, mai ales n situaia n care execuia instruciunilor din acest ciclu cnd condiia p este fals nc de la nceput- ar putea genera efecte nedorite.
i n cazul instruciunilor repetitive se realizeaz indentarea la dreapta a
grupului de instruciuni care se repet. n cazul unei indentari corecte,
instruciunile sfrit dac i sfrit ct timp se subneleg, i pot fi
omise pentru a simplifica structura programului.
Avnd la dispozitie instuciunile repetitive, suntem n msur s
scriem programul pseudocod pentru calculul parii 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, iniializam o variabil S (n care calculm suma) cu 0, apoi
citim rnd pe rnd elementele i le adaugm la suma:

16

-Bazele Informaticii Economice

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 numete variabil contor, deoarece ea reine numarul
de iteraii 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) pornete cu o valoare iniial i crete 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 instruciune special: instruciunea pentru.
Forma instruciunii pentru este:

pentru v = a,b,r

instruciuni
sfrit pentru

va

v<=b

DA

instruciuni
vv+r

NU

Fig.1.13 Instruciunea pentru reprezentat


cu scheme logice

Schema logic de alturi ilustreaz modul de funcionare al acestei


instruciuni: variabila v n valoarea a , dup care este incrementat succesiv cu
valoarea r (care de obicei este 1) pn cnd depete valoarea b , moment n
care se incheie ciclul. Variabila de incrementare, r , poate avea i valori
negative (caz n care v descrete) cu meniunea c, n aceast situaie,
inegalitatea din schema logic corespondent este v b . n cazul n care
valoarea lui r nu se precizeaz aceasta se consider implicit a fi 1 dac a < b
i -1 dac a > b .
Programul pentru calculul sumei a n numere reale rescris cu ajutorul
instruciunii pentru devine:

-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 uor de urmrit.

1.3.3.

Programarea structurat

Am vazut deja n paragraful anterior c schemele logice permit o


libertate foarte mare de nlnuire a instruciunilor, 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 restricii
asupra modului de utilizare a instruciunii de decizie. n programarea
structurat exist trei variante n care fluxul de instruciuni poate s se execute:
secvena n care instruciunile se execut succesiv, o singur dat;
ramificarea care permite execuia unui grup din dou grupuri de
instruciuni, funcie de valoarea unei condiii logice;
iteraia care permite repetarea unui grup de instruciuni pn cnd se
ndeplinete o anumit condiie.
Un exemplu de cod n care se folosete numai secvena este programul
pentru interschimbarea valorilor a dou numere. Ramificarea corespunde
instruciunii dac, iar iteraia este realizat de instruciunile 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!

18

-Bazele Informaticii Economice

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,

Date intrare

SUBRUTIN

Date ieire

realizeaz anumite prelucrri precise asupra lor, i furnizeaz rezultatul


prelucrarilor ca date de ieire.
De exemplu, o subrutin poate primi ca date de intrare dou numere i
s furnizeze ca dat de ieire maximul lor; sau poate primi ca date de intrare un
tablou numeric de dimensiune n i s furnizeze ca dat de ieire acelai tablou,
dar cu elementele ordonate cresctor, sau poate primi dou variabile reale ca
date de intrare i s furnizeze ca date de ieire aceleai variabile cu coninutul
interschimbat etc. Exist dou motive principale care au condus la crearea
subrutinelor:
n primul rnd, exist n cadrul unui program anumite operaii care se
repet: de exemplu, operaii 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 operaia care se repet ori de cte ori ea apare, putem
nchide operaia respectiv ntr-o cutie neagr. De cte ori vom dori s realizm
operaia, 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, aa cum am vazut i n cazul precedent, un program
complex devine mai lizibil dac este mprit 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 mprim 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

-Bazele Informaticii Economice

19

Subrutinele se mpart n dou categorii: proceduri i funcii. Aa cum


vom vedea n cadrul acestui paragraf, funciile 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:
NumeProc
(ParamF1,
ParamF2,
....
procedura
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 funciile) 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 separai prin virgul. Parametrii formali reprezint nite
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 cuprini 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 instruciunile procedurii,
dup care la terminarea operaiilor, 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.
Aa 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 numete 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. Aa 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 execuiei procedurii, programul se reia cu urmtoarea instruciune de


dup apel.
Procedura de mai jos primete 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 iniializat !!) 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 evideniaz mai multe aspecte importante. n
primul rnd, dup modul n care am definit transmisia parametrilor, toi
parametrii sunt att variabile de intrare n cutia neagr care este procedura, ct
i variabile de ieire. 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 acelai tip cu parametri formali care le corespund.
Din acest motiv, unii autori specific i tipul parametrilor formali la definirea
subrutinei, pentru a nu crea ambiguiti. 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 notaie dect n cazul n
care lipsa specificarii tipului ar putea s creeze ambiguiti.
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. Funciile au toate


caracteristicile unei proceduri, dar au n plus posibilitatea de a ntoarce o
valoare programului apelat. Deoarece funciile au o valoare, numele unei
funcii poate fi utilizat ca un operand ntr-o expresie. Funciile sunt foarte utile
n situaii n care exist practic un singur parametru de ieire (cum ar fi
subrutina de calcul a maximului a dou elemente).
n loc s simulm valoarea de ieire prin transmitere de parametri ca n
procedura de calcul a maximului din exemplul anterior, putem s o transmitem
ca valoare returnat de funcie:
funcie Max (x,y)
dac x<y atunci
M y
altfel
M x
return M

Se observ c nceperea unei funcii se desemneaz prin cuvntul cheie


funcie, iar instruciunea de terminare return are acum i un parametru:
acest parametru reprezint valoarea funciei. Programul de mai jos calculeaz
maximul a dou numere utiliznd funcia Max. Se observ c apelul unei
funcii se realizeaz la fel ca apelul unei proceduri. Deoarece funcia returneaz
o valoare, acea valoare trebuie utilizat (atribuit, scris, etc.); cu alte cuvinte,
numele unei funcii trebuie s fie opernd ntr-o expresie:
start
a2 b3
M = Max(a,b)
scrie M
stop.

Valoarea funciei Max se atribuie variabilei M, dup care se scrie


valoarea lui M. Putem scurtcircuita aceste operaii scriind direct valoarea
funciei:

-Bazele Informaticii Economice

22

scrie Max(a,b)

Instruciunea return utilizat n mod inteligent poate adeseori


simplifica procedurile i funciile. Varianta funciei Max de mai jos, n care
instruciunea return este utilizat de dou ori pentru a evita folosirea unei
variabile auxiliare, este gritoare n acest sens:
funcie Max (x,y)
dac x<y
return y
return x

23

-Bazele Informaticii Economice

Capitolul 2
Structuri generale ale informaiei
2.1. Noiuni de baz privind prelucrarea automat
a datelor
Informaia se transmite eficient n organizaii, cu o excepie: vetile 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
contieni de faptul c organizaia se prbuete.

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, informaia 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 organizaie(indiferent
de mrime), acestea trebuie cunoscute. Cunoaterea unui sistem (care are intrri
i ieiri) trebuie realizat n dou direcii: structural i din punct de vedere
dinamic (al evoluiei n timp).
Elementele de cunoatere structural se refer la aspecte, relaii, legiti
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, informaia este una din cele trei forme de
manifestare a materiei, alturi de substan i energie. Deci este o noiune
primar.
Potrivit teoriei comunicaiei (o teorie cu scopuri operaionale precise)
INFORMAIA poate fi neleas ca un mesaj sau semnal ce reflect starea unui
sistem sau a mediului n care acesta funcioneaz i care aduce receptorului ei
un spor de cunoatere.

2.1.2.

Procesul de prelucrare a datelor.

Informaiile se obin, n general, printr-un proces de prelucrare a datelor.


Informaiile nu trebuie confundate neaprat cu datele.
Teoretic vorbind, o dat poate fi caracterizat prin tripletul:
<identificator, atribute, valoare>.
Astfel c, n informatic, noiunea de dat este indisolubil legat de
noiunea de valoare, dar presupune, n plus i elemente referitoare la
reprezentare (identificatorul) i manipulare (atributele).

24

-Bazele Informaticii Economice

Data este un model de reprezentare a informaiei.


Informaia i data pot fi utilizate ca sinonime numai n msura n care
convenim s identificm sistematic obiectul prin modelul su.
Informaia trebuie legat ntotdeauna de noiunea de noutate, de aportul
ei la micorarea nedeterminrii sistemului reflectat.
Perfecionarea activitii de conducere a organizaiilor, 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 organizaie se reprezint ca n Figura 2.1.
SUBSISTEM DE CONDUCERE
PROCES DE
CONDUCERE

INTRRI

Informaii

IEIRI

Decizii

SUBSISTEM INFORMAIONAL
PROCES
INFORMAIONAL

IEIRI

Decizii

INTRRI

Date

SUBSISTEM OPERAIONAL
INTRRI

PROCES
OPERAIONAL
(DE EXECUIE, DE BAZ)

IEIRI

Fig. 2.1 Organizaia ca sistem cibernetic


Figura 2.1 ne arat c SUBSITEMUL INFORMAIONAL realizeaz
legtura n ambele sensuri ntre subsistemul de conducere i cel operaional
astfel:
Ca urmare a derulrii procesului operaional rezult date care sunt culese de
ctre subsistemul informaional;
Datele rezultate din procesul operaional sunt transmise i prelucrate de
ctre subsistemul informaional obinndu-se informaii;
Informaiile obinute n procesul de prelucrare a datelor sunt transmise de
ctre subsistemul informaional subsistemului de conducere;
Subsistemul de conducere analizeaz informaiile i, pe aceast baz,
adopt decizii cu privire la starea viitoare a ntregului sistem;

-Bazele Informaticii Economice

25

Deciziile adoptate de subsistemul de conducere sunt transmise, prin


intermediul subsistemului informaional, subsistemului operaional, care
trebuie s le pun n aplicare;
Ca urmare a aplicrii deciziilor, n subsistemul operaional rezult din nou
date i ciclul se repet.
Perfecionarea activitii de conducere impune asigurarea unei informri
rapide i cuprinztoare, pe fiecare treapt ierarhic.
Aceasta oblig conducerea organizaiei (unitii economice) s-i
perfecioneze subsistemul informaional astfel nct s realizeze urmtoarele
sarcini:
Asigurarea tuturor informaiilor despre situaia trecut, prezent i viitoare a
activitii;
Obinerea unor informaii sintetice privind rezultatele de ansamblu ale
organizaiei (unitii economice);
Utilizarea unor indicatori cu putere mare de caracterizare;
Realizarea unui acces direct i imediat la un volum de informaii din mai
multe domenii de activitate;
Asigurarea unui grad nalt de selectivitate a informaiilor;
Existena unui sistem de urmrire i control rapid i eficient.
Optimizarea ndeplinirii acestor sarcini este, la ora actual o problem a
crei soluie depinde de proiectarea i utilizarea unui sistem informatic.
Se numete SISTEM INFORMATIC acea parte a subsistemului
informaional n care operaiile de culegere, transmitere, prelucrare i stocare a
datelor se realizeaz cu ajutorul calculatorului electronic.
Sistemul informatic reprezint, de fapt, partea automatizat a
subsistemului informaional.
Se poate anticipa deja faptul c proiectarea unui sistem informatic este o
problem complex a crei rezolvare este esenial dependent de cunoaterea
structurii i dinamicii subsistemului informaional.
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


informaiilor, dintre care amintim:
1. Dup forma de exprimare a fenomenelor pe care le reflect,
informaia poate fi: analogic, numeric, nenumeric.
Informaia analogic caracterizeaz parametrii cu variaie continu ai
unor procese tehnologice precum: presiunea, temperatura, viteza, tensiunea
electric, etc.
Informaia numeric sau cantitativ exprim aspectul cantitativ al
fenomenelor i se prezint sub form de cifre, determinate prin msurare,
numrare, cntrire sau calcul.
Informaia 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


informaia 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 desfurrii procesului sau
fenomenului reprezentat, informaiile sunt: active, pasive i previzionale.
Informaiile active reprezint procese sau fenomene n curs de
desfurare. Se mai numesc i informaii operative.
Informaiile pasive reflect procese i fenomene care au avut loc.
Acestea sunt utile pentru conducerea activitii viitoare n condiii de repetare a
unor procese i fenomene.
Informaiile previzionale sunt cuprinse n planuri i programe,
caracteriznd procese i fenomene ce se vor desfura n viitor.
4. Dup coninut, informaiile sunt: elementare, complexe i sintetice.
Informaiile elementare definesc operaii i fenomene indivizibile
(a cror caracterizare nu mai necesit descompunere).
Informaiile complexe rezult prin agregarea informaiilor elementare
cu scopul de a caracteriza un fenomen sau proces.
Informaiile sintetice reflect aspecte legate de obinerea unor
indicatori sintetici (pre, cost, productivitate, etc.) i permit caracterizarea de
ansamblu a modului de desfurare a unei activiti.
Toate aceste tipuri de informaii i multe altele circul n cadrul
organizaiei (unitii economice) ntre persoane, compartimente sau chiar ntre
organizaii (uniti economice) formnd circuite informaionale.
Un circuit informaional cuprinde drumul pe care l parcurge
informaia din momentul apariiei unui eveniment i pn cnd, pe baza
cunoaterii lui, se declaneaz un nou eveniment.
O seciune prin acest circuit informaional formeaz un flux
informaional.
n mod evident, aceste circuite informaionale depind de structura
organizatoric a unitii economice.
FLUXUL INFORMAIONAL reprezint cantitatea de informaii care
circul ntre dou puncte ale grafului organizaional, avnd destinaie, coninut,
sens i frecven bine stabilite.
n procesul de fundamentare a deciziilor ntr-o organizaie (unitate
economic), informaiile au un rol determinant. De calitatea informaiilor
depinde calitatea deciziilor ce urmeaz a fi adoptate.
Acesta este motivul pentru care factorii de conducere trebuie s se
preocupe permanent de perfecionarea sistemului informaional decizional.
O modalitate esenial 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

27

-Bazele Informaticii Economice

2.1.4.

Etapele procesului de prelucrare automat a


datelor

Pentru obinerea informaiilor necesare activitii 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 operaiilor de percepere, culegere, transmitere,
comparare, selectare, sortare, centralizare, grupare, stocare, etc. a
datelor, n vederea obinerii de informaii.
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 aplicaie);
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 cerinelor
impuse de utilizarea acestora. n urma procesului de prelucrare se obin
informaii, care sunt furnizate beneficiarilor (persoane, compartimente
funcionale, etc.).
Etapele procesului de prelucrare automat a datelor sunt evideniate n
Figura 2.2.
Pregtirea
iniial a datelor
Introducerea datelor
n baza de date
Prelucrarea datelor
Obinerea rezultatelor
Stocarea
datelor i informaiilor

Figura 2.2 Etapele procesului de P.A.D.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

28

Pregtirea datelor iniiale n vederea introducerii n procesul de


prelucrare presupune efectuarea unor operaii manuale de completare a unor
documente scrise, de codificare a datelor, de verificare a corectitudinii
documentelor n conformitate cu cerinele 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 aplicaie sau printr-un
echipament specializat.
Prelucrarea datelor este etapa n care toate operaiile se realizeaz n
mod automat de ctre sistemul de calcul prin intermediul programelor de
aplicaie, special concepute. n aceast faz se pot efectua operaii 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 colecii
sunt reunite ntr-o alt colecie, 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 afiarea 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 informaiile obinute sunt stocate
sub forma unor fiiere de arhiv sau prin meninerea 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 proiectanilor de soft i echipamente de calcul
urmresc permanent crearea tuturor condiiilor 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

29

-Bazele Informaticii Economice

2.2. Tipuri de date


Obiectivele abordrii structurilor de date n acest context sunt:
studierea proprietilor statice i dinamice ale diferitelor tipuri de date;
studierea tehnicilor de alocare a memoriei pentru pstrarea i
reprezentarea datelor cu diferite structuri;
studierea algoritmilor eficieni pentru crearea, modificarea, regsirea i
tergerea datelor cu o anumit structur.
Pentru nelegerea celor ce urmeaz este necesar cunoaterea
urmtoarelor concepte definite n paragrafele anterioare: dat, informaie, tip
de date, sistem informaional, sistem informatic, flux informaional.

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 statice

Tipuri dinamice

Tipuri simple
numeric
logic
caracter
dat de control

Tipuri structurate
masiv
ir
mulime
list
arbore
fiier
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 puin 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 puin fiier i baz de date;
Tipuri care pot fi reprezentate numai n memoria extern: fiier, 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
mulimii 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


colecie de componente ntre care exist anumite relaii, fiecare component
aparinnd unui tip simplu sau chiar unui (alt) tip structurat. Exemple: un masiv
este o colecie de valori ale unui tip simplu (numeric, n general), un fiier este
o colecie de articole, etc.
Din punct de vedere al modului de prelucrare al datelor, baza de date nu
exist dect n prezena calculatorului, pe cnd celelalte tipuri sunt
independente de calculator (de exemplu, papirusurile egiptene i tbliele de lut
sumeriene cu scrierea cuneiform pot fi considerate ca aparinnd tipului
fiier).
Din punct de vedere al modului n care un tip (structurat) i poate
modifica sau nu colecia de componente n timpul prelucrrii, tipurile pot fi
mprite n statice i dinamice.
Dac avem n vedere prelucrarea pe un sistem de calcul a datelor de
diferite structuri, atunci putem afirma c tipurile fiier 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 mulime de numere i operaiile


aritmetice i relaionale obinuite cu numere.
b) Un tip logic are dou valori: adevrat i fals, cu care putem efectua
operaiile: negaia, conjuncia, disjuncia.
c) Tipul caracter este format dintr-o mulime de caractere (nu neaprat grafice)
i operaiile de comparare, ordonare, etc.
d) Un tip dat de control este format dintr-o mulime de valori care aparin
altui tip simplu i din operaii specifice. Exemple: etichete, adrese.
Controlul se face de la o informaie la alta.

2.2.3.

Tipuri de date structurate, statice

a) Tipul masiv este o colecie 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 acelai tip. Operaiile ce se pot efectua cu date de tip masiv
sunt, fie la nivelul masivului (relaionale), fie la nivelul componentelor
masivului. Exemplu: matricea.
b) Tipul ir este o colecie finit i neomogen de valori ale unor tipuri simple.
Operaiile specifice: comparaie, ordonare, concatenare etc.
c) Tipul mulime (set). O valoare de tip set este o submulime a unei mulimi
de valori de tip simplu. Exemplu: mulimea prilor unei mulimi.
Operaiile cu variabile de tip mulime sunt cele din teoria mulimilor:
reuniune, intersecie, diferen etc.

PDF created with pdfFactory trial version www.pdffactory.com

31

-Bazele Informaticii Economice

2.3. Structuri liniare


Structura liniar (lista) este reprezentat de o colecie de date care pot fi
organizate pe un singur nivel.
Se numete alocare operaia de atribuire a unui spaiu din memoria
intern pentru o variabil de tip list. Dup modul de alocare a memoriei,
avem:
1. alocare secvenial
2. alocare simplu nlnuit
3. alocare dublu nlnuit
4. alocare multiplu nlnuit (structura arborescent).

2.3.1.Stive, cozi, liste


Stiva este o structur liniar cu alocare secvenial pentru care politica
de gestionare este de tip LIFO.
Reprezentarea schematic a unei astfel de structuri ar putea fi:

VS

sens
cretere
stiv

BS

adr max

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.
Condiia 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.
Operaiile specifice pe stiv sunt: ncrcarea i extragerea
componentelor de pe stiv. Sensul de cretere al stivei fiind consideratde la
adrese mari ctre adrese mici, la operaia de depunere n stiv se decrementeaz
adresa VS cu o unitate, iar operandul este nscris n memorie la aceast nou
adres. La operaia de scoatere din stiv se citete 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 ieit).

PDF created with pdfFactory trial version www.pdffactory.com

32

-Bazele Informaticii Economice

Coada este o structur liniar cu alocare secvenial pentru care politica


de gestionare este de tip FIFO.
Reprezentarea schematic a unei astfel de structuri ar putea fi:
IC

SC

unde IC este nceputul cozii, adic adresa la care poate fi depus urmtoarea
component n coad, iar SC este sfritul cozii, adic adresa de la care se
poate extrage urmtoarea component din coad. Condiia 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.
Operaiile specifice pe coad sunt: ncrcarea i extragerea
componentelor. In coad, informaiile 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 sfritul 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 ieit).
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 nlnuit este o structur liniar cu alocare simplu
nlnuit. Memoria pentru lucru cu liste cuprinde att memoria necesar
stocrii informaiei utile a componentelor listei, ct i adresele de legtur de la
o component ctre componenta urmtoare ei.
Reprezentarea schematic a unei liste simplu nlnuite cu trei
componente este:

INFO

INFO

INFO

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).

PDF created with pdfFactory trial version www.pdffactory.com

33

-Bazele Informaticii Economice

Pentru o list cu n componente, consumul de memorie suplimentar


stocrii informaiilor propriu-zise este de n+1 adrese.
Operaiile specifice cu liste simplu nlnuite sunt:
adugarea unei celule n orice poziie a listei: nceput, interior,
sfrit;
parcurgerea listei;
tergerea unui element din list, cu stabilirea corect a legturii ntre
componentele adiacente elementului ters.
Lista dublu nlnuit este o structur liniar cu alocare dublu
nlnuit. Memoria pentru lucru cu liste conine att memoria necesar stocrii
informaiei utile a componentelor listei, ct i adresele de legtur de la o
component ctre componentele adiacente ei.
Reprezentarea schematic a unei liste dublu nlnuite cu trei
componente este:

INFO

INFO

INFO

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;
informaie 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
informaiilor propriu-zise este de 2n+1 adrese.
Operaiile specifice cu liste dublu nlnuite sunt:
- adugarea unei celule n orice poziie a listei: nceput, interior,
sfrit;
- 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.

PDF created with pdfFactory trial version www.pdffactory.com

34

-Bazele Informaticii Economice

2.4. Structuri arborescente


O structur arborescent (arbore) este, sau vid, sau format dintr-un
nod, sau dintr-un nod cruia i sunt subordonai mai muli arbori (definiie
recursiv).
Se numete nod oricare dintre componentele elementare ale arborelui
nevid. Nodurile sunt legate ntre ele prin arce. In fiecare nod este reinut
informaia util a acelei componente a arborelui.
Nodurile subordonate direct unui nod N se numesc noduri fii, iar nodul
N este nod printe. Nodurile care nu au fii sunt terminale i se numesc frunze.
Nodul care nu are ascendeni este nodul rdcin. 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 ascendeni ai nodului
respectiv. Ordinul rdcinii arborelui este nul.
Se numete nivel al unui arbore submulimea de noduri cu acelai ordin.
Adncimea sau nlimea unui arbore este numrul de nivele pe care
sunt dispuse nodurile.
Un nod mpreun cu toi descendenii 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
0

PREDECESOR

11

1
B

12

INFO

URMTOR

15

SUCCESOR

Pentru stocarea unui arbore cu n noduri dispuse pe k nivele, n k, k 1,


consumul de memorie suplimentar informaiilor propriu-zise este de 3n+k
adrese.

PDF created with pdfFactory trial version www.pdffactory.com

35

-Bazele Informaticii Economice

Se consider c informaiile 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
conine adresele nodurilor de pe fiecare direcie: ascendent, descendent,
urmtor, conform reprezentrii tridimensionale anterioare. Valoarea 1 a unei
adrese arat c nu exist arc de la adresa curent pe direcia respectiv.
Tabelul T2
Adr

INFO

11
12
13
14
15
16
17
18
19

A
B
C
D
E
F
G
H
I

PRE
D
-1
11
11
11
12
12
13
13
13

SUC
C
12
15
17
-1
-1
-1
-1
-1
-1

URM
-1
13
14
-1
16
17
18
19
-1

O operaie specific pentru arbori este parcurgerea nodurilor. In


funcie de poziia 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 aceeai 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 descendeni direci.
Pentru un arbore binar, reprezentarea schematic a unui nod i a
descendenilor lui direci este:
INFO

SS

SD

unde SS este adresa rdcinii subarborelui


stng i SD este adresa rdcinii
subarborelui drept.

PDF created with pdfFactory trial version www.pdffactory.com

36

-Bazele Informaticii Economice

Exemplu. Fie urmtorul arbore binar:


A

B
E

G
I

ntr-un arbore binar, deoarece fiecare nod are cel mult doi descendeni,
se pot completa modurile de parcurgere cu unul suplimentar i anume
parcurgerea n inordine (SRD). Aceasta citete 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 conine un operator, iar frunzele conin
operanzii. In rdcin se trece operatorul corespunztor ultimei operaii care se
efectueaz.
Un arbore de compilare nu este obligatoriu binar.
Se numete arbore de cutare un arbore binar care este, sau vid, sau
respect regulile:
1. informaia din rdcin este mai mare dect toate informaiile din
nodurile subarborelui stng;
2. informaia din rdcin este mai mic dect toate informaiile 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 informaiilor din noduri.
Un arbore de selecie este un arbore binar care este, sau vid, sau
respect regulile:
1. informaiile din rdcin sunt mai mici dect toate informaiile din
subarbori;
2. subarborii stng i drept sunt arbori de selecie.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

37

2.5. Grafuri
2.5.1.Definiii, generaliti: reprezentarea grafurilor
n cele ce urmeaz toate noiunile 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 mulime X , finit sau nu (dar msurabil),
prevazut cu o relaie se numete graf.
Vom nota graful cu G = ( X , ) . Nu va fi pus, prin definiie, o restricie
asupra lui i, deoarece n aplicaiile uzuale se ntlnesc grafuri definite pe
mulimi finite, ne vom ocupa numai de acestea i n concluzie X va fi de
forma X = {x1 , x 2 ,K, x n } .
Reprezentarea grafului se face astfel:
elementele xi , numite vrfuri, vor fi reprezentate prin puncte;
tranziiile lui , numite arce, vor fi reprezentate prin sgei;
sensul unui arc xi x j , va fi prezentat prin notaia ( xi , x j ) care
precizeaz originea xi i extremitatea x j a arcului.
n aplicaiile practice apare frecvent necesitatea valorizrii arcelor,
atand fiecruia cte un numr a crui semnificaie concret variaz cu natura
problemei n care se folosete graful. Vom nota un asemenea numr cu vij ,
primul indice indicnd originea, iar al doilea extremitatea arcului.
Dac este o relaie simetric, graful se numete simetric i n acest
caz din ( xi , x j ) ( x j , xi ) , ceea ce nseamn c ntre vrfurile xi i x j
vor exista dou arce de sens contrar.
Cnd ( xi , x i ) , aceasta se reprezint printr-o bucl n xi .
Tranziiile din care se compun o relaie aparin categoriei de concepte
orientate. Cnd reprezentm un graf simetric i ntre dou vrfuri distincte ale
sale exist cele dou tranziii 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 circulaia vehiculelor pe o reea
stradal, fr sensuri unice, n graful respectiv X va fi mulimea nodurilor de
circulaie, iar sistemul legturilor ntre ele n ambele sensuri. n asemenea
cazuri relaia nu este distinct de transpusa ei i, dei s-ar putea considera
simetric, e suficient dac vom considera componentele sale prin cte un
segment cu extremiti n vrfurile ntre care se aeaz pe care l vom numi
muchie a grafului; acesta este conceptul de graf neorientat.
Graful orientat se numeste antisimetric dac este o relaie
antisimetric, adic din ( xi , x j ) ( x j , xi ) .
Dac din ( xi , x j ) ( x j , xi ) (xi , x j X ) , atunci graful se
numete complet. ntr-un graf complet, orice pereche de vrfuri distincte

PDF created with pdfFactory trial version www.pdffactory.com

38

-Bazele Informaticii Economice

particip la construirea relaiei , pe cnd graful antisimetric poate avea


perechi de vrfuri nelegate printr-o tranziie .
n anumite condiii un graf poate fi prevzut cu o relaie de ordine, dac
este un graf orientat.
O relaie de ordine nu se poate ntlni dect ntr-un graf orientat,
deoarece ordinea presupune prin definiie antisimetria, iar aceasta nu exist n
conceptul neorientat.
Toate noiunile 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 G = ( X , ) se pot obine noiunile:
a) Graful partial, cnd din graful de referin se suprim cel puin un
arc;
b) Subgraful G1 = ( A, A ) , cnd din G = ( X , ) , se suprim unul sau
mai multe vrfuri i arcele aferente lor.
Un graf dedus din altul poate fi un subgraf partial al acestuia.
1

5
3

4
Graf iniial

Graf parial

c) Transpusul G ~ = ( X , ~ ) al grafului G = ( X , ) are relaia ~


obtinu din prin transpunere (inversarea sensului arcelor) , adic
( xi , x j ) ( x j , xi ) ~

d) Graful complementar G * = ( X , * ) al grafului G = ( X , ) are relaia


* definit complementara lui ... fa de produsul cartezian X X ,
adic. U * = X X i I * =

Definitia 1.2. Dou vrfuri ale grafului se vor numi adiacente dac sunt
unite printr-o tranziie 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 tranziii unare se
exclud.

PDF created with pdfFactory trial version www.pdffactory.com

39

-Bazele Informaticii Economice

Numrul arcelor incidente spre interior ntr-un vrf se numete


semigradul interior al acestuia, iar al arcelor incidente spre exterior se
numete 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):
d1 = ( x1 , x3 , x 4 , x5 ) sau d1 = (v13 , v34 , v 45 ) ;
d 2 = ( x1 , x 2 , x 4 , x5 ) sau d 2 = (v12 , v 24 , v 45 ) ;
d 3 = ( x1 , x 2 , x5 ) sau d 3 = (v12 , v 25 )
d 4 = ( x1 , x 4 , x5 ) sau d 4 = (v14 , v 45 )
1

5
3

Drumuri finite

Drumuri infinite
Fig. 2.

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 numete
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 n 1 .
Circuitul este un drum finit care ncepe i se termin n acelai vrf; el
se numete elementar cnd trece numai o singur dat prin toate celelalte
vrfuri ale sale. Dac circuitul are un singur arc, atunci se numete bucl, iar
daca trece prin toate varfurile se numeste hamiltonian.
Graful tare conex este graful pentru care oricare ar fi vrfurile sale xi
i x j (i j ) , s existe cel puin un vrf de la xi la x j , sau ca orice pereche de
vrfuri distincte s se afle cel puin 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 descendeni se numesc frunze sau vrfuri atrnate.
Cnd dintr-un graf oarecare se poate extrage un graf parial care s fie o
arborescen, aceasta se numete arborescen parial.

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 ( xi , x j ) atunci pentru muchie se utilizeaz notaia ( xi , x j ) . Pentru a
pune n eviden absena orientrii, pentru grafurile neorientate se utilizeaz
notaia G = ( X , ) . Noiunea de drum este nlocuit cu noiunea de lan,
lungimea acestuia fiind egal cu numrul muchiilor sale.
Lanul poate fi simplu sau compus, elementar sau nu, n aceleai condiii
prezentate pentru drumuri. Oricrui drum i
corespunde un lan, ns nu oricrui lan i
x3
corespunde un drum.
Noiunea de circuit este nlocuit cu
cea de ciclu; orice circuit este un ciclu, dar nu
orice ciclu este i circuit.
x1
x2
Un graf este conex dac ntre oricare
Fig. 2.
pereche de vrfuri distincte ale sale exist cel
puin un lan.
Orice graf tare conex este conex dar reciproca nu este adevarat.
Noiunea de arborescen este nlocuit cu cea de arbore i deci ntr-un
graf neorientat G vor fi luai n considerare arbori pariali.

2.6. Fiiere
2.6.1.Concepte fudamentale: suport, organizare, acces
Numim suport materialul fizic pe care este stocat informaia.
Un fiier este o colecie de date depuse, de obicei, pe un suport de
memorie extern.
O component a unui fiier este un articol sau o nregistrare.
Organizarea datelor n fiier este necesar dac:
Volumul datelor prelucrate este foarte mare i depete capacitatea
memoriei interne a calculatorului;
Datele trebuie stocate n vederea unei prelucrri ulterioare, n cadrul
aceluiai program sau al altuia.
Tipul fiier definete o structur care cuprinde un numr nefixat de componente
de acelai tip.
Accesul la componentele unui fiier se face dup modul de organizare a
informaiei i poate fi:
1. acces secvenial continuu elementele din fiier sunt dispuse
secvenial;

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

41

2. acces secvenial indexat la fiecare articol din fiier se adaug o


informaie de indexare (indice) care nu face parte din articolul
propriu-zis;
3. acces direct (randomizat) fiecare articol trebuie s aib una sau mai
multe informaii unice de acces.
Organizarea secvenial 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 funcional cu coninutul fiecrui articol;
b) d posibilitatea unor operaii mult mai performante fa de celelalte
tipuri de organizri.

2.6.2.Operaii cu fiiere
Dup modul de organizare, avem:
a) operaii la nivel de fiier
b) operaii la nivel de articol.
Operaiile la nivel de fiier se efectueaz indiferent de structura fiierului
sau a articolelor. La nivelul fiierului, operaiile specifice sunt:
1. alocarea unui fiier;
2. distrugerea unui fiier;
3. redenumirea unui fiier.
Alocarea fiierului const n operaia prin care o cantitate de memorie
este atribuit fiierului n vederea stocrii informaiilor utile coninute n
componentele structurii i n vederea stocrii informaiei de legtur ntre
componente, cu toate particularitile lor.
La nivel de articol operaiile se efectueaz dependent de structura
articolului. Dintre acestea, cele mai uzuale sunt:
1. crearea fiierului (popularea);
2. actualizarea fiierului: adugare, modificare, tergere de articole;
3. copierea unui fiier articol cu articol;
4. reorganizarea fiierului cu sau fr schimbarea suportului;
5. salvarea, arhivarea, restaurarea unui fiier modificarea suportului i
compactarea informaiei;
6. sortarea unui fiier articolele fiierului sunt aranjate n ordine
conform cu o relaie de ordine;
7. ventilarea unui fiier dintr-un fiier rezult mai multe fiiere prin
partiionare dup un anumit criteriu;
8. concatenarea fiierelor din mai multe fiiere surs cu aceeai
structur a articolelor se formeaz un singur fiier rezultat, prin
adugarea articolelor fiecrui fiier surs dup articolele fiierului
deja rezultat;
9. interclasarea fiierelor din mai multe fiiere surs cu aceeai
structur a articolelor se formeaz un singur fiier n care articolele
sunt sortate conform cu o relaie 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 funciile diferitelor sale structuri anatomice
(fiziologia). Nivelul de prezentare este subordonat cerinelor de nelegere a
mecanismului de lucru al calculatorului.
Calculatorul electronic numeric este un sistem automat care primete,
prelucreaz i transmite informaia 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 cerinelor 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
activitile 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 informaii ca rezultat al prelucrrii.
Orice calculator modern are n esen trei pri:
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 instruciuni, interfeele cu utilizatorii, modul de operare i
control al intrrilor ieirilor, etc. realizarea unei arhitecturi din
acest punct de vedere, duce la o familie de calculatoare.
din punct de vedere tehnic sau al proiectanilor de echipamente,
termenul de arhitectur se utilizeaz pentru descrierea naturii,
configurrii i interconectri dispozitivelor SC. Aceasta este accepia
cea mai rspndit a noiunii de SC.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

43

3.2. Evoluia i clasificarea sistemelor de calcul


Istoria mainilor i dispozitivelor de calcul este foarte veche. Astfel,
abacul, un dispozitiv bazat pe un sistem de bile (numrtoarea utilizat n
grdinie i coli elementare) a fost introdus cu 2000 3000 ani n urm. n
1614 matematicianul scoian John Napier, odat cu introducerea noiunii 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 inginereti.
Istoria mainilor mecanice de calcul ncepe n 1642 odat cu maina
unui tnr francez de 19 ani, Blaire Pascal, care va deveni ulterior un celebru
matematician, fizician i filozof. Maina Pascal, cu unele mbuntiri, 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 main care putea s efectueze nmuliri i mpriri.
Printele SC modern este considerat englezul Charles Babbage, profesor
de matematic la universitatea din Cambridge, care i-a petrecut toat viaa
proiectnd sisteme de calcul.
n 1834 el a prezentat Societii Regale de tiine un proiect al unui
dispozitiv complex numit main 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 posibiliti de memorare;
sistemul trebuia s fie dotat cu un dispozitiv de calcul;
sistemul trebuia s fie dotat cu un dispozitiv de ieire.
Maina analitic nu a putut fi realizat din cel puin 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 mainii Mark I de ctre Howard Aitken de la Harward University, n
perioada 1937 1944.
Calculatorul Mark I a fost n funciune pn n 1949.
Mai mult sau mai puin 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 menionat mai sus a fcut parte i matematicianul John von
Neumann, care, fcnd analogii cu modul de funcionare a creierului uman, a
instituit principiile care ar trebui s stea la baza construciei SC. Ideile lui von
Neumann au fost puse n practic, multe dintre calculatoarele din zilele noastre
respectnd ceea ce se numete arhitectura von Neumann.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

44

Enumerm principiile von Neumann aa cum au fost prezentate la


vremea respectiv:
1. Deoarece maina este destinat calculelor, ea va executa cel mai
frecvent operaiile aritmetice (adunarea, scderea, nmulirea i
mprirea). Este necesar deci existena unei componente
specializate destinat calculului (astzi i putem spune Unitate
aritmetico logic).
2. Operaiile se vor executa secvenial. Pentru a asigura elasticitatea i o
relativ universalitate, se impune o distincie ntre instruciunile
necesare rezolvrii unei probleme particulare i controlul general
asupra acestor instruciuni (apare astfel ceea ce astzi numim
componenta de control).
3. Evoluia sistemelor de calcul a dovedit utilitatea nglobrii unitii de
calcul i a unitii 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 instruciunile 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 / ieire.
6. Este necesar o component care s in minte permanent, pe care o
numim memorie permanent (memoria extern de astzi).
7. Este necesar existena posibilitii de trecere de la memoria intern
la cea permanent i invers.
n zilele noastre o serie din principiile de mai sus sunt perimate sau
parial adevrate.
Astfel, sistemele paralele, numite i arhitecturi non von Neumann, nu
respect principiul secvenialitii, iar sistemele simbolice, utilizate n aplicaii
complexe din domeniul inteligenei artificiale, se bazeaz pe inferene logice,
nu exclusiv pe calcule aritmetice.
Al doilea rzboi mondial a nsemnat confruntare armat, dar i
confruntare n planul inteligenelor, alocndu-se fonduri nsemnate pentru
cercetri n domeniul calculatoarelor.
n 1941, germanii au realizat prin Konrad Zuse dou maini, Z3 i Z4,
care funcionau pe baz de program i puteau efectua calcule. Aceste sisteme
au fost distruse n urma bombardamentelor aliailor.

PDF created with pdfFactory trial version www.pdffactory.com

45

-Bazele Informaticii Economice

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.
Specialitii n calculatoare mpart calculatoarele n 5 generaii,
elementul determinant n clasificare fiind reprezentat de suportul tehnologic
utilizat. Cu meniunea c CPU este abrevierea pentru Central Processing Unit,
prezentm mai jos caracteristicile generaiilor de calculatoare pn n zilele
noastre.
Generaia

Perioada

Tehnologie
CPU

Tehnologie
memorie

Limbaje utilizate

Performane,
memorie i CPU

1946
1956

Tuburi
electronice

Tambur
magnetic

De asamblare

Memoria : 2 Kb
Viteza: 104 i/s

II

1957
1963

Tranzistori

Inele de ferit

Nivel nalt:
FORTRAN,
COBOL, etc.

Memoria: 32 Kb
Viteza: 2*105 i/s

Nivel foarte nalt:


Pascal, LISP,
limbaje grafice

Memoria: 2Mb
Viteza: 5*106 i/s

ADA, limbaje
orientate pe obiecte

Memoria: 8 Mb
Viteza: 3*107 i/s

Limbaje
concurente; limbaje
funcionale (LISP);
limbaje logice
(PROLOG)

Viteza: 109 1012


i/s
Memorare i
prelucrare
cunotine,
vedere artificial,
tehnologia
vorbirii, etc.

III

1964
1981

Circuite
integrate

Memorii
semiconductoare, discuri
magnetice,
etc.

IV

1982
1989

Circuite
integrate pe
scar larg i
foarte larg

Memorii cu
bule, discuri
optice

Dup
1990

Circuite
integrate pe
scar extrem
de larg,
maini LISP
i PROLOG

Arhitecturi
paralele

Fig. 3.1. Generaiile de calculatoare.

PDF created with pdfFactory trial version www.pdffactory.com

46

-Bazele Informaticii Economice

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 obin
rezultatele (fig. 3.2). Dar utilizarea calculatorului n deplin cunotin de
cauz presupune cunoaterea principalelor sale componente.
Pentru a-i putea exercita funciile, 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.

MEMORIA EXTERN
Extinde memoria intern

MEMORIA INTERN
Pstreaz datele, instruciunile
i rezultatele prelucrrii

DISPOZITIVE DE
INTRARE
Date i instruciuni

UNITATEA
ARITMETICO-LOGIC
(ALU)

Execut operaiile aritmetice i


logice

DISPOZITIVE DE
IEIRE
Rezultatele prelucrrii

UNITATEA DE CONTROL
Implementeaz
instruciunile memorate

Asigur comanda tuturor


elementelor calculatorului

PROCESOR (CPU)

Date
Instruciuni
Fig 3.2. Structura logic a unui calculator.

PDF created with pdfFactory trial version www.pdffactory.com

Comenzi

47

-Bazele Informaticii Economice

Blocul CU mpreun cu ALU formeaz aa-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 secvene de instruciuni
reprezentnd programul memorat.

GENERATOR
DE IMPULSURI

instruciune

BLOC
EMULATOR

MEMORIA
DE COMAND
ROM/RAM

REGISTRUL
DE LUCRU

ALU

DECODIFICATOR

CIRCUITE
DE INTERFA

BUS - EXTERN

Fig 3.3. Structura unitii de comand i


control.

Din punct de vedere structural, elementele unitii 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 funcii (execuia unei instruciuni, a unui ordin etc.).
n cazul microprogramat, unei stri i corespunde o
microinstruciune, adic o succesiune de bii ce codific o serie de comenzi
relativ simple. Execuia unei funcii 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 instruciuni, iar fiecrei instruciuni i corespunde
un microprogram nregistrat, ncepnd cu o anumit adres, n memoria de
comand.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

48

Simularea unui set de instruciuni pe un calculator microprogramat se


numete emulare, microprogramul corespunztor poart numele de
microprogram de emulare sau, simplu, emulator. Executarea unei instruciuni
din programul utilizatorului presupune preluarea acestei instruciuni din
memoria intern, decodificarea ei i generarea adresei de nceput a
microprogramului de emulare. Toate acestea sunt realizate ntr-un bloc
emulator.
Urmeaz derularea microinstruciunilor din microprogramul selectat.
Fiecare microinstruciune ajunge n blocul de decodificare a cmpurilor
microinstruciunii 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). Creterea integrrii permite realizarea unui
bloc funcional cu puine cipuri sau chiar a mai multor blocuri funcionale pe
acelai cip.
Microprocesoarele sunt circuite care conin n acelai cip ALU,
registrele de lucru i decodificatoarele de comenzi nregistrate (partea
delimitat cu linii ntrerupte n figur). Dac setul de instruciuni al
calculatorului coincide cu setul de instruciuni 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 instruciuni pe care le poate executa.
Viteza de lucru a unui microprocesor este determinat de urmatorii
factori:
frecvena ceasului intern;
dimensiunea regitrilor interni i a magistralei de date;
tipul microprocesorului;
dimensiunea memoriei cache:
Frecvena cu care ceasul intern genereaz pulsuri se numete frecvena
ceasului intern.
Cu ct dimensiunea regitrilor din microprocesor este mai mare, cu att
viteza de lucru este mai mare; deoarece crete capacitatea de memorare n
interiorul microprocesorului i deci numrul de operaii 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


influeneaz 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 instruciunilor. Instruciunile sunt aduse, n ordinea dictat de
CU, n registrii, unde se interpretez, se aduc operanzii din memorie, se execut
operaiile i rezultatul se depune n memorie.
c. Memoria intern este memoria n care se afl programele sau poriuni 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 octei);
timp de acces (intervalul dintre cererea de acces la o dat i furnizarea
datei de ieire);
modul de organizare i adresare (adresa identific locul unui element
de informaie).
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 aplicaiile 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 conine informaia text
sau grafic ce se afieaz pe ecran;
adaptoare ROM i RAM pentru diferitele dispozitive ce se pot conecta
n sistem ;
memoria ROM-BIOS- BIOS este un set de instruciuni ce asigur
comunicarea ntre procesor i alte module aa 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 insuficieni. Soluia adoptat a fost
utilizarea memoriei expandate. Aceast memorie poate fi adresat ntr-o
fereastr fix, de 64 Kb, rezervat n spaiul 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
mbunti viteza de operare a sistemului. Aceasta se realizeaz prin pstrarea
n memoria cache a informaiei ce trebuie gasit rapid. Cu ct memoria cache
este mai mare, cu atat viteza de lucru a microprocesorului crete.
Capacitatea memoriei este reprezentat prin numrul de bii de
informaie pe care i poate stoca. Se utilizeaz ca unitate de msur a capacitii
memoriei octetul sau byte (cuvnt de 8 bii), mpreun cu multiplii si:
Kilooctet (Ko sau Kb-Kilo Bytes);
10
-1 Kb =2 = 1024 octei.
Megaoctet (Mo sau Mo-Mega Bytes);
20
-1 Mb =2 = 1024 Kb.
Gigaoctet (Go sau Gb-Giga Bytes) :
30
-1 Gb =2 = 1024 Mb.
Teraoctet (To sau Tb-Tera Bytes) ;
40
-1 Tb =2 = 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 locaii. Memoria RAM
conine programele utilizator active i datele necesare lor, precum i o zon de
date a sisemului de operare. Informaia coninut 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 informaiei. Memoria ROM este o memorie nevolatil, informaia
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 informaiile pot fi ncrcate, dar numai de ctre firma
productoarea calculatorului sau alte instituii specializate n hard.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

51

Promurile erau iniial 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 capacitilor
sistemului de calcul. Ele sunt de dou categorii:
dispozitivele de intrare-ieire, care asigur schimbul sistemului de
calcul cu mediul nconjurtor, deci i interfaa cu utilizatorul;
memoria extern, care extinde capacitatea memoriei interne.
Dispozitivele periferice sunt:
dispozitive de intrare sau de introducere;
dispozitive de ieire sau de extragere;
dispozitive de intrare-ieire.
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 folosete
pentru introducerea comenzilor i a datelor n system.
Mouse-ul este un dispozitiv de introducere, utilizat pentru selectarea
unor opiuni 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 recunoatere 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 combinaie dintre
handz scanner i ORC. Se utilizeaz mai ales n nregistratoarele de cas din
marile magazine, fiind format dintr-un ansamblu de citire, emisie / detecie a
intensitii luminoase. Pentru siguran i aceste sisteme sunt legate de tastaturi,
ca n caz de indecizie, s se poat tasta datele.
Echipamente de ieire permit extragerea rezultatelor prelucrrii, pe
calculator.
Principalele echipamente de ieire 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 ieire, unul dintre
cele mai importante este cel video. El const din dou componente principale:
monitorul (sau afiajul video)
adaptorul video (numit i placa video sau placa grafic).
Rezoluia monitorului reprezint numrul de puncte distincte (pixeli)
afiabile pe toat suprafaa ecranului.Exte evident c, cu ct numarul de
puncte este mai mare, cu att imaginile au mai multe detalii, sunt mai clare i
deci, rezoluia 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.
Plcile 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 rezoluii foarte bune, iar
rezoluia 1024x768 devine rezoluie standard.
Imprimantele sunt principalele echipamente de ieire care realizeaz
apariia pe hrtie a informaiilor alfanumerice sau grafice.
Structura general a unui echipament de imprimare este definit de existena
unor blocuri funcionale cum ar fi:
blocul de imprimare
sistemul de avans al hrtiei
blocul logic de comand
interfaa
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 funcional ce genereaz


imaginea grafic pe suportul material, pe baza unui anumit procedeu
fizic de trasare
blocul de control al trasrii
unitatea logic
interfaa 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 hrilor, precum i a unor desene mai
pretenioase dect cele ce se pot realiza cu imprimantele. n concluzie, ele se
utilizeaz n special n acele ntreprinderi n care exist activiti specifice de
CAD (Computer Aided Design proiectare asistat de calculator).
e. Magistrale de date, de adrese, de comenzi
Magistrala se definete ca mulimea conductoarelor (linii) folosite n
comun de mai multe uniti funcionale 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
bidirecional - 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 unidirecional - 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
funcionarea dispozitivelor de pe magistral (exemple: READ,WRITE);
semnale de stare -prin care microprocesorul primete reacii 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 comunicaie n scopul schimbului
de informaie sau al utilizrii n comun a mai multor resurse.
Din punct de vedere fizic, o reea de calculatoare se compune dintr-o
reea de comunicaii i o mulime de calculatoare i echipamente periferice
destinate prelucrrii, memorrii i accesului la datele i programele din reea.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

54

Reeaua de comunicatii asigur nivelul fizic al legaturilor din reea;


nivelul fizic poate fi realizat ntr-o varietate de configuraii care depind de
mediul de cumunicaie (telefonic, fibre optice s,a.), de tipul liniilor (simplex,
semiduplex, duplex integral), de dispunerea geografic a punctelor din reea.

3.4.1.

Clasificarea i tipurile de comunicaie

Din punct de vedere al ntinderii, reelele pot fi clasificate:


de arie larg (WAN) peste 100 km:
de arie metropolitan (MAN) 1-100 km;
de arie local (LAN) sub 1 km.
Reelele de comunicaii de date pot fi clasificate dup arhitecturile i
tehnicile utilizate pentru transferul de date astfel:
reele cu comutare de circuite;
reele cu comutare de mesaje;
reele cu comutare de pachete.
Comutarea de circuite. Comunicaia prin comutare de circuite implic
existena unei ci de comunicaie ntre dou staii. Cel mai comun exemplu al
comutrii de circuite este cel al reelei telefonice. Ea se caracterizeaz prin
stabilirea n prealabil a unei legturi i prin ocuparea liniilor n timpul duratei
comunicaiei, 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 reelei, fiind
neglijabil.
Comutarea de mesaje. La comutarea de mesaje, nu este necesar s
stabilim o cale direct ntre dou staii. Dac o staie dorete s transmit un
mesaj, va aduga o adres de destinaie a mesajului. Mesajul va fi trecut apoi
din nod n nod prin toat reeaua pn la destinaie. 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 acelai timp s limiteze
dezavantajul ambelor. Pentru simplificarea tehnicilor de transmisie n subreea,
mesajele se fragmenteaz n uniti mai mici. Unittile de informatie n care se
fragmenteaz mesajele i care sunt vehiculate n reea se numesc pachete.
Pachetele nu mai sunt memorate n fiiere. 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 menine timpul
de transmisie sub control.

PDF created with pdfFactory trial version www.pdffactory.com

55

-Bazele Informaticii Economice

3.4.2.

Elemente de sisteme deschise

Reelele 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 comunicaia
virtual. ntre fiecare pereche de niveluri adiacente exist o interfa care
definete ce operaii primitive i servicii ofer un nivel pentru nivelul superior.
Ierarhiei de nivele i corespunde una de protocoale.
Conceptul de reele implic faptul c entiti din diferite sisteme trebuie
s comunice. Exmple de entiti sunt programele de aplicaii, sistemele de
administrare a bazelor de date, pota electronic etc. n general, o entitate este
capabil de transmisie/recepie, iar un sistem este un obiect fizic distinct ce
conine una sau mai multe entiti. Setul de reguli ce guverneaz schimbul de
date ntre dou entiti se numete protocol.
n ncercarea de standardzare a protocoalelor de comunicaie
Organizaia Internaional pentru Standardizare (ISO) a propus un model
de reea, 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 funcionale, astfel:
Niveln
r.
7.
6.
5.
4.
3.
2.
1.

Sistemul A

Protocoale

Aplicaie
Prezentare
Sesiune
Transport
Reea
Legtur de date
Nivel fizic

Sistemul B
Aplicaie
Prezentare
Sesiune
Transport
Reea
Legtur de date
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 definete 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 legturii de date (2)


Nivelul fizic transmite nivelului legturii de date un flux continuu de
bii. Aici biii primesc un anume sens, fiind nlocuii cu noiunea de cadru de
date (data frame) sau pachet de date (package). Acest nivel rspunde de
adugarea unor bii fanion care indic nceputul i sfritul pachetelor.
Totodat, se adaug adrese de reea (de obicei doar ale sursei i destinaiei) i
bii pentru detecia i corecia erorilor de transmisie.
Nivelul reea (3)
Serviciul de reea este responsabil pentru stabilirea, meninerea i
terminarea conexiunilor prin intermediul facilitilor de comunicaie implicate.
Nivelul transport (4)
Acest nivel are ca sarcin principal asigurarea transmiterii corecte a
mesajelor de la nivelul aplicaiei ,la fel cum nivelul legturii de date asigur
transmiterea corect a pachetelor ntre noduri adiacente. Diferena principal
este aceea c nivelul transport asigur acest serviciu ntre surs i destinaie.
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 destinaie de ctre acelai nivel.
Nivelul sesiune (5)
Putem privi acest nivel ca pe un manager al reelei n sensul c acesta se
ocup de parole, translatri de adrese i nume, monitorizarea traficului pe reea,
terminarea transmisiei ntre dou calculatoare,etc.
Nivelul prezentare (6)
Acest nivel nu se ocup de transmisia propriu-zis a informaiei ci de o
prelucrare a acesteia. Acestui nivel i revine sarcina s gseasc un format
comun pentru surs i destinaie (de exemplu, caracteristicile terminalelor), s
converteasc fiierele, eventual s le compacteze sau s le codifice.
Nivelul aplicaie (7)
Acesta este nivelul aplicaiilor cu care utilizatorul interacioneaz direct.
La acest nivel gsim o multitudine de aplicaii, multe cu propriul lor protocol.
Totui, exist domenii pentru care s-au definit standarde i la acest nivel (ca un
exemplu, avem domeniul bancar). La acest nivel ntlnim aplicaii ca: baz de
date, pot electronic, transfer de fiiere, gestiunea fiierelor, etc.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

3.4.3.

57

Structura unei reele locale

Principalele componente ale unei reele locale sunt:


Staiile de lucru;
File Serverele;
Cablurile de legtur;
Adaptoarele pentru reea.
Pentru interconectarea mai multor reele avem urmtoarele componente:
Repeater-ul;
Puntea;
Routerul;
Poarta (gateway).
Staia de lucru este un microcalculator (n general un compatibil IBMPC) conectat la o reea prin intermediul plcii de reea i este folosit pentru a
executa diferite lucrri, programe de aplicaie, utilitare, etc.
File Server-ul este un calculator pe care este ncrcat i ruleaz sistemul
de operare pentru reea (Net Operating System). El supervizeaz comunicaiile
n cadrul reelei i gestioneaz resursele partajate (ca de exemplu, fiierele,
imprimantele, utilizatorii, drepturile de acces, etc.).
File Server-ul trebuie s fie echipat cel puin cu un hard disk, memorie intern
suficient i cel puin o plac de reea.
File Server-ele pot fi :
dedicate (folosite exclusiv pentru monitorizarea reelei);
nededicate (pot fi folosite i ca staii de lucru).
Punile permit comunicarea ntre reele care au nivelul fizic i nivelul
legtur de date diferite (de exemplu, printr-o punte de LAN se poate lega o
reea de tip TOKEN_RING cu o reea de tip ETHERNET).
La reelele interconectate prin puni, utilizatorii pot folosi n comun resursele
comune din reea (fiiere, imprimante, discuri, etc.) sau pot comuta mesaje
ntre staii.
Repeater-ul funcioneaz ca un amplificator de semnal ntre sisteme
situate la o distana mai mare dect cea care asigur acurateea transmisiei.
Un router, ca i un gateway, separ, de obicei, reele de tip diferit, fiind astfel
elemente de baz n interconectarea reelelor. Ele se deosebesc prin nivelul
diferit la care lucreaz.
Una dintre cele mai rspndite tipuri de LAN este reeaua local
Ethernet. Aceasta utilizeaz pentru comunicarea ntre nodurile reelei cabluri.
Nodurile pot fi file-server, staii de lucru, print-server, etc.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

58

n reelele Ethernet se utilizeaz dou tipuri de cabluri:


cabluri subiri, situaie n care staiile se leag una de alta n ir;
cabluri groase (singurele prevzute n standardul Ethernet), situaie
n care toate staiile se leag pe acelai cablu, numit magistral.
Poriunea dintre primul i ultimul calculator dintr-o reea 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 reelei de comunicaii dat prin poziia i legturile dintre


nodurile acesteia st la baza proiectrii traseelor de informaii n vederea
alegerii acelei configuraii care s asigure cele mai multe dintre criteriile de
performan urmrite (timpul n care poate fi transferat informaia ntre dou
puncte oarecare ale reelei, sigurana 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 imediai
prin ci dedicate unidirecionale. n fiecare nod avem un repeat-er de
informaie, 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 reea care accept i livreaz
informaie utilizatorilor este conectat la un singur nod central, prin care trebuie
s treac tot traficul. Doar nodul central trebuie s posede informaii ce
definesc topologia reelei; fiecare nod destinatar este conectat printr-o linie
distinct, iar tabele de dirijare a nodului central indic, pentru fiecare staie,
linia de ieire 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 comunicaie partajate, unice.
Punctele de acces sunt conectate, prin jonciuni pasive la suport, iar informaia
este emis spre suport i recopiat prin celelalte puncte de acces.
Topologia arborescent
ntr-o reea de acest tip exist o singur cale ntre fiecare pereche de
noduri, dar ntre nodurile nepereche pot exista mai multe ci. Toate informaiile
necesare pentru funcionarea algoritmului de dirijare pot fi coninute n adresa
nodului destinaie.
n ncheiere menionm faptul c hub-ul este un distribuitor de legturi,
tot mai mult folosit n pregtirea mai multor tipuri de reele LAN pentru a
participa la comunicaia 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 reele locale, de cele metropolitane sau de
mari reele 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 existena unor aplicaii de nivel nalt, prezente pe orice platform hard,
independent de arhitectur sau de sistemul de operare. Toate serviciile puse la
dispoziie de INTERNET sunt universal accesibile i la dispoziia tuturor.
Servicii oferite de INTERNET
Pota electronic (E-mail);
Acesta este un serviciu de transmisie de mesaje prin intermediul reelei
INTERNET. Folosirea potei electronice este foarte simpl i rapid, mult mai
ieftin fa de modalitile tradiionale de trimitere a mesajelor. Prin pota
electronic se pot trimite mesaje text la care se pot ataa, dac este nevoie
fiiere de orice tip. Deservirea este prompt, de ordinul a cteva minute pentru
persoane aflate la mii de kilometri distan. Dac mesajul nu ajunge la
destinaie din motive obiective, este ntors emitentului cu un mesaj explicativ.
Destinatarul nu trebuie s fie n faa calculatorului cnd primete mesajul (cum
se ntmpl n cazul telefonului sau fax-ului).
Serviciul de pot electronic este asigurat de programe diferite pe platforme
de operare diferite. Operarea este foarte uor de nvat.

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

60

Usenet-ul
Acesta este un sistem de conferine bazat pe articole. Discuiile se poart
n aa numite newsgroups (grupuri de tiri). Fiecare newsgroup are un nume
care definete i subiectul de discuie. Oricine are acces la Usenet poate
publica un articol n orice grup dorete. 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 fiiere ntre dou calculatoare n
INTERNET.
Talk
Dei E-mail-ul este cel mai folosit i mai comod mod de comunicare,
apar situaii cnd acest serviciu nu este suficient. Dac dou persoane vor s
duc o conversaie pe o anumit tem, care presupune mesaje scurte, dar multe
ntre cei doi, atunci aplicaia Talk este cea mai potrivit. Aceast aplicaie 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
ctigat deja un mare renume i o larg rspndire. Dezvoltat la CERN n
Elveia, World Wide Web (prescurtat WWW) este un sistem care adun mai
multe faciliti ale INTERNET-ului ntr-o singur aplicaie. n principal,
WWW ofer un numr uria de pagini de informaii multimedia, conectate prin
hiperlegturi. O pagin poate conine text formatat, imagini, sunet sau chiar
imagini video, precum i referine 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
referinele 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 susinut
puternic de lumea reelelor 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 muli dintre noi calculatorul este o unealt. Manager,
informatician sau simplu consumator de servicii informatice fiind, este corect
s deii informaii concise i precise relativ la ceea ce este de competena unui
sistem de calcul i ceea ce rmne n nchipuirea celui care modeleaz.
n acest capitol abordm, de fapt, trei probleme importante pentru o
nelegere mai profund a potenialului 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 numeraie.
Acestea se pot clasifica dup mai multe criterii. Cea mai uzual clasificare a
acestora este urmtoarea:
sisteme de numeraie nepoziionale;
sisteme de numeraie poziionale.
Cel mai reprezentativ sistem nepoziional este sistemul roman care
folosete simbolurile: I,V,X,L,C,D,M. Regulile folosite n acest sistem pentru
formarea numerelor sunt:
nsumarea cifrelor (simbolurilor) de aceeai valoare, aezate una lng
alta, ca de exemplu: III=3, XXVII=27;
cifr de valoare mai mic aezat naintea uneia de valoare mai mare se
scade din aceasta, ca de exemplu: IV=4, XL=40;
cifr de valoare mai mare aezat 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 dificulti n efectuarea calculelor.
Dintre sistemele poziionale, cel mai reprezentativ este sistemul arab,
caracterizat prin faptul c aportul unei cifre la valoarea numrului depinde att
de valoarea ei ct i de poziia pe care o ocup n scrierea numrului.
Astfel, de exemplu, dac scriem numrul 1231, cifrele 1 din poziia
unitilor i a miilor au ponderi diferite. Poziia unei cifre n scrierea unui
numr depinde de ordinul ei de mrime n acel numr. Vom avea, prin urmare:
ordinul unitilor, ordinul zecilor, ordinul sutelor, .a.m.d..

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice

62

ntr-un sistem de numeraie poziional, numrul unitilor de acelai


ordin de mrime care formeaz o unitate de ordin imediat superior se numete
baz a sistemului de numeraie. Numrul simbolurilor (cifrelor) necesare
pentru scrierea numerelor ntr-un sistem de numeraie 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
afirmaia:
Pentru orice numr natural nenul x, exist un unic numr natural n,
numit rang i n+1 numere naturale c0, c1, , cn, numite cifre n baza b, care
satisfac relaiile:
x=cnbn+cn-1bn-1++c1b1+c0;
ci{0, 1, , b-1}, i{0, 1, , n};
cn0.
Pentru exemplificare s considerm numrul:
x =3235(10)=CA3(16)
Dac este scris n baz 10, avem x =3*103+2*102+3*101+5.Deci n=3,
c0=5, c1=3, c2=2, c3=3
n baza 16, avem x=C*162+A*16+3.
Deci n=2, c0=3, c1=A, c2=C.
Atam fiecrui numr din mulimea {0,1, , b 1} cte un simbol Ci n
aa fel nct la numere diferite s atam simboluri diferite. Convenim, de
asemenea, c atunci cnd ne refenim la o cifr ci, s scriem de fapt simbolul Ci
asociat numrului ci. Cu aceste convenii avem reprezentarea numrului x n
baza b:
CmCm-1C1C0(b)
De exemplu, pentru numrul x=1024 din baza 10 avem:
x =3235(10)=CA3(16)
Sistemul de numeraie cel mai des utilizat n viaa de zi cu zi este
sistemul zecimal.
Sistemul de numeraie cu baza doi, numit sistem binar, care utilizeaz
numai cifrele 0 i 1, st la baza construciei sistemelor de calcul.
Sistemul de numeraie cu baza 16, numit sistem hexazecimal, folosete
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


Definiia dat reprezentrii numerelor naturale poate fi extins i la
numere reale. Fie x un numr real strict pozitiv.
Spunem c succesiunea:
cncn-1c1c0,c-1c-2c-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 condiiile:


x=cnbn+cn-1bn-1++c1b1+c0+c-1b-1+c-2b-2++c-mb-m;
ci{0,1,,b-1} i{n,n-1,,1,0,-1,-2,,-m};
cn0;
(k0) exist (jk) astfel nct cj<b-1.
Comparnd definiia dat reprezentrii numerelor reale cu cea dat
reprezentrii numerelor naturale, se observ c la numerele reale avem, n plus,
condiia a patra, care cere s nu existe un rang ncepnd de la care toate cifrele
reprezentrii s fie egale cu b-1. Aceast condiie este necesar pentru a asigura
unicitatea reprezentrii numerelor. n absena acestei condiii are loc egalitatea:
0,5=0,49999
Succesiunea:
cncn-1c1c0(b)
reprezint, n baza b, partea ntreag a numrului x, iar succesiunea:
c-1c-2c-m
reprezint, n baza b, partea fracionar 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 faa
acestei reprezentri punndu-se semnul (-).

4.1.3.Schimbarea bazei de numeraie


Existena i utilitatea mai multor baze de numeraie 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 dorete conversia lui
ntr-o baz nou q. Mai cunoscute sunt urmtoarele trei metode de conversie:
Metoda mpririi la baz a numerelor ntregi, cu calcule n baza veche
p (pentru conversia prii ntregi).
Metoda nmulirii cu baza a prilor fracionare, cu calcule n baza
veche p (pentru conversia prii fracionare).
Metoda substituiei, care presupune calcule n baza nou q.
4.1.3.1.

Conversia ntregilor prin mpriri successive

Ideea de baz a acestei metode de conversie pornete de la observaia c


cifra unitilor unui numr natural x scris ntr-o baz q coincide cu restul
mpririi lui x la q. Calculele care permit determinarea restului se fac n baza
veche p. Pornind de la aceast observaie, algoritmul de conversie prin
mpriri succesive const din mpriri succesive la q ale numrului x i apoi
ale cturilor succesiv obinute. Algoritmul se oprete cnd se ajunge la primul
ct egal cu zero.
Resturile mpririlor succesive, luate n ordine invers apariiei, 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 muli.
4.1.3.2.

Conversia prilor 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 prii fracionare const n nmuliri
successive cu q ale prii fracionare a numrului x i apoi ale prilor
fracionare ale produselor succesiv obinute. Algoritmul se oprete cnd se
ajunge la una din urmtoarele situaii:
partea fracionar a produsului parial este zero; n acest caz rezultatul
conversiei este un numr subunitar cu un numr finit de cifre la partea
fracionar;
partea fracionar a produsului se repet; n acest caz rezultatul
conversiei este o fracie periodic;
dac nu se ajunge la nici una dintre situaiile de mai sus, algoritmul se
oprete cnd se consider c s-au determinat suficiente cifre ale
rezultatului conversiei.
Prile ntregi ale produselor obinute prin nmuliri succesive,
considerate n ordinea apariiei lor, vor fi cifrele prii fracionare a numrului
real x n noua baz q.
Exemplul 1. Fie a=0.25(10) x=?(2).
0.25
0.50
1.00

ax2
ax2
STOP

x=0.01(2)

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


0.124
0.372
1.016
0.048
0.144
0.432

ax3
ax3
ax3
ax3
ax3
ax3

PDF created with pdfFactory trial version www.pdffactory.com

-Bazele Informaticii Economice


1. 296
0. 888
2.664

65

ax3
ax3
.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 mpriri
succesive, iar partea lui fracionar prin algoritmul de nmuliri 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 numeraie 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)=Cnpn+Cn-1pn-1++C1p+C0+C-1p-1+C-2p-2+C-mp-m
deducem c putem avea:
N(q)=Eq(Cn)(Eq(p))n+Eq(Cn-1)(Eq(p))n-1++Eq(C1)(Eq(p))+Eq(C0) +
+Eq(C-1)(Eq(p))-1 +Eq(C-2)(Eq(p))-2+... Eq(C-m)(Eq(p))-m.
Prin Eq(x) se nelege 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 exerciiu.
Exemplu. Fiind dat numrul 123 n baza 10 s se afle echivalentul lui n
baza 8 prin metoda substituiei.
N(10)=(1102+210+3)10= (1(12)2+212+3)8=(144+24+3)8=173(8).
ncheiem aceste consideraii relativ la sisteme de numeraie 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

66

-Bazele Informaticii Economice

Reprezentarea numerelor negative de o manier care s faciliteze


operaiile 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 condiiile n care, n sistemele
de calcul se pun la dispoziie pentru reprezentarea numerelor un numr
finit de poziii binare (de regul un multiplu de 8 bii), vor exista numere
reale care se reprezint n calculator prin aproximare cu un numr
raional.
Aadar, reprezentarea numerelor se face pe un numr ntreg de octei.
Reprezentarea semnului, atunci cnd este cazul, se realizeaz cu ajutorul
bitului de semn. Prin convenie, 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 fr 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 bii formeaz un octet sau byte
Aceast convenie se rezum la scrierea n baza doi a numrului ntreg
pe cei n bii afectai reprezentrii. Pe n bii se pot reprezenta numere din
intervalul [0,2n-1]. Concret, aceste intervale pentru diferite valori ale lui n sunt:
n = 8[0, 255]
n =16[0, 65535]
n situaia n care un numr binar necesit mai puin de n bii, restul
biilor (cei mai semnificativi) vor fi completai 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 existena numerelor negative. Aceste standarde asigur
simplificarea operaiilor aritmetice. Astfel, prin codurile de reprezentare pe
care le vom prezenta, se elimin operaia 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
2n-1

2n-2

2n-3

..

22

21

PDF created with pdfFactory trial version www.pdffactory.com

20

67

-Bazele Informaticii Economice

Evident, ntr-o astfel de convenie se lucreaz cu numere ntregi avnd


valoarea absolut de maximum 2n-1-1, adic un numr de forma:
0
2n-1

1
2n-2

4.2.2.1.

1
2n-3

...

1
22

1
21

1
20

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 ceilali n-1 bii servesc pentru reprezentarea valorii absolute a numrului.
Exemple.Dac x=25 atunci reprezentarea lui n cod direct pe 8 poziii
binare este:
0
27

0
26

0
25

1
24

1
23

0
22

0
21

1
20

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


1
27
4.2.2.2.

0
26

0
25

1
24

1
23

0
22

0
21

1
20

Codul invers(complement fa de 1)

Pentru numerele negative, bitul de semn este 1, ceilali n-1 bii servind
pentru reprezentarea valorii absolute negate a numrului. Negarea se realizeaz
la nivel de bit: biii 0 devin 1 i biii 1 devin 0.
Exemple.
Dac x=25 atunci reprezentarea lui n cod invers pe 8 poziii binare este:
0
27
este:
1
27

0
26

0
25

1
24

1
23

0
22

0
21

1
20

Dac x=-25 atunci reprezentarea lui n cod invers pe 8 poziii binare

1
26

1
25

0
24

0
23

1
22

1
21

PDF created with pdfFactory trial version www.pdffactory.com

0
20

68

-Bazele Informaticii Economice

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
obinut.deci complementul fa de 2 se obine din complementul fa de 1, la
care se adaug 1.
Exemple.
Dac x=25 atunci reprezentarea lui n cod complementar pe 8 poziii
binare este:
0
27

0
26

0
25

1
24

1
23

0
22

0
21

1
20

Dac x= -25 atunci reprezentarea lui n cod complementar pe 8 poziii


binare este

1
27

1
26

1
25

0
24

0
23

1
22

1
21

1
20

Codul complementar este codul cel mai utilizat n reprezentarea


numerelor algebrice n calculator.
Reamintim faptul c toate aceste coduri sunt nsoite de algoritmi care
transform, ntr-o form sau alta scderea n adunare.
De asemenea, facem observaia c, n convenie ntreag, virgula are o
poziie fix, considerndu-se c este amplasat, imaginar, dup poziia cea mai
puin semnificativ.
n mod evident, operaiile cu numere ntregi, n oricare dintre
conveniile prezentate, pot genera o serie de evenimente de excepie numite
depiri.

4.2.3.Reprezentarea n virgul flotant


Acest tip de reprezentare i propune s dea o rezolvare parial unor
probleme legate de ordinul de mrime i precizia numerelor reprezentate n
calculator. Ideea de baz a reprezentrii n virgul mobil, pornete de la
observaia c orice numr real x0 poate fi scris astfel:
x=+<Mantis>normalizat16<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

69

-Bazele Informaticii Economice

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 convenie 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

astfel:

Mantis

Caracteristic

Elementul de noutate l reprezint noiunea de caracteristic introdus

Dac e este un exponent astfel nct e [-a,a] atunci numim


caracteristic numrul c obinut prin abatere a lui e fa de a, adic:
c=e+a.
Deducem c, n aceste circumstane, c[0,2a]. Deci a fost suprimat
problema reprezentrii semnului pentru exponent.
Exigenele fa de reprezentarea n virgul mobil rmn aceleai:
s fie uor de implementat constructiv;
s fie nsoit de algoritmi performani pentru simularea operaiilor
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 dispoziie 4 octei, structurai astfel:


S
31

C=E+127
30
23

M
22

Aadar:
un bit pentru semnul mantisei;
8 bii pentru reprezentarea caracteristicii;
23 bii pentru reprezentarea mantisei.

PDF created with pdfFactory trial version www.pdffactory.com

70

-Bazele Informaticii Economice

4.2.3.2.

Reprezentarea n virgul mobil dubl precizie

Are la dispoziie 8 octei, structurai astfel:


S
63

C=E+1023
62
52

M
51

Aadar:
un bit pentru semnul mantisei;
11 bii pentru reprezentarea caracteristicii;
52 bii pentru reprezentarea mantisei.
4.2.3.3.

Reprezentarea n virgul mobil dubl precizie extins

Are la dispoziie 12 octei, structurai astfel:


S
95

C=E+16383
94
80

M
79

Aadar:
un bit pentru semnul mantisei;
15 bii pentru reprezentarea caracteristicii;
80 bii pentru reprezentarea mantisei.
4.2.3.4.

Reprezentarea n virgul mobil quadrupl precizie


Are la dispoziie 16 octei, structurai astfel:
S
127

C=E+16383
126
112

M
111

Aadar:
un bit pentru semnul mantisei;
15 bii pentru reprezentarea caracteristicii;
112 bii 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 mrime 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 funcionare 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

71

-Bazele Informaticii Economice

n general, o problem de codificare are urmtorul enun:


Dat o mulime S de simboluri, cu ajutorul crora se pot formula mesaje
inteligibile pentru o instan <Emitor>, pentru a asigura transcrierea acestor
mesaje pe nelesul unei instane <Receptor> ale crei mesaje sunt formulate
cu ajutorul unei mulimi de simboluri C. Pentru transcrierea mesajelor
formulate de <Emitor> pe nelesul instanei <Receptor> este necesar o
funcie care s codifice simbolurile din S cu ajutorul simbolurilor din C.
O astfel de funcie este n general de forma:
f :SC*(n);
unde C*(n) este o notaie pentru mulimea irurilor de simboluri din C
de lungime n. Evident, f trebuie s fie injectiv, ceea ce presupune ndeplinirea
condiiei:
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.
Aadar, ne-ar putea interesa cel mai mic n pentru care card(S)2n.
Evident n=4. Pentru n=4 am putea avea urmtoarea definiie tabelar a
lui f :
Simbol
0
1
2
3
4
5
6
7
8
9

Cod
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001

Deoarece comunicaia dintre utilizatori i sistemele de calcul are la baz


o mulime de simboluri mult mai larg, lungimea n a codurilor este, n general,
mai mare dect patru.
n comunicaia utilizator-calculator compatibil IBM-PC, de exemplu,
folosim: cifrele sistemului zecimal de numeraie, literele alfabetului latin,
semnele de punctuaie, alte simboluri indispensabile pentru comunicaia 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 bii, deci fiecare poate codifica 256
caractere.

PDF created with pdfFactory trial version www.pdffactory.com

72

-Bazele Informaticii Economice

Multe dintre sistemele de calcul actuale folosesc diferite versiuni ale


codului ASCII, care n versiune Pascal opereaz cu 256 de coduri, cu destinaii
diverse. Mediul Java, ca un alt exemplu, opereaz cu un cod mult mai larg,
numit UNICODE, pe 16 bii, (prin urmare, acest sistem de codificare poate
reprezenta 65536 caractere; primele 32768 caractere sunt deja stabilite!), care
i propune s asigure o platform de comunicaie 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 propoziii logice, crora li se asociaz una din valorile de adevr sau fals.
Necesitatea cunoaterii bazelor logice ale sistemelor de calcul vine din dou
direcii:
1. Din punct de vedere constructiv, suportul logicii este esenial pentru
sinteza dispozitivelor funcionale ale sistemului de calcul; specialitii n
proiectarea dispozitivelor funcionale ale sistemelor de calcul utilizeaz
diverse tipuri de algebre, pentru a simpilfica constructiv i complexifica
funcional circuitele logice;
2. La nivelul aplicaiilor, expresiile logice i operatorii logici sunt eseniali
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 mulimea propoziiilor logice, conforme logicii
aristotelice, ntr-un sistem formal numit (ca o recunoatere a meritelor lui)
algebr Boole sau algebra logicii.
Peste mulimea propoziiilor relative la un anumit univers, crora li se
poate asocia una din valorile 1 (adevr) sau 0 (fals), definim urmtoarele
operaii logice:
Negaia(Operatorul NOT). Se aplic unei singure propoziii. Negarea
unei propoziii p se noteaz non(p) i se definete astfel: dac p este adevrat,
atunci non(p) este fals ; dac p este fals atunci non(p) este adevrat. Tabelar
avem:
p
0
1

Non(p)
1
0

Disjuncia inclusiv sau suma logic (Operatorul OR). Se aplic la


dou propoziii p i q i se noteaz pvq (sau p+q sau pq). Se definete astfel:
pvq este adevrat dac i numai dac cel puin una din propoziiile p,q este
adevrat. Tabelar avem:

PDF created with pdfFactory trial version www.pdffactory.com

73

-Bazele Informaticii Economice


p
0
0
1
1

q
0
1
0
1

pVq
0
1
1
1

Conjuncia sau produsul logic(Operatorul AND). Se aplic la dou


propoziii p i q i se noteaz pq (sau pq sau pq ). Se definete astfel: pq
este adevrat dac i numai dac p i q sunt simultan adevrate. Tabelar
avem:
p
0
0
1
1

pq
0
0
0
1

q
0
1
0
1

Disjuncia exclusiv (Operatorul XOR). Se aplic la dou propoziii p


i q i se noteaz p q ( sau p q ). Se definete astfel: p q este adevrat
dac i numai dac p i q sunt diferite. Tabelar avem :
p
0
0
1
1

q
0
1
0
1

pq
0
1
1
0

Cunoaterea acestor operatori logici st la baza specificrii corecte a


tuturor tipurilor de enunuri care se bazeaz pe logica aristotelian (bivalent):
raionamente, specificare de algoritmi de rezolvare a unor probleme, scrierea de
programe, etc..

PDF created with pdfFactory trial version www.pdffactory.com

74

-Bazele Informaticii Economice

BIBLIOGRAFIE
1.

BOCU,
Dorin; Informatic general,
DANCIU,
Daniel; Editura Fundaiei Romnia de Mine, Bucureti,
BOCU,
Dorina; 1999
COLA, Roxana

2.

NICHI,
Gh.; Bazele prelucrrii informaiilor i tehnologie
informaional,
RACOVIEANU, D.
Editura Intelcredo, Deva, 1996

3.

KNUTH, D.E.

4.

CORMEN,
LEISERSON,
RIVEST, R.L.

5.

LIVOVSCHI,
L., Bazele informaticii. Algoritmi fundamentali,
GEORGESCU, H.
Editura Tehnic, Bucureti, 1994

6.

VASIU, C.,
VASIU, I

INTERNET ghid de navigaie,


Editura Albastr, Cluj-Napoca, 1997

7.

BULCEANU, C

REELE LOCALE DE CALCULATOARE


Arhitecturi prezente i viitoare
Editura Tehnic, Bucureti, 1995

Tratat de programarea calculatoarelor,


Editura Tehnic, Bucureti,
vol. I, 1974, vol.III, 1976, vol.II, 1981
T.H., Introducere n algoritmi,
C.E., Editura Computer Libris Agora,
Cluj-Napoca, 2000

PDF created with pdfFactory trial version www.pdffactory.com

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