Documente Academic
Documente Profesional
Documente Cultură
INTRSDUCERE
ll*t
INFSRIIfiAT ICA
di* F3+i**ti
recomanddri bibliografice
CUPRINS
vin in
incheiem prin
autorilor
in
fundamentale
predarea
INTRODUCERE...........
la baz6 experien{a
pe o perioadd de mai mulli ani a unor discipline
spune cd materialul prezentat are
in Informatici
Concepte debazdale
la
informaticii.......'..."..,...
Arhitectura calculatoarelor
speciaiizdrile cu profil
Sisteme de operare.
................7
........'..........
Noliuni
debazi
"""""""'8
"""""""""""'
14
"""""""""""""30
Autorii
Eir:,?ilTHH:*:1i
Tl1l::)l*:::Y::*':::
numera!ie.....
Reprezentarea informafiei in calculator.
Baze de
l,
::,,
"""""""""""""'40
""""""""""'49
calculatorul...'..'...'.""""
""""""62
elementare
"""""""""""""66
date.....'...
Algoritmi - caracteristici 9i descriere
"""""""""""""69
ElBt,loGRAFIE..............
""""""""""""77
""""'99
1.
lntroducere
Lucrare de verificare
Rezumat
Rec
lului
iij j}i
:i
k.
I
rrl,nrr I uco
ro in informatic[
1.
Introducere
sau
vehiculatd [1].
fi
ar
valoarea 3, care este o datb memoratd in calculator, poate rcprezenta intr-un caz
informa{ie este
dat6, cdreia
ou
denumirea de PCl-uri)
calculator face parte dintr-o relea, acesta se numegte statie de lucru sau server dc
retea, dup6 rolul pe care
cngl, Pcrron
al Contpulcrs
in
tip continuu;
se
de
din
ceea ce se numeqte
informaticd aplicatd.
lSRt ur
fi
desemneazd in
Introducere in informaticl
L. Introducere
bazd
Arhitectura calculatoarelor
calculatorur, ca sistem fizic destinat imprement,rii
gi prerucrdrii automate a
unor modele logico-matematice are
labazdtrei tipuri de resurse
[2]:
.
.
'
care iau
in
o serie de criterii
O frrt de autoevalaare
sale
de
rcprezentatd
de sistemul de
calcul
La modul cel mai general, un sistem de calcul von Neumann are la bazd
urm[toarele unitali funclionale [2]:
mediu de intrare
mediu de iegire
memorie
ansamblu de prelucrare
unitate de execufie;
(ucc).
Unitatea de iesire (UE) preia sub controlul unitalii UCC informafia din
'sistemc care imit6 modul dr rrfilanrmrnt
rlrxp4llel
umrnl
Introducere in informaticd
1.
transferate
acestora.
unitatea aritmeticd
si
si logicd (uAL)
(ucc).
Aceasta,
lnstrucliune.
ucc,
adrese.
Introducere
ucc,
impreun6 cu
de
de
in mod
convenlional cu
oxemple de elemente cu dou6 stdri stabile enumerdm: perechile de stdri perforatneperforat, stins-aprins, magnetizat-rtemagnetizat, perechea de tensiuni (0V, 5V)
a unui
succesiune de
bi]i
(sau
bili consecutivi
se
pot reprezenta
fi
reprezentatd qi
Bitul rcprezintd
O succesiune de 8 bili formeazd un octet (sau byte). Acesta este cea mai
Datele in forma lor primari (neprelucratI) prccum gi programul sunt preluate r:u
mn&td ds roprozentarc
ai
se folosegte litera B.
-q'qIF
.=IlqEF:
1, Introducere
Introducere in informatic[
fotmeazd pe o configuralie de m
1 Mega byte
(MB)
lO24 bytes
(210
un spa{iu de adresare in
1 Tera
bYte (TB)
lO24 GB
1 Peta
bYte (PB)
LO}4TB
(EB)
Zettabfie
se poate explora
bili,
se
themorie de 2"'cuvinte.
bytes)
1 Exa byte
Mega,
(ZB):
(240
(250
bytes)
bytes)
lO24 ZB
(280
uniti{ii
de memorie.
bytes)
Dupd persistenla datelor in memorie, aceasta se clasificd in memorie RAM
;l
si
1 Giga
g;te
se foloseascf, multi
Memoria ROM6,
rnemorie
(l0e bps)
I MB
fapt care imprimi acestor operalii o vitezd mai redusd decdt in cazul
in
memoriei principale.
Access
-:
lFr
Introduoora ln lnformatle6
1.
in
sau a
in
in
1:
on-chip
a accelera
accesul
2:
procesorului la informalii gi
Principiul
magnetic
magnetic
Medii de stocare
9i
Introducere
de memorare
electric
discurile optice
qi
discurile magneto-
optic, magneto-optic
optice
benzile magnetice
magnetic
memoriile holografice
optic-holografic
memoriile moleculare
electro-biologic
clatelor, unde suprafala magneticb dispusd pe nigte platane rotunde metalice dure
este aceea care stocheazd informalia. Datele sunt citite/scrise prin deplasarea unui
este
de2-4T8.
in
datelor.
memoriilor
' I mE -
provine de la fbptul
lO't acoundr
flash,
in
cazul
al c6ror
nume
gtergerea se realizeazl
Inuoducara
-lt
fn$hrm atic[
mciloulltor
Exemplu:
lygglgu.}= 78'ED,6
o
r
o
Observalie. Procedeele
de
9i
spre st6nga;
binar-hexazecimal) se fac mecanic, fErd calcule, qi din acest motiv sunt foarte
rapide. O altd raliune pentru care sunt preferate bazele 8 qi 16 bazei2 rezultd din
aspectul evident
greu de manipulat.
Exemplu:
1 111 101.011 101-12
y,2\--/t-J
\-rvl-,
Co nv er sia
775.3748
binar-hexazecim al
Prezentdm mai
hexazecimale
in
Tabelul2.3. Regulile
binar,
10
1+1).
inbaza2
numite tetrade.
hexazecimal binar
0000
0
0001
1
0010
2
0011
3
4
0100
0101
5
0110
6
0111
7
1000
8
hexazecimal
9
A
B
c
D
E
F
binar
1001
1010
1011
i100
1101
1110
1111
in
baza
(Tabelul2.4):
0
1
2
J
4
5
6
7
- -.airriel-ra@-..
0123456
1,234567
23456710
3 4 s 6 7 l0 1l
4 s 6 7 101112
56710111213
671011121314
7101112137415
7
10
11
12
13
1,4
15
t6
-.
Cltrtto a, b, c,
<-a+b+c+d
Scrte s
s
Stsop
in mod
Dacd n are valoare mare (de exemplu 100), merg6nd pe aceeaqi idee, ar
trebui sd avern 100 de variabile gi sd le prelucrdm conform algoritmului de mai
sus. Evident, acest lucru este de neimaginat. Solu{ia practich este a folosi
de variabile indexate,
x;,
i=l,n
gi de a calcula
ru*u f x;
n:
natural, listele
de obiecte se pot
fi memoratl in vectorul
{lonescu'
p ersodfiei
100
persoane
Georsescu I Vasilescu
Ionescu
folosind o structurS
i=1
iterativi de control.
list[
sunt mgrilOffE
memofall6ldffffh
vecine 2 9i 3).
rVfn[fUt
Aceast6 variantd de implementare a listelor (numit[ statiot) 66
presupunem cd pentru fiecare persoanl a unui colectiv ne intereseazd datele:
pltloultrtr
unei parcurgeri rapide in ambele sensuri, in orice punct ne-am afle,
cl
apare la eliminarea sau inserlia unui element nou in list[, ProfuPUnlnd
nume (tip alfanumeric), vdrst6 (tip intreg), salariu (tip real), sex (tip boolean).
vectorul
Info -
ca in
.2):
nume
vdrstd salariu
Ionescu
32
2 633
sex
care se
memorea
zd lista are o
d0 fiaro'
dimensiunc sUfiaiqll
dcplasarca
introducerea persoanei 'Marinescu' in listS pe pozilia a doua implio[
pozitie
0U o
subgirului 'Popescu', 'Georgescu', 'Vasilescu' 9i toate care Ufmeaz6
spre dreapta conform schilei din Figura 3'3'
in
Ionescu
1P.-=--.---..- "'
Popescu
Jceorgescu I 'vastlescu
pe rsoane
:
I
pe poziliaa doua
nume_variabila.nume_camp
De exemplu , info.nume se referd la girul 'lonescu', nume.vdrsta la valoarea
32 gi aga mai departe.
se eliminl
Deplasdri, dar de data aceasta spre stdnga, au loc qi atunci c6nd
elemente
persoanei
scoaterea
[71]
11.
12.
13.
14.
Editura
1.
Introducere in informatic6
in
1949 profesorul
M. Wilkes de la
qi
in
Introducere
il
de-a3'a
Itnera{ii amintim:
stocat intr-o memorie cu intdrziere care are la bazd principiile savantului John
in etape de evolulie
numele de generafii
(aproxirnative
de calculatoare.
Prezent6m
in
cunoscute sub
Generalia 3.5
I de calculatoare
calculatoare sunt:
elrouit integrat.
tehnologia
cu
operalii/secundi);
in limbaje de asamblare.
tranzistoare
qi diode
semiconductoare.
apar
Si foarte larg6
pe
se
in raport cu costul
datorat
gi se bazeazd pe
sebazeaza pe tehnologia
(Vl,Sl
fiPLll,
(limbajul C).
principale [2].
Generalia
continuare limitele
permis
Introducere in informaticl
1.
informafiei,
algoritmilor.
in principar pe
Introducere
in
1890
reduce
Machine
in
I,
cercetdtori ai istoriei
;l
de asistentul
in structura
sa aproapc
era
.-.'#
_iq:!EEE-.
Introducere in informatlol
1, Introducere
mobile
Clapacitatea,
DL
funclionare
lx
lx
este de
150 kB/g,
(sub forma 10x, 14x etc.), care in cazul discurilor de tip CD-ROM
de
otlchetat DS (Double Side) arc doud fele utile, unul SL (Single Layer) un
de
creqterea intervalului
utile qi numdrul
pe ftecare faf[. Un disc etichetat SS (,Slngle Side) are o singurd fa{6 uti15,
timp
de
Disc, UDO.
Discurile rewritable(reinregistrabile):
o
o
do
GB
discuri do
hohtgrotice,
in schimb,
ttt npn manierd incdt o aceeagi zond poate inregistra mii de holograme
(de
fopt cnlc conduce la rate do transfor mai mari decdt in cazul memoriilor obignuite
f
0f
64Ere=
Introducero in informatlel
=qFF.
1.
IDEro,
numitl nrai t6rziu ATArr gi apoi PATA @aratlel ATA) pentru
a o distinge de SATA (serial ATA): arc o ldlime de 16
cm,
bili
qi permite
de
dispozitive de stocare de pAnd la 8.4 GB (Fast ATA sau Fast IDE sau
s71,
Introducere
de dispozitive
in
timpul operirii.
de
asigur[
gi ofer6 o l[fimc
do
Unitate de stocare
HD (Harddisk)
CD-ROM
CD-ROM Drive
SASrs,
gi
\ Eru..rafi principalele
tn
tt lilvanced
Technologt Attachment
t'
tt
c"
tt
q-=-
IntrodUfrffilFffifilcl
Rearnintim
c[
la
magistraleror
de date gi
deoarece
O solulie alternativ6 o
de
lui
1970.
un singur procesor
care
gEleulatorului paralel.
pml8).
ordinul rnilimetrilor.
1. Introducere
calculator serial?
foolaqi
tip,
interconectate
coordonarea
aotivitalilor lor qi schimbul de date. Distan{ele dintre procesoare sunt reduse, iar
tntreg ansamblul oblinut contribuie la rezolvarea unor probleme de regul[ dificile
fi
c[, in
acest caz,
ln ciuda
acestei realitdli,
frcnctrarea lor pe piaja calculatoarelor este destul de slabi. Cauza principalS este
de l0ro
l,Million
t7
second
fi
executat
pc
.,,''OO;HFFffi
l,
Introducere
fi:
la
frecare unitate de
puline;
l8l:
calculatoarele paralele
isi
in
rezolvarea
problemelor care necesitd solulii rapide sau sunt de dimensiuni mari. IatI cateva
- un singur set de
zdcdmintelor
de petrol), probleme
de
\nali
\Cur"
\Motivati de ce, in
clasificarea sistemelor paralele se poate face dup[ mai multe criterii cum
ar fi: num[ru] de procesoare, viteza de lucru a prooc8oarolor, mecanismul de
de
\C"
fnn
de autoevaluare
funclionirii calculatoarelor
: fnlrFrnrtlc[
lntroduo.rt
lntrooucr
1.4. Ce
in
care
paralele.
iqi
interfa!6 de
in
gi
gi
jos (Figura
1.2).
sunt:
programe de servicii.
suPervizorul;
Sarcinile
un sistem
calculator
tip linie
acesteia intr-o
comenzi prin scrierea numelui comenzii qi eventual a atributelor
in schimb,
fereastra special conceputf, pentru acest lucru. o interfala gtafrcd,
up
emizorul
ui
in
Rutinele debazd sau frecvent folosite ale supervizorului sunt rezidente
memoria
memoria internS. celelalte sunt tranziente, adic6 sunt stocate in
auxiliar[ gi inc[rcate la nevoie in memoria internd'
al
sistemut de gestiune a intrdrilor/iesirilor coordoneazl modul de afectare
9i
1,
Introducoro
incdrcdtoare;
editoare de text;
programe utilitare;
progmme bibliotecar;
comunicare om - calculator.
Existd patru tipuri de sisteme de operare [9]:
i,
gibaze de date.
secvenliale;
cu multiprogramare;
cu prelucrare multipld;
in timp real.
sistemele
de operarc
qi
dispozi{ia utilizatorului mijtoace prin care sd poatd crea, stoca, prelucra, regdsi
se
execuliei programului
Pl,
se
sortare
lor
fi inclrcatc mai
acest scop, in
Prioritili etc';
Prezentam mai jos lista funcfiilor debazdale unui sistem de operare [9]:
acest motiv
concurentS) este, evident, mai eficient din punr.:t do vetlare El grudului de utilizare
perceplia
accesului
ln plur ln
egCfle
ll;llri de sisteme
de
Int**ff0#l#ffiior
fntroduccre
(multitasking).
se numegte
asamblor.
linie cu linie programul. Dac[ linia de program analizatd este corectd din punct
linii.
programului.
La compilator
execufia se face
fi
in
cod-ma;in6.
este urmbtorul.
Se analizeazS sintactic
analiza
la
linii de program
fost
este urmatd
rezultate pot
in
separat la nevoie.
BT inseamnS un numdr de module obiect fird leg6turd intre ele. Programul care
'l,
Introduccrc ln lnformatlcl
Introducere
Ll0.
rrndeautoevaluare
1.8. Care sunt cele doud categorii deprograme care alcdtuiesc un sistem de
IMT la o
adresb
operare?
1.9. Care sunt sarcinile supervizorului?
1.10. Enumerali
Lucrare de verijicare
1.11. care sunt fazele de execu{ie ale unui program translatat prin
compilare?
Rezumut
Calculatoarele sunt sisteme ftzice care prelucreazl, date pentru
Rdsp uns
1.1. Informalie
datd + semnificatie.
rezultate
a furniza
semnale destinate
1.2.b, c
1.3. a, b, c
MIMD.
.l .7
. 7A0 MB
in
executarea sarcinilor
gi
asist6 programele de
meteorologicd etc.).
9i
700
1024
sd
utilizatorului mijloace
se
(l)
(sistem de calcul monoprocesor sau maginl do caleul von Noumann) gi (2) cea
vederea
a mai multor
procesoare ln
=''ulFF
lntroducerc ln lnformatlol
le
2. Baze de numeratie.
fi reprezentata
Reprezentarea informafiei
in calculator
9i preluctatd de
calculator este bit-ul (o valoare binari asociati unui bistabil). Un grup de opt bili,
numit octet sau byte, este cea mai mic6 unitate de date adresabild, iar
reprezentarca in mernorie a informaliei se realizeazd de reguldla nivel de cuvdnt
(care este un grup de2,3 sau 4 octeli consecutivi).
Re c o man d dr i b ib
lio gr aft c e
Baze de numerafie
Test de autoevaluare
Reprezentarea informafiei in calculator
Test de autoevaluare
Lucrare de verificare
Pedagogica,
Rezumat
Bucuregti, 1981.
2. J. Glenn
Re c om anddr
ib li o graJic e
1998.
In'ffifuccra tn informatlct
l ln oalculaior
Baze de numerafie
C onversia
poate
fi
in baza de numerafie q sunt 0, l, 2, ..., q-1. Baza 70 este evident cea mai
cunoscuti bazd qi are cifrele 0, 1,2,3,4,5,6,7,8,9. Datorit6 utilizdrii
bistabililor in construclia memoriei calculatoarelor, in informaticd se :utilizeazd
reprezentarea numerelor
Rezultatele oblinute
in baza 2
in analiza
nuftrerelor tntregl
N, = a, an-r ar-z.,,o,
se
oo
,
sub forma
Nro = an
1.0
q"''
"'+ atq +
ao '
l,
Exemple:
2, 3, 4, 5, 6, 7, 8, g,
1000112
A, B, C, D, E, F}.
Exomple:
lnbaza2:
llDl.ll,
111001.11, 110101
in alta este
continuare
ql
+"'+atq+ao,
(1)
Sarcina algoritmului
an, a,,-1, a,-27...1as
l0 in baza oarecare
Nto=arqn ldn-rq''t
a,
q in baza l0 se face
, = a,
a n_r
...alao
+=
dn
Qn-t
*an-rQ'-r*,,,*
n,
*?,
In
troduili['in
ln calculator
inform a tice
iar
0 < ao <
a, Q'-t *
on-r
g"-' +...+ al
ao
este
deoarece
l/,f) li
N{p
se
qi
302q0 =8D4rc.
oblinem
rr(o)
a:
aq'-q Q'-'
= an
Conversia pdrlii intregi a unui numbr real se face dupd algoritmii prezcntati
nnterior.
l)artea fraclionard
se scrie:
in general, obfinem in ordine cifrele ao, at , a2, ..., a, pentru fiecare pas I
aplicat rela{iei
;rr(i-t)
Conversia
tlli,
*?,
oarecare
a,
aqadar
l0
in
sa
baz|
oarooarg
tn bfEf
polinomiald, adicl:
3st2
34 17
@ro
Exemple:
+Ox2-2 +lx2-3
0.10112
=lx}-t
0.A5ru=
Axl6-t +5x16-2
+lx}a
=0.687510
=0.64453rc
l0
intr-o
bazd oarecare q
-@-o
o-
F$inbazaq
se porneqte de
la dezvoltarea
sa
polinomialS, adic6:
= a-tQ-t
"'
(2)
sl ln caloulator
qi deci
a-, =lqx
cifra
{o]
unde
a-2 se obtine
Fto = a_t
pri, k]
t254.2968.
se opregte.
?ntreg astfer
in caz conlrar
octal
0
1
2
3
4
5
6
7
Exemple:
16.
0.31248x16=5
Se ob{ine
rezultatul
:+
at=A
e_z=5
O.ASrc.
binar
000
001
010
011
100
101
110
triade
lll
x4=2.8
=
0.8x4=3.2
=
0.2x4=0.8
=
a_r
=Z
d_z
=3
a:=0
gibazaZ
- octal
bazele 81 16
Fr,orrf,
Conversia binar
4["
rapidlintre
Procedee de conversie
+ a-,,Q-"'*'+...
unde
algoritmul
qi
0.8x4=3.2 :+
0.2x4=0.8
a_q
=3
Exemplu:
a_s
=0
4
7
cu
cu
cu
cu
mixt[ 0.2(30)a.
I
Se
100
lll
011
110
lrl E'I[JIrIIIOT
I
2
J
4
5
O frrtde
000
012
024
036
0410
0s12
0614
0716
00000
34567
610121416
lt 14 t7 22 25
t4 20 24 30 34
t7 24 31 36 43
22 30 36 44
25 34 43 52
52
6t
autoevuluare
'
(cod invers);
in
l0?
10.01112,
reprezentarea
extremitatea
dacd numdrul este pozitiv, bitul de semn trebuie str aib6 valoarea 0;
l.
6
-6
l0l
l1001.10102.
-+
-+
0000 0tt0
1000 0110
+0 -+ 0000 0000
-0 -+ 1000 0000
Acest lucru creeazd probleme in realizarea circuitelor electronice
pentru adunare.
t48l
bilii
t4o'l
6 -+ 00000110
-6 -> 1111 10 01
Seobservdc6
I t I I I I l0
configuralie de 8 bi[i,
Observalie.
$i in
acest
0 00 00100
1 11 11011
(+4)
+c4)
fi
1111111
reprezentat
tot in cod invers. Dacd apare transport in stAnga rangului de semn aceasta se va
aduna la rangul cel mai pulin semnificativ (cel mai din dreapta) al rezultatului'
00000
000
11111
111
qi
Exemple:
6,n =
0000 0110,
5,0=0000
0101,
e6toroproz6lttaronoll'roilincodinvosrspst
se efectueazdastfel:
sd
scriem, de QXgmBlU,
in cod direct
5 +(10
in cod direct
-3)-10
= 5 +7
in cod invers
scazitorului, adic[
se adunS la descazut complementul fa!6 de 10 al
sefaceoPeralia5+7:I2
(+6)
+(-s)
1
0 0000110
+1 1111010
10 0 0 0 00 0 0
in binql sd fie
Acest exemplu sugereazd ideea ca un numlr negativ
Complsmentul
reprezentat in cod complement fald de 2 (cort complementay''
+4
I
0 0 0 0 00 0
1
(+6)
+(-7)
-1
0 0000 110
+1 l l ll000
ll11110
ultimul
se determin6 complementul
se adund valoarea
faf[ dc I al num[rului;
-ruF
Observalie. Folosind acest cod, zeto arc o unic[ reprczontaro.
snu, corespunz[tor
in baaa
10,
Exemplu:
7 are valoarca
7
0000
0l I 1 inbinar
1111 1000
Se observd
(+7)
0000111
+l 1111001
i0 0 0 0 0 0 00
c[
N,o
7.9375
in cazul folosirii
virgulelor fixe este extrem de redus6. Din acest motiv folosirea virguloi fixo ln
1111 1001
+(-7)
-8.9315
4
Reprezentarea tn virguld mobild
se neglijeazd
in
Se constatd unicitatea reprezentdrii pentru zero.
reprezentarea
&=
4
a
in virguld mobilS
se porneqte de la un
poate
fi
rozultrt mrtamrtlo
reprezental
in virguld.frxd;
in virguld mobilS.
De exemplu, num[rul
a =1423.208 in baza l0
mobilS narmalizatd:
a = 0.1423208
acest
subunitard are pozi{ie fix6. De exemplu, dacd intr-o reprezentare pe 8 bi!i, virgula
este plasatd dupd
x 104
in
Condilia ll q <l al
reprezenthrii . Pentru
0000.0000<
N,
<III
Ll 1 I I
a =0.1423208
'
unicit[fii
o infinitate de reprezentdri
_:
.r..
nedorit se poate contracara prin utilizaroa unor metode numerice speciale, s41s
inhibd propagarea erorilor.
C"
2)
Reprezentarea
4)
xl}a
0.l2l6x l0a
0.l37l
x 103
in exemplul 2)
in exemprul 3)
nu
I CaracteristicA
(c)
Fraclie (fl
S=
I cdnd numdrul
Caracteristica
ocuph 8 biti
(bitii
se pierde urtima
cifr,
a numdrului
r.2164
din cauza
c=e+127.
Folosirea acestei formule permite economisirea unui bit care ar
pentru memorarea semnului exponentului. Zona de 8
in exemprul
4)
operaliei de normalizare.
big tl
23
,S
se
24
31
-72
Se constatd urmdtoarele:
l)
^S
in exemplul
are strucfura:
in
3)
se inlelege
96
pot propaga, iar cfcctul osto obfinorca unul rozultat afootat de erori. Acest elss1
reprezentarea
1)
srls(tletor
se pierd urtirnere
0<c<
lttl
28
-l=255
bili
fi
necgg6l
destinatd caracteristicii
==:[;le
Din acost motlv, valorile minime gi maximc alo oxponcntului sunt _127
si
respectiv 128.
!i
ffi'$-
Cu alte cuvinte:
dacf,
e>0;
rlecesare
2" conftgrra{ii
proprietatea
bili
gi
binare unde
fi
^t
I Caracteristicd (c)
caracterelor alfanurrerice,
in
calculatoarele
52
Fraclie (fl
28
53
de 30 de
Convenfia de reprezentare
63
semne poate
are strucfura:
64
bili
Information
0-31:
32
127:
semnelor speciale
c = e +1023
I28
- 255:
0<c<2tt-l=2047.
valorile minime qi maxime ale exponentului sunt
-1023 gi 1024, ceea ce
arutd o putere de reprezentare deosebit de mare in cazul folosirii virgulei
mobile
in dubl[ precizie.
-w
O fot de auroevaluare
t03,0.446
lO-2
2.8.b
a caracterelor alfanumerice.
simplE precizie?
a)
64
Lucrare de verijicare
63
32
3l
Rezamat
Construclia memoriei calculatoarelor fiind bazatd pe utilizarea elemontelgf
cu dou[ stdri stabile, informafia numeric6 se reprezintd inbaza 2 sau in bazc
c)
64
63
sunt puteri ale acesteia (baza 8 gibaza 16). Pe de altd parte, valorile numerioe
le
pl
gtFt
alfanumerice.
ll7, 19.
0.9 062
2.5, 671.50.
I (cod invers);
virgul[ flx6
sau
in virguld
mobil6. in cazul folosirii virgulei fixe puterea de reprezentare cste foarte redus6,
spre deosebirc de caztl folosirii virgulei mobile, bazate pe exprimarea numerelor
(reale) in virguld rnobild normalizatd.
3. RezolvareaProblemelor
cu calculatorul
in virguld mobilE poate fi: reprezentare in virguld mobil[ simpld precizie (pe 32
de
1.
iblio graft c e
2.
Lucrare de verificare
Rezumat
Rec omanddr
i biblio grafi c e
o
o
cunoa$terea etapelelor
cu calculatorul
rezolvlrii problemelor
cunoa$terea
celor
problemelor
_-
in prima
gi
experien!6. Evident,
problemelor de rezolvat,
in-
in timp,
obline eficien{d
in
este abordatd
O listd a
reztitate bune. Evident, etapele pe care le enumerdm mai jos trebuie privite mai
degrabd ca un ghid,
in sensul
cd parcurgerea
analiza problemei;
descriereaalgoritmului;
testareaprogramului;
in
vedere stabilirea
Etapa de proiectare
etap6,,
a algoritmului
s[ Ie execute un
calculator pentru
rezolva problema.
ln
cazul problemOlOf
fi rezolvate mai uqor. Aceastd tehnic6, numitS top-down (de sus in jos) va ave1 AO
efect final oblinerea unui sistem de module conectate intre ele dupd logiOi
impusd de rezolvarea problemei. Practic, intr-o prim6 fazd se ob{ine
o schifl
in subprobleme ptezint[
fi rezolvate simultan de
gi
Pe m[sur6 ce cregte complexitatea problemelor de rezolvat, creqte
dificultatea de a descrie algoritmii cAt mai exact, fird ambiguitdli, utilizdnd rra
limbaj natural. Din acest motiv s-au imaginat diferite forme de descriofe
(diagramd de structurd, scheme logice, pseudocodetc.) care, pe de o patte petrOit
reprezentalea corectl a algoritmilor intr-o manierd prietenoasi, naturald, iat pe
acestora intr-un
de
limbaj de
programare.
at un caracter
universal, totrr0i
anumite trdslturi ale problemei de rezolvat pot recoman da utilizarea unui anurrrit
intretinereaprogramului.
Pentru probleme
ln
fi
vtc'
-:':-
'
se
rt,5 ou
oalcula[orur
O rnetod[ rapid[ constE ln afigarca unor mcsajc din loc ln loc, prin analiza
stabili zona unde se afl6 eroarea. Mediile moderne de programare
va alege un limbaj orientat pe aceste probleme (Cobol, dBase, FoxPro etc.), Dacd
clrora
problema necesitd prelucrdri ale unor baze de cunogtin{e se pot folosi limbaje
fi:
facilit{i
liniilor
se poate
fi cxccutat,
corespunzdtoare.
in mod
fi
rulate (oxooutfh)
lr
din unul sau mai multe programe trebuie privitd qi ca un produs ouo
in modificdri ale programelor ori de ctte ori este nevoie, realizato toomai ln
liniilor
progrumUlUl
OOnlttr
din activit[file care pun tn lumin6, in cel mai inalt grad, importanfa
adoptarii unui stil bun de programare. Este evident cI aceste activit[ti vor ft
doud
comentariilor etc.
luforl ln
nu sunt suficient
pot
fi
mici, metoda uzualE este mctoda datclor de test. Datele de test trebuie alese cu
se
Care
sunt
Tipuri
in
Operafiile folosito
gi
obiectele pe care
programare.
elementare
fals.
tipui: date
fi de doud
valoarea f
date numerice;
date alfanumerice.
0
0
aSIb
aSAUb
0
0
0
1
Datele numerice pot fi intregi sau reale, iar in unele limbaje (de exemplu in
'
or 'PloieSti'
Si
9569 ,
+311) sau in alte baze de numera{ie (de exemplu in sistemul hexazecimal: AD4,
6E3C etc.).
in
in timpul execu{iei
algoritmului. De exempbt, 6.29 este o constant6 real[. O variabild i;i poate
este reprezentatd
sau
e+
0.52 E +
02,
au
3.25e
semnificafia
- 07
de 10t6. De
se
a SAU exclusiv b
date logice;
NUa
I
qi cu 0
adevarat
aIs,
elementare
ln
exemplu,
in
fi
clasiftcato
ln varldblle statice
Si variabile
so asociazl adresa
:..
Structuri de date
Prin atribuirea
<-7
x Ya avea
.-an
Unei variabile dinamice
algoritm diferite adrese. O
nesatisfdcdtoare. De foarte multe ori, este preferabil sau chiar imperios necesar ca
7
datele
cornplexe.
liniard simplu inldnfuitS, lista liniar[ dublu inl6n[uit5, stiva, coada, arborele
gi
gratul [12].
Tabloul reprezintd o colecfie omogend de date (de acelaqi tip, numit tip de
in cazul static
leg[turd
staticd
in
- adres[ celuld)
btlllz). Numerele 3, 1
de
desemneazd,
3-a
1 gi 2 se
, ----D
';l---t
a-
'r[-l
Datele avute
in
tablourilor a qi
valide
l<i<3,1<J's4
senumesc variabile
importantd
O rntt de autoevaluare
3. I .
Ai
t6il
t691
-,F: ,;*(
Ionoscu
(figura 3.7).
fl
in figura
ln
g.
list6.
I Georgescu |
-l-->fvasi"*,
In
extrageri este nevoie sd se qtie pozi[iaultimului element inserat din stiv6. Aceasta
este memoratd
172)
I73I
se
-= tI,
3,ll) ilusfosz[
Specializarea Matematicd
==
Figura 3.9. Ilustrarea grafici a stivei - implementare
staticd gi dinamicd
Coada este lista
se face pe la un cap,
iar extragerea elementelor pe la cel[lalt cap. Disciplina specificd unei cozi este
out:
7V
prim
zf-[l
ultim
pnm
OU Un
arbore intors, nodurile Grupal, Gnrya2 etc. se numesc frunze (sau nodutl
ultim
terminale).
Figura 3.10. Ilustrarea grafrcd a cozii - implementare staticd qi dinamicI
adaugdun element.
\
\
grafarile. Un graf foarte cunoscut este releaua de c[i ferate descrisi in mersul
tremnilor. in acest caz, obiectele (nodurile) sunt staliile de cale ferat6, iar
muchiile grafului sunt reprezentdrile cdilor ferate care leagd stafiile. Alte exemple
Deoarece foarte multe probleme se refer6 la obiecte aflate intr-o relafie de
ordin ierarhic (piramidal), structura adecvat6 pentru descrierea acestor relalii este
Fri.
se
a,ryr__+a-il-)
---t--
,---^--
@/@
34
static
cdt
gi dinamic. in
urmltoare:
O r"rt de autoevaluare
3.3. Care este deosebirea dintre datele elementare qi datele structurate
(structurile de date)?
3.4. Care sunt principalele structuri de date utilizate in algoritmi?
,nli_
il=/O,daca
L) r l
gi
gtiinlei
.:
de dato de intraro, numit domeniul de de/tnllla al algoritmului osto transformat
[il].
generalitate
date de intrare;
Se observd
neumbiguitate
deoarece
fi
in
ordine
acfiune
imposibi16.
timp
ca o
OftC
concret;
fi reprezentat
cI
Dali
cdtevaexemple.
necondilionat.
qi Jacopini
llrl
fumizeazd,
,t
Bloc terminal
Bloc de
intrare
ieqire
Bloc de calcul
,n..
Bloc de decizie
Bloc conector
----->
Sdgeatd
1)V
/\
-:iF#
gradul
in
b, iar
rimbaj naturar, descrierca rezolvdrii ecua{iei
de
dacf, a
o
o
* 0 afitnci ecuafia
dacd,
b:0
ecua{ia devine
nedeterminatl;
dacd'
*0
do intrarc sunt a qi
ecua{ia devine
x:
- bra
Nu
x
este
/
,x+b= 0
<--bla
Scrie x
Scrie
imposibild.
Se observ, cd, degi exemplul este
destul de simplu, descrierea
natural este rerativ greoaie. o descriere
simpr' gi clar6 este realizatd
3.15 cu ajutorul schemei logice.
" 3cuatie
nedeter ninatE'
/ /
/ /
Scrio"Ecutfle
imposibill"
in limbaj
in figura
Citegte a, b
Dacia#Oatunci
x <- -b/a
Scrie x
Altfe1
;Dacib=0atunci
Scrie '.Ecua f.ie nedetermlna td,,
II eLtter
Scrie .,Ecua lie inposibild*
I
H
I
Stop
a eeuatlol de grod I
scrierea,
rffi
ou oaloulatorul
SECVENTA
scrise.
:x + r
este
Citeste a,b
rDac5. a>b atunci
-* <-,
IL or.t"r
L---tr max<-D
Scrie max
Citegte x
e<-x+1_
Scrie e
Stop
Stop
DECIZIA
Decizia are urmitoarele reprezentrri in pseudocod gi schemd
logic5 (Figura
3.1
6):
conditie
secven!,a1
fI
se evalueazd
dac6
qi schemd
ln
conditle executi
."cventa
Cats tsimp
eonditie;
conditie
in
caz
Figura13.l8. Descrierea in pseudocod qi schemE logicd a iteraliei cu test inifial
','
timp
condltla
osto
tndeplinit[.
Observafii:
. secventa trebuie sd
xe7
lCtE tlmp x>6 executi
y<-x
I
ln
I
9Eop
Sc observtr
y <- x
se
condifia
x>7 va fi
va executa de o infinitate de
ori.
inilial
Pentru a uqura implementarea qi a spori r;laritatea programelor, majoritatea
s+-0
Citegte x
rcat timp -rc*0 executl
I
IL-J
ScrLc
e.s+.r
"itestc
Astfel,
generulizatd
in
(s
au
ecfi a).
StoXr
.r8ai,
t85l
9i
decizia
0ucaloulatoful.+-|q%
Declzla cu ramurd vldd ue fonna general[
(Flgura 3.lg):
conditie atunci
secverrta
IJ-DacE
secvental
rn
I
secventan+l
expresie dintre
Cr: SeCvental
Cz: Secventa2
A1-ege
exprest-e
C,: secventa.
Al-tfel secventar*1
Figura 3.19. Descrierea in pseudocod gi
scheml logicd
secventa2
adevEratl.
deciziei generalizate
cu ramurd vidd.
Citegte a,b
mx +- a
a<b atuncj.
;Daci
max<-b
se evalueazd
secventai
In
Scrie max
St,op
expresie;
= ci
S executl
+ ci se executd
Obs
ou
Clteste x
dintre
'r', 'At: scrie
|
'""
scrie
|
'n'"'a':
scrie
| Altfe1:
Scrie (,Ati
Iln
oaloulAtotEl=sl%
Observallo, Blturlla dsasrla6 ln aohema loglc[ ele mai sus se refer[ la cazul
;----Alege x
'Ana')
'EIena')
'Mona, Nae,
v; S vTgi
Oana,
tastat gresit,
de test se schirnbd in v 2
v7.
Stop
timp
r6mdn valabile
gi aici.
Citegte
s
<-0
i<-1, n executi
-Pentru
Citegte
x
I
L<-,s+x
ln
Scrie
Stop
Itera(ia cu contor este un caz particurar al iterafiei cu
test inifial. Rorul
central il ocup[ aici o variabild speciald, numitr variabird
contor,
care poate
fi
l,
RepetE
secventa
In
I
Observalii:
v+-y+r
Figura 3.21. Descrierea in pseudocod gi schemd logic[
iterafiei cu contor
Fals pentru
finit
conditie.
_.'!=*-.F
cu
calculltortff?*E+
real citit de la
tastaturd.
Repetd
v<-J;
Citegte x
Cat Timp ,<0
Scrie y
corpul procedurii
Sfirqit
Stop
Proceduri 9i funcfii
Sunt frecvente cazurile
in
care
pe
Precizdri:
cuvintele Procedura $i
. numejrocedura
gi sotvf;ts h
r ]isra_dejarameLri
sferFit
flotlvl rl
Algoritm
-t
-r
_)
-')
Instrucliuni
care se repetd
Algoritm principal
o corpul procedurii
t-
apel subalgoritm
Subalgoritrn
i=
numejrocedura
$i in acest caz f
jsta-de- parametri)
sta-de-parametri
-r
I
_)
apel subalgoritm
informalii prinvariabile globale, adicd variabile care sunt recunoscute (se "v[d")
_t
-l
-I
Instrucfiuni
care se repot[
epel lubalgorltm
problcmalor ou caloulatoruf
iar
aceeag
ln exemplul do mai
dat6 parametrii formali
nk
"
utilizdnd
parametrul formal
k:
in F', so lntoaroc tn
actual corespunz6tor Fn, Anal{, dUpl
se face in
pseudocod.
(l-
i sta_de_parametrl
Precizdri:
Citegte n, k
nume_functie
o lisLa_dejarameLri
reprezintd parametri
formali
sau
ficlivi;
o corpuf functiei
Stsop
Vflo$lf
Sf5rgit
T-.l
Frnr
se reprezintd astfel:
Funclia nume_funcLie
corpul func!iei
k!, iar ln
(n-k)t.
in pseudoco d, o funclie
n. Sa oxocutl
cu pararnetrii actuali
n!
k!(n _ k)t
apeleazd.
cdte
Fact
auo procodura
fiecare
acest
.-*;n-.f-
unct ie ( f i
s ta_
i)
="@
ruErrErl*
PrEpl,tlrllilSf
gU-
gltlgtuaEglil*E+: i'!:=r
utoeval uare
daca x>7
"f(x)=jtO.ZS daca x=7
l"'-* daca x<7.
fx+2
3.2. Yariabllele dinamice sunt variabile cErora se pot asocia mai multG
adrese de localii de memorie pe durata execu{iei programultri,
Funclia /(x)
Daci ;r>7 atunci
f <- x+2
4,
in raport cu oporallltc
ALt,f e1
rDaci x = 7
I r <- 10.25
inregistrarea, lista
I attt"r
ortt ta
do datc iunt mnnblurl fi
pG
in algorlhrl rwtl
uHtd,
dru
I f <--e'-x
ln
SfArgit
littol, pruuryod
Citegte x
y
<_
(x) + 5.63
Scrie y
gEop
fi
O f"rt de autoevaluare
Lucrare de veriJicare
Realizali o sistematizare
..,...........A
a structurilor de date.
*js
an
ryi
pe sucursal[.
se
aplic[.
in
v
li
frr[
Rer,umat
Etapele de rezolvare
general,
finit qi neambiguu.
qi
pseudocodul'
programare
gi reale),
Iogice
qi
Teorema
fi
final.
algoritmi sunt: tabloul, inregistrarea, lista liniard simplu inl6nfuitd, lista liniard
dublu inldnfuitS, stiva, coada, arborele gi graful.
Re c oman d dri
iblio gr aft'c e
Georgescu, sinteza
analiza algoritmilor,
of
computer programming,
Vol' I -
4. J. Glenn
1998.
1961
si
t971
5, Thomas H. Cormen,
6. Bob
2013.
BIBLIOGRAF'IE
Tiberiu Popescu (coordonato r), D i c ! i o nar de I nfo r mat i c d, Edit'xa
$tiinfificd qi Enciclopedici, Bucuregti, 1981.
Adrian Petrescu, Nicolae TIpu$, Trandafir Moisa, Gheorghe Rizetcu,
Viorica Hlribor, Mihai Mirqanu, Traian Mihu, abc de calculatoara
personale Si ... nu doar atdt ..., Vol.I, Ed. Tehnic6, Bucuregti, 1990,
34
-368, 2000.
$tiinfifici
10.
operare, Editura
p$
Si conceplia sistemelor de