You are on page 1of 69

ARHITECTURA SISTEMELOR DE CALCUL

Suport de curs - anul II, semestrul I


Lect. Univ.drd. Marinela Nidelea

Introducere
Calculatorul sau sistemul de calcul este un dispozitiv care lucreaz automat, sub controlul unui program memorat, acceptnd i prelucrnd date n vederea producerii de informaii. Orice calculator are n esen trei pri: - hardware, adic partea de echipament a calculatorului; - software, partea de programe; - firmware, partea de microprograme. Unele lucrri de specialitete privesc arhitectura din dou puncte de vedere: - 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. Implementarea unei arhitecturi, din acest punct de veder, 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 interconectrii dispozitivelor sistemelor de calcul. Aceasta este accepiunea general a arhitecturii sistemelor de calcul.

1. STRUCTURA UNUI SISTEM DE CALCUL Definiie: Un sistem de calcul este un ansamblu de componente hardware (dispozitive) i componente software (sistem de operare i programe specializate) ce ofer servicii utilizatorului pentru coordonarea i controlul executrii operaiilor prin intermediul programelor.

Orice sistem de calcul (computer system) pentru a realiza funciile sale de baz trebuie s execute urmtoarele operaii: - introducere date (citire) - I - memorare date i instructiuni (reprezentare) - M - prelucrare date si instruciuni (procesare) - P - ieire date (scriere) - O
2

John Von Newman a descris primul model arhitectural pentru calculator. Din punct de vedere functional un sistem de calcul contine 7 blocuri componente redate in urmatoarea figura:
Adrese Instructiuni si date initiale

DP /I

UCC C

UAL D

MEM

D Canale I/E

Comenzi Memorie externa

rezultate DP/E

1.1 DISPOZITIVE DE INTRARE-IEIRE asigur comunicarea calculatorului cu mediul prin intermediul unor echipamente specializate, numite Dispozitive Periferice. Aceste dispozitive sunt: - dispozitive de intrare; - dispozitive de ieire; - dispozitive de intrare-ieire: - memoriile externe. Dispozitivele de intrare - asigur transmiterea informaiilor i comenzilor ctre calculator prin operaiade citire. Din aceast categorie fac parte: tastatura, mouse-ul, cititorul de cartele,

creionul optic, stiloul electronic, scanerul, microfonul, etc. Informaiile citite pot fi: texte, imagini, muzic, comenzi vocale, valori analogice. Indiferent de tipul informaiei, principiul de funcionare al unui dispozitiv de intrare este acelai: preia informaia, o mparte n uniti conform unui algoritm propriu, codific fiecare unitate ntr-o secven de bii i transmite aceti bii procesorului. Dispozitivele de ieire - sunt folosite pentru a comunica utilizatorului rezultatele operaiilor executate i informaii despre stare sistemului prin informaii de scriere. Din aceast categorie fac parte: monitorul, imprimanta, ploterul, difuzorul. Aceste dispozitive primesc secvene de bii de la procesor pe care le decodific, astfel nct s poat fi nelese de utilizator sub form natural. 1.2. CANALELE DE I/E- dirijeaza fluxul de informatii ce se transfera de la DP/ I catre DP /E. 1.3. MEMORIA INTERNA- In memoria interna sunt stocate programele si datele care sunt in lucru la un moment dat. Memoria interna este un depozit de informatie in care comenzile, semnalele, textele, numerele, imaginile, etc., sunt reprezentate in codificare binara. Pentru regasirea informatiei memoria interna a fost impartita in locatii de memorie care se identifica dupa o adresa unica. 1. 4. UNITATEA ARITMETICA-LOGICA (UAL) reprezinta ansamblul de circuite electronice prin care se realizeaza prelucrarea datelor cerute prin instructiuni sau comenzi. Prelucrarea se face prin operatii aritmetice, logice si de comparare. Fiecare circuit este specializat sa realizeze un una din operatiile de baza. 1.5. UNITATEA DE COMANDA SI CONTROL coordoneaza si controleaza intreaga activitate de prelucrare la nivelul componentelor calculatorului. Acesta ( UCC) executa instructiunile unui program (memorat in memoria interna la adrese succesive) astfel: - extrage din memoria interna a calculatorului o instructiune din program; - decodifica instructiunea pentru a afla ce operatie trebuie sa execute si ce date vor fi folosite; - extrage din memoria interna datele necesare prelucrarii; - activeaza circuitele electronice corespunzatoare din UAL pentru a executa operatia cu datele solicitate; - scrie la o anumita adresa de memorie rezultatul obtinut in urma executarii operatiei solicitate. 1.6. MEMORIA EXTERN este un suport electromagnetic reutilizabil, pe care informaia se pstreaz codificat sub form binar, prin magnetizarea particulelor feromagnetice dup dou direcii de magnetizare, corespunztoare celor dou cifre binare.

UCC impreuna cu UAL alcatuiesc UNITATEA CENTRALA DE PRELUCRARE (UCP) sau procesorul central. Daca la UCP se include si memoria aceasta constituie UNITATEA CENTRALA (UC). Unitatea de comand asigur controlul execuiei instruciunilor unui program i conine dou registre importante: a) registru de instruciuni (RI) care conine adresa instruciunii n curs de execuie, b) registru contor ordinal (CO) care conine adresa urmtoarei instruciuni de executat. Unitatea de comand conine de asemenea un dispozitiv de decodificare a instruciunilor (decodificator) i un dispozitiv de control al secvenei de comenzi care activeaz circuitele necesare execuiei instruciunii curente. nlnuirea comenzilor se realizeaz prin intermediul unui ceas sistem. 2. SISTEME DE NUMEROTATIE In domeniul calculatoarelor, sistemele de numeraie folosite sunt: binar, octal i hexazecimal. Sistemul binar folosete baza de numeraie 2, utilizand simbolurile 0 si 1. Sistemul octal, cu baza 8, folosete simbolurile: 0, 1, ..., 7. Sistemului hexazecimal este 16, iar simbolurile folosite sunt: 0, 1, ..., 9, A, B, C, D, E, F. Indiferent de sistemul de numeraie utilizat, modul de realizare a operaiilor aritmetice este acelai. Procesul privind transformarea reprezentrilor exprimate n sisteme de numeraie se numete conversie. 2.1. Conversia unui numar real intr-o baza de numerotatie Codificarea unui numr real ntr-o baz de numeraie b se bazeaz pe operaiile de mprire i nmulire aplicate numerelor ntregi. Pentru a converti un numr real format din parte ntreag i parte fracionar, din scrierea zecimal, n baza b (b2), se procedeaz astfel: 1. Se mparte (conform teoremei mpririi cu rest) la b, partea ntreag i cturile obinute dup fiecare mprire, pn se obine ctul zero. Rezultatul conversiei este constituit din resturile obinute, luate n ordine invers apariiei acestora. 2. Se nmulete cu b, partea fracionar i toate prile fracionare obinute din produsul anterior, pn cnd partea fracionar este nul sau a fost obinut numrul de cifre dorit. Rezultatul conversiei prii fracionare este constituit din prile ntregi ale produselor, luate n ordinea apariiei lor. Exp: Conversia binar a numrului zecimal 24,25 este 11000,01.
5

Numrul zecimal 1961,25 este reprezentat n format hexazecimal ( b=16) 7A9,4. 2.2. Conversia unui numar dintr-o baza de numerotatie in zecimal

prin expresia

Pentru a transforma un ir de simboluri ale sistemului de numeraie n baza b, n zecimal, se va calcula suma produselor dintre cifra corespunzatoare (din ir) i baza ridicat la puterea specificat de poziia acesteia. Trebuie observat c poziiile sunt indicate astfel: - pentru partea ntreag, de la dreapta la stnga, prin numerele 0, 1, ..., .a.m.d. - pentru partea fracionar, de la stnga la dreapta, prin numerele: -1, -2, ..., .a. 2.3. Conversia unui numar din binar in octal, hexazecimal si invers Deoarece 8=23, iar 16=24, folosind proprietile de calcul, se obine o strategie de conversie automat ntre aceste sisteme. Conversia binar octal, respectiv octal-binar folosete corespondena: 0--000, 1--001, 2--010,., 7111; Conversia binar-hexazecimal, respectiv hexazecimal-binar, folosete corespondena: 0--0000, 10001, 20010,, E1110, F1111. Exp: irul binar: 1011011 - se va traduce n irul octal: 331 - respectiv n irul hexazecimal: 5B 2.4. Operatii aritmetice in binar, octal si hexazecimal Operaiile aritmetice cu numere binare, octale, respectiv hexazecimale se efectueaz similar operaiilor cu numere zecimale. La adunare va interveni transportul ctre ordinul superior, la scdere va interveni mprumutul de la ordinul superior, iar nmulirea se va desfura prin totalizarea unor produse pariale, analog modului de calcul zecimal. 10110011+111110=11110001 (baza 2);

+ 0 0 0 1 1

1 1 (10)
6

* 0 1

0 0 0

1 0 1

3. REPREZENTAREA DATELOR IN SISTEMELE DE CALCUL Informaia elementar este numit bit (BInary digiT). Un bit este descris prin una din cifrele binare: 0, 1. Biii se pot grupa cte 8, 16, 32 etc. formnd un octet (byte), cuvnt (word), cuvnt dublu (double word) etc. Informaia modelat i prelucrat de calculator este prezentat sub forma unui ir de cifre binare. Aceste iruri se numesc date. ntr-un calculator, informaia reprezentat codificat formeaz mulimea datelor. Formal, memoria intern este considerat o structur liniar (mi)i.>0. mi poate lua valoarea 0 sau 1 cu semnificaia stins, respectiv aprins i reprezint o poziie binar. In concluzie, o succesiune de bii poate fi utilizat pentru stocarea de informaii convertite n poziii binare. Unitatea de masur pentru memorie este byte-ul (octet-ul) i reprezint o succesiune de 8 poziii binare, de exemplu 0 1 0 1 0 1 1 1 1b = 8 bii sau 1o = 8 bii. Multiplii byte-ului sunt: 1 Kb = 1024 b = 210 b ; 1 Mb = 1024 Kb =220 b ; 1 Gb = 1024 Mb = 230 b; 1 Terra =1024 Gb. Din punct de vedere logic, memoria intern a unui calculator este organizat n blocuri de memorie, 1 bloc = 64 Kb, aceste blocuri avnd destinaii precise n stocarea informaiilor gestionate de un sistem de operare adecvat. Un rol important n utilizarea memoriei interne i in procesul de prelucrare a informaiilor are conceptul de cuvnt de memorie (word), acesta fiind de fapt o unitate de masur (unitate de adresare) n sistemul de coordonate (adrese) ataat unei memorii interne. n evoluia sistemelor de calcul, capacitatea cuvntului de memorie a fost variabil i a determinat creterea performanelor acestora, n acest sens este cunoscut clasificarea microprocesoarelor n generaii funcie de capacitatea cuvntului de memorie utilizat: 1 cuv. = 8 bii = 1 b; 1 cuv. = 16 bii = 2 b; 1 cuv. = 32 bii = 4 b; 1 cuv. = 64 biti 8 b.

Sistemele de calcul utilizeaz cel mai frecvent coduri alfanumerice cu 7, 8 i 16 cifre binare care permit reprezentarea a 128 (ASCII), 256 (ASCII extins), respectiv 65536 (Unicode) obiecte (cifre, litere, caractere speciale). Codul ASCII (American Standard Code for Information Interchange), este cel mai popular cod. Unicode este standardul recent introdus pentru acoperirea lingvistic la nivel mondial, n elaborarea aplicaiilor n tehnologia Java. Codurile numerice ofer posibilitatea reprezentrii numerelor folosind sistemul binar. Reprezentarea numerelor n acest sistem se face n mai multe forme, n funcie de mulimea creia i aparin numerele, operaiile aritmetice fiind efectuate de ctre dispozitive aritmetice specializate. 3.1 Reprezentarea numerelor naturale Reprezentarea numerelor naturale se realizeaz pe un numr fix de poziii binare (de regul 8, 16, 32, sau 64) prin conversia numrului zecimal n baza 2. Aceast reprezentare este numit reprezentare aritmetic. Prin utilizarea a n poziii binare (n>=1) se pot reprezenta aritmetic toate numerele naturale din plaja 0...2n-1. 3.2 Reprezentarea numerelor intregi Reprezentarea numerelor ntregi, numit i reprezentare algebric este asemntoare reprezentrii numerelor naturale, cu deosebirea c prima poziie este ocupat de semnul numrului ntreg. Se pune probleme ca printr-o conversie adecvata, sa se considere o parte din aceste configuratii de biti ca reprezentand numere intregi pozitive, iar celelalte negative. Cel mai raspandit mod de reprezentare este sistemul de reprezentare in complement fata de 2. In acest sistem, bitul cel mai semnificativ joaca rolul de a preciza semnul numarului. Daca bitul de semn este 0 numarul este pozitiv, iar daca bitul de semn este 1, numarul este negativ. Numerele ntregi negative pot fi codificate prin trei metode: semn i valoare absolut (SVA); complement logic sau restrns sau fa de 1 (C1); complement aritmetic sau adevrat sau fa de 2 (C2); Prin metoda semn i valoare absolut, numerele se codific sub forma: valoare absolut. n aceste condiii, pe un cuvnt de k bii se pot reprezenta numere ntregi pozitive i negative N, astfel nct: - (2k-1- 1) <= N <= (2 k-1- 1).
8

Aceast metod de reprezentare prezint unele inconveniente: numrul zero are dou reprezentri distincte: 000...0 i 100...0, adic +0 i -0; tabelele de adunare i nmulire sunt complicate din cauza bitului de semn care trebuie tratat separat. 3.3 Complement logic i aritmetic Complementul logic (complement fa de 1) se calculeaz nlocuind, pentru valorile negative, fiecare bit 0 cu 1 i fiecare bit 1 cu 0. Complementul aritmetic (complement fa de 2) este obinut adunnd o unitate la valoarea complementului logic. Exp: Reprezentarea numrului (-6) pe 4 bii: + 6 = 0110 Semn i valoare absolut: - 6 = 1110 Complement fa de 1: - 6 = 1001 Complement fa de 2: - 6 = 1010. Se poate uor constata c intervalul numerelor ntregi N care se pot reprezenta n complement fa de 1 este acelai ca i pentru reprezentarea semn i valoare absolut. Pentru reprezentarea n complement fa de 2 pentru k bii vom avea: -2k-1 <=N<=(2k-1-1). Se poate remarca faptul c bitul cel mai din stnga (bitul de semn) este ntotdeauna 0 pentru numere pozitive i 1 pentru cele negative i aceasta pentru fiecare din cele trei reprezentri. 3.4 Numere fracionare (subunitare). Pentru numerele fracionare se pot remarca reprezentrile n virgul fix i virgul mobil. 3.5 Virgula fix (VF) Sistemele de calcul nu posed virgula la nivelul mainii, deci reprezentarea numerelor fracionare se face ca i cnd acestea ar fi ntregi, cu o virgul virtual a crei poziie este controlat de ctre programator. Datorit dificultii de gestionare a virgulei de ctre programator (pot apare frecvent situaii de depire a capacitii de memorare), se prefer soluia aritmeticii n virgul mobil. 3.6 Virgula mobil (VM)

Numrul N se poate scrie n virgul mobil (VM) astfel: N = M B E M mantisa: indic valoarea exact a numrului ntr-un anumit domeniu E exponentul: indic ordinul de mrime al numrului B baza exponentului

31

Standardul IEEE ((Institute of Electrical and Electronics Engineer) ) definete trei formate de reprezentare a numerelor n virgul mobil: a) precizie simpla pe 32 de bii (1 bit pentru semn, 8 bii pentru exponent i 23 pentru mantisa); b) precizie dubla pe 64 bii (1 bit pentru semn, 11 bii pentru exponent i 52 bii pentru mantisa); c) dubl precizie extins pe 96 bii (1 bit pentru semn, 15 bii pentru exponent i 80 bii pentru mantisa) ; d) precizie cvadrupl pe 128 bii (1 bit pentru semn, 15 bii pentru exponent i 112 bii pentru mantisa). Mantisa fiind normalizat, exist sigurana c primul bit al mantisei are valoarea 1, ceea ce permite omiterea sa (bit ascuns) pentru creterea preciziei de reprezentare, dar complic prelucrarea informaiei. Exponentul determin intervalul de numere reprezentabile n sistemul de calcul. Numerele prea mari pentru a putea fi reprezentate corespund unei depiri superioare de capacitate de memorare (overflow), iar numerele prea mici corespund unei depiri inferioare de capacitate de memorare (underflow). Mrimea mantisei exprim precizia de reprezentare a numerelor. Avantajul utilizrii virgulei mobile fa de virgula fix const n intervalul mult mai extins al valorilor posibile de reprezentat. n cazul transferului datelor ntre sisteme de calcul pot aprea erori. De aceea se utilizeaz coduri de control cu posibilitatea detectrii i corectrii erorilor. Mai precis, se ataeaz cifre binare (de control) la emisia mesajului, recepia fiind responsabil de controlul modului de respectare a corectitudinii mesajului. Cele mai utilizate procedee pentru detectarea erorilor sunt: codurile pentru controlul paritii i codurile polinomiale ciclice.
10

30 22 23 0 S 23 Exponent M D

0 0 Mantis

In concluzie putem defini datele ca fiind reprezentarea fizic (prin intermediul codului) a entitilor din care este compus informaia (cifre, litere, semne speciale, imagini, sunete), pentru ca aceasta s poat fi stocat, prelucrat sau transmis. n vederea prelucrrii, datelor le sunt asociate atribute precum: - tipul datei: numeric: ntreg sau real; logic; ir de caractere; enumerare; adres, precizia reprezentrii interne modul de vizualizare poziie; aliniere; corpul simbolului; dimensiunea. 4. SCHEMA NIVELELOR CONCEPTUALE A UNUI CALCULATOR

Un calculator virtual actual are apte nivele conceptuale:


Nivelul 7

Nivelul orientat pe aplicatie


Translatare

Nivelul 6

Limbaje de nivel nalt


Translatare

Nivelul 5

Limbaj de asamblare
Translatare

Nivelul 4

Sistemul de operare
Interpretare

Nivelul 3

Arhitectura setului de instructiuni


Interpretare

Nivelul 2

Microarhitectur
Microprogram executat direct in hard

Nivelul 1

Nivelul logic digital

Fig 1. Nivelurile conceptuale ale mainii virtuale corespunztoare calculatoarelor actuale.

Maina virtual este organizat pe niveluri iar ntre dou niveluri pot exista dou operaii: - translatarea i - interpretarea.
11

Limbaj superior(Lsup)

translatarea .
Limbaj inferior (Linf)

interpretare .

Translatarea presupune transformarea programului din Lsup n ntregime ntr-un program din Linf . Programul din Lsup este abandonat iar noul program din Linf este ncrcat n memorie i executat. Translatarea seamn cu compilarea. Interpretarea nseamn execuia instruciunilor din Lsup , pas cu pas, fiecare instruciune fiind executat imediat. Este scrierea unui program n Linf care preia programe din Lsup ca date de intrare i le execut examinnd fiecare instruciune pe rnd i executnd secvena echivalent de instruciuni direct n Linf , dar fr s genereze un nou program n Linf . Diferena fundamental ntre cele dou tehnici este c n translatare un program mai nti este transformat n totalitate n alt program i apoi executat programul translat, n timp ce n interpretare se execut fiecare instruciune pas cu pas. Fa de interpretare, translatarea are avantajul unei viteze de execuie mult mai mari. Nivelurile au urmtoarele semnificaii: Nivelul 1 este hard pur. Este format din circuite electrice i electronice. Nivelul 2 este nivelul microprogram care interpreteaz instruciunile nivelului 3 i le execut n nivelul 1. Fiecare instruciune a nivelului 3 este executat de un microprogram. Nivelul 3 este nivelul setului de instruciuni al mainii, instruciuni executate pe nivelul hard. Nivelul 4 . Sistemul de operare este hibrid deoarece cuprinde att instruciuni interpretate de nivelul patru ct i instruciuni interpretate de nivelul trei. Nivelele 1-4 nu sunt utilizate de programatori, ele coninnd interpretoare i translatoare construite de ctre programatorii de sisteme. Nivelul 5 este nivelul limbajului de asamblare, destinat programatorilor de aplicaii. Dac primele niveluri erau interpretate, acesta este translatat de ctre un program numit asamblor. Nivelul 6 este nivelul de limbaj nalt. Programele scrise n acest nivel sunt translatate ctre nivelele cinci i ase de ctre programe specializate numite compilatoare.

12

Nivelul 7 conine limbaje destinate unor domenii foarte speciale cum ar fi proiectarea asistat, administraia, grafica etc. 5. PROCESOR. PROPRIETATI. MOD DE FUNCTIONARE 5.1 CONCEPTE CHEIE: BIOS (basic input/output system, system de intrare/iesire de baza). O colectie interna de coduri software ale unui calculator personal care gestioneaza unele sarcini fundamentale privind transimiterea de date dintr o parte a calcuatorului intr-alta. Pornire sau boot-are. Procesul care are loc atunci cind un calculator personal este pornit si efectuaeaza rutinele necesare pentru a si face toate componentele sa funcitioneze corect si apoi incarca sistemul de operare. Ceas. Un microcip care regleaza timing-ul si viteza tuturor functiilor calculatorului. Cipul include un cristal care vibreaza la o anumita frecventa atunci cind prin el trece curente electric. Cea mai scurta perioada de timp in care un calculator poate efectua o operatie oarecare reprezinta un ceas sau o vibratie a cipului ceas. Viteza ceasurilor si, prin urmare, a calculatoarelor- este exprimata in mega-hertzi (Mhz). Un megahertz reprezinta un milion de cicluri (sau vibratii) pe secunda. Memorie ROM si RAM. Prescurtari pentru Read Only Memory si Random Access Memory. Memoria ROM reprezinta cipuri de memorie sau date stocate pe discuri, care pot fi citite de procesorul calculatorului. Calculatorul personal nu poate scrie date noi in aceste cipuri sau pe aceste discuri. Memoria RAM este reprezentata de memorie sau discuri care pot fi citite si pe care, de asemenea, se poate si scrie. Random Acces Memory este in realitate o denumire eronata, deoarece chiar si memoria ROM poate fi accesata in mod aleatoriu. Termenul a fost destinat initial deosebirii memoriei RAM de datele si programele stocate pe caseta magnetica, care puteau fi accesate doar secvential. Aceasta inseamna ca, pentru a ajunge la ultima transa de date sau cod de pe o caseta, un calculator trebuie sa citeasca toate informatiile continute de caseta respectiva, pana cand ajunge la locatia unde sunt stocate datele sau codul pe care le cauta. In schimb, un calculator poate sari direct la orice informatie stocata in locatii aleatorii din cipurile RAM sau pe disc. Fisiere de sistem. Mici fisiere care contin cod software si reprezinta primele fisiere pe care un calculator le citeste de pe disc atunci cand este pornit. In sistemele DOS si Windows, fisierele sunt denumite IO.SYS si MSDOS.SYS si sunt invizibile, astfel incat in mod obisnuit nu le puteti vedea atunci cand sunt afisate fisierele de pe un disc. Fisierele de sistem contin informatiile necesare pentru a incarca restul unui sistem de operare dupa boot-area hardware initiala. In DOS, un alt fisier de sistem este COMMAND.COM care contine functiile de baza
13

ale sistemului de operare, cum ar fi afisarea unei liste de fisiere (director). Un disc de sistem trebuie sa contina toate cele trei fisiere pentru ca un calculator personal sa poata porni. Fisierele de sistem pot include, de asemenea, CONFIG.SYS care efectueaza unele setari initiale ale componentelor hardware, si AUTOEXEC.BAT, o colectie de comenzi sunt executate atunci cand au fost terminate toate celelalte functii de boot-are. Adder, half-adder, full-adder. Diferite combinatii de tranzistori care efectueaza operatiuni matematice si logice asupra datelor care sunt procesate. Calcul cu set complex de instructiuni (complex instruction set computing, CISC). Un design de arhitectura de procesor in care instructiunile mari si complicate sunt defalcate in sarcini mai mic, inainte ca procesorul sa le execute. Calcul cu set redus de instructiuni (reduced instruction set computing, RISC). Un design de procesor in care sunt folosite numai instructiuni mici, rapid executabile. Opusul calculului de set complex de instructiuni. Canal (drain). Partea unui tranzistor in care curentul electric iese intr-un tranzistor, atunci cand acesta este inchis. Condensator. O componenta care stocheaza o sarcina electrica. Linie de adresa. O linie electrica sau un circuit asociat (a) cu o anumita locatie din memoria RAM. Linie de date. O linie electrica sau un circuit care transporta date; in special in cipurile de memorie RAM, un circuit care determina daca un bit reprezinta un 0 sau 1. Megahertz (Mhz). Unitate de masura, in milioane, a numarului de ori in care un lucru oscileaza sau vibreaza. Vitezele procesorului sunt, de regula, masurate in megahertzi. Pipelining. O arhitectura de calculator conceputa astfel incat toate componentele unui circuit functioneaza permanent, nici o parte din circuit nefiind blocata in asteptarea unor date de la o alta componenta. Memorie ascunsa (cache). Un bloc de memorie de mare viteza in care sunt copiate datele atunci cand acestea sunt recuperate din memoria RAM. In momentul in care datele sunt necesare pot fi recuperate din memoria ascunsa mai rapid decat din memoria RAM. Memoria Cache este mai rapid dect memoria RAM, asigurnd viteza necesar lucrului cu procesorul. Memoreaz datele i instruciunile care se utilizeaz la un moment dat. Capacitate: 256KB2MB. Pentium are memorii ascunse multiple, care totalizeaza pina la 2 MB de memorie. Ele sunt concepute pentru a asigura alimentarea constanta a unitatii aritmetice logice cu datele si instructiunile de care aceasta are nevoie.

14

Aceste componente trebuie sa gestioneze fluxul de date si instructiuni in interiorul procesorului, sa interpreteze instructiunile astfel incat ele sa poata fi executate de procesor si sa trimita rezultatele inapoi la memoria calculatorului. In mod ideal, procesorul executa o instructiune la fiecare tact al ceasului calculatorului, care reglementeaza cat de repede functioneaza sistemul, un ideal care este desemnat prin expresia pipeling. Memoria CMOS memoreaz partea din BIOS i parametrii de funcionare care pot fi stabilii de ctre utilizator. Este o memorie volatil care este pstrat sub tensiune de ctre o baterie astfel c datele nu se pierd la oprirea calculatorului. Magistrala(bus) este un canal comun de comunicaie ntre plcile calculatorului. Magistrala este format dintr-un set de trasee de cupru pe o plac de circuit, pe care circul informaia (date, comenzi, semnale de control) sub form de impulsuri electrice cu dou niveluri de tensiune corespunzatoare celor dou cifre binare 0 i 1. Conectorii la magistral (bus connectors) prin intermediul crora se leag opional la placa de baz plcile adaptoare sau interfeele pentru imprimant, pentru modemul liniei telefonice, pentru ecran, pentru unittile de discuri flexibile etc. Dac aceste plci ar fi legate direct la placa de baz, ar trebui definite clar conexiunile penru fiecare plac. n plus, ar trebui stabilite semnalele de dialog ntre fiecare pereche de plci care dialogheaz. Sistemul ar avea o flexibilitate redus. El ar deveni un sistem nchis. Microcip. O bucata de dioxid de silicon pe care au fost gravate circuite electrice microscopice, folosint un sistem de lumini, filme senzitive la lumina si bai acide. MMX. Un set de instructiuni care accelereaza operatiunile solicitate pentru multimedia. Setul este construit in procesoarele Intel Pentium. Registru. Un set de tranzistori dintr-un procesor in care sunt stocate temporar date in timp ce procesorul efectueaza calcule care implica datele respective . SIMD (Single Instruction Multiple Data/ Instructiune unica, date multiple). O arhitectura de procesor care permite aceleiasi operatiuni sa fie efectuate simultan asupra unor seturi multiple de date. Tranzistor. Un comutator microscopic care controleaza fluxul de electricitate ce trece prin el, in functie de modul in care o sarcina electrica diferita a deschis sau a inchis circuitul. Tranzistorul este blocul fundamental din care sunt construite toate microcipurile. Tranzistorul poate crea numai informatii binare : un 1 daca curentul trece si un 0 daca curentul nu trece. Bitii pot, la fel de usor, sa tina locul valorilor de adevarat (1) sau fals (0), ceea ce permite calculatoarelor sa trateze logica booleana. Combinatiile de tranzistori in diferite configuratii sunt numite porti logice. In plus, tranzistorii fac posibil ca o cantitate mica de curent electric sa controleze un al doilea curent, mult mai puternic- la fel cum cantitatea mica de energie necesara

15

pentru a aprinde un comutator de perete poate controla energia mult mai puternica ce circula prin fire. Crearea unui cip din tranzistori Mii de tranzistori sunt conectati pe o singura placa de siliciu. Placa este incadrata intr o bucata de material plastic sau ceramic, iar capetele circuitelor sunt atasate la piste metalice care se extind, pentru a conecta cipul la alte componente ale placii de circuite integrate. Pistele transporta semnale in interiorul cipului si trimit semnale din cip catre componente ale calculatorului.

5.2 Microprocesorul Microprocesorul este componenta de baz a unitii centrale de prelucrare, reprezentnd creierul artificial al unui microcalculator. Din punct de vedere fizic este realizat dintr-o capsul ceramic sau plastic (circiut integrat pe scar larg) n interiorul cruia se afl mai multe componente electronice, numrul acestora diferind de la un tip la altul n funcie de tehnologia de fabricaie i generaia din care face parte. La microprocesor este ataat un rcitor (cooler), ansamblu format dintr-un ventilator mic i un radiator avnd rolul important de rcire a microprocesorului. Cooler-ul este necesar pentru microprocesoare mai puternice dect un 486DX2/66 MHz. Datorit curentului electric care circul prin circuitele integrate, fr un cooler, un microprocesor devine de neatins (datorit cldurii la care materialul din care este confecionat poate ajunge) ntr-un timp extrem de scurt, aproximativ 20 de secunde, iar dup o scurt perioad de timp, se deterioreaz, circuitele practic topindu-se. De la apariia circuitului integrat, procesoarele au cunoscut progrese rapide. Numrul de tranzistori pe care proiectanii au reuit s-l mpacheteze ntr-un cip s-a dublat la fiecare 18 luni. Astfel, n intervalul de 10 ani procesoarele din familia x86 au crescut n densitatea circuitelor logice de 20 de ori. Bazele acestei mbuntiri continue o reprezint fotolitografia, tehnologie prin care circuitele integrate se realizeaz prin depunerea, una peste alta, n straturi succesive, a unor structuri de metal sau siliciu tratat chimic prin care se obine pastila de siliciu. Posibiliti de dezvoltare mai exist dar, dup cum afirm specialitii, aceast tehnologie este limitat de frecvena razei de lumin i de rezoluia lentilelor. De aceea cercettorii caut noi soluii, una oferind reale posibiliti i are la baz principiile mecanicii cuantice. Procesorul actualelor sisteme poate fi un microprocesor sau un ansamblu integrat de microprocesoare. Orice procesor conine patru blocuri funcionale de baz:
16

unitatea de comand i control (UCC), unitatea aritmetico-logic (UAL), registrele procesorului, unitatea de interfa cu celelalte componente (UI).

Unitatea de comand i control comand, controleaz i coordoneaz ntregul proces de prelucrare a datelor i funcionarea corect a tuturor componentelor sistemului pe baza comenzilor transmise de utilizator i memorate n memoria intern a calculatorului. Unitatea aritmetico-logic (UAL) este alctuit din totalitatea circuitelor electronice prin care se realizeaz prelucrarea datelor cerut prin instruciuni i comenzi. Aceste circuite sunt structurate pe registre (8, 16, 32, 64 bii) corelate cu lungimea cuvntului de memorie (16, 32, 64 bii). Principalele tipuri de operaii elementare pe care le poate realiza UAL sunt: adunare logic, operaii logice de tip AND, OR, NOT, XOR, operaii de complementare a datelor, operaii de deplasare a datelor cu un bit la stnga sau la dreapta. Operaiunile complexe asupra datelor sunt realizate de microprocesor prin combinarea operaiunilor elementare. Registrele microprocesorului funcioneaz ca o memorie RAM proprie n sensul c pstreaz temporar informaii ce urmeaz a fi prelucrate sau rezultate ale prelucrrilor pn la transmiterea acestora ctre memoria RAM. Dintre registrele de date i de adresare ale microprocesorului mai importante sunt: registrul de date care pstreaz datele ce urmeaz a fi prelucrate de microprocesor sau rezultatele prelucrrii care urmeaz a fi transmise ctre memorie pentru stocare; registrul de instruciuni care conine ntotdeauna codul instruciunii curente, identificat de UCC pentru a genera secvena de operaii elementare i a decide execuia acesteia. registrul contor-program conine adresa urmtoarei instruciuni ce urmeaz a fi apelat din memoria RAM i prelucrat. Codul instruciunii coninute n registrul contor-program va fi transferat n registrul de instruciuni dup terminarea prelucrrii instruciunii curente, iar instruciunea adresat prin registrul program va deveni instruciune curent. registrul contor-date conine adresa operanzilor ce vor fi preluai din memoria RAM i depui n registrul de date pentru prelucrare. Odat cu ncrcarea codului instruciunii ce urmeaz a se executa n registrul de instruciuni are loc i transmiterea unei comenzi de ncrcare a operanzilor n registrul de date, pe baza adresei coniunte de registrul contordate.

17

Toate operaiunile aritmetice i/sau logice, de adresare, de transfer etc au loc pe baza unui dialog ntre microprocesor i memoria intern, pe de o parte, iar pe de alt parte ntre componentele funcionale ale microprocesorului. Un microprocesor este caracterizat n principal de: 1. frecventa de lucru; 2. dimensiunea memoriei intene ce poate fi adresat la un moment dat 3. setul de instruciuni ce poate fi executat; 4. fiabilitatea i costul de fabricaie. 1. Frecvena de lucru a microprocesorului se msoar n megahertzi (MHz), adic n milioane de impulsuri pe secund. De exemplu, dac un microprocesor are frecvena de 900 MHz nseamn un semnal cu 900 de milioane de impulsuri pe secund. Cu ct aceast frecven este mai mare, cu att microprocesorul este mai performant, deoarece ea este direct proporional cu viteza cu care microprocesorul execut instruciunile, deci cu viteza de lucru a calculatorului. Pentru sistemul de operare Windows XP , care este un mare consumator de resurse, se recomand un procesor cu o frecven de cel puin 500 MHz. Toate aceste elemente determin viteza de lucru a microprocesorului, adic determin ct de repede execut microprocesorul o instruciune. Viteza se msoar n milioane de instruciuni pe secund - MIPS sau MFLOPS. Un calculator performant are o vitez de execuie de ordinul a 230 MIPS. n acest moment, exist dou categorii de microprocesoare: CISC (Complex Instruction Set Computer) i RISC (Reduced Instruction Set Computer). Cele mai rspndite microprocesoare sunt cele CISC (avnd ca reprezentai microprocesoarele INTEL : X86, Pentium). Microprocesoarele RISC implementeaz mai puine instruciuni, sunt mai simplu de proiectat i mai ieftine. Cteva exemple de microprocesoare RISC sunt: PowerPC (dezvoltat de Motorola, IBM i Apple); Alpha i MIPS R400 (dezvoltate de Digital Equipment Corporation). O abordare special o reprezint arhitectura CISC bazat pe tehnici de tip RISC care duce la o vitez de executare a aplicaiilor CISC comparabil cu cea a sistemelor RISC. Este cazul soluiilor AMD i Cyrix. Viteza depinde de depinde de urmtorii factori: A. frecvena ceasului intern B. dimensiunea regitrilor interni i a magistralei de date C. dimensiunea memoriei cache. A. Frecvena ceasului intern Funcionarea microprocesorului este coordonat de un ceas intern al calculatorului. Ceasul intern este ca un oscilator care trimite n calculator pulsuri, la intervale egale de timp, bine

18

determinate necesare pentru a comanda realizarea operaiunilor programate i sincronizarea tuturor funciilor calculatorului. Frecvena ceasului se msoar n MHz. Cu ct aceast frecven este mai mare cu att microprocesorul este mai performant deoarece ea este direct proporional cu viteza cu care microprocesorul execut instruciunile, deci cu viteza de lucru a calculatorului. B.Dimensiunea registrelor interne i a magistralei de date Cu ct dimensiunea regitrilor microprocesorului este mai mare, cu att crete viteza de lucru a acestuia, aceasta deoarece crete capacitatea de memorare n interiorul microprocesorului (n regitrii si) i deci numrul de operaii de transfer cu memoria intern (care necesit timp) scade. De asemenea, dimensiunea magistralei de date influeneaz viteza de lucru a microprocesorului ntruct debitul de date care circul pe magistral este direct proporional cu dimensiunea acesteia. O magistral de date ngust poate gtui un calculator, chiar dac toate celellate componente sunt rapide. C. Dimensiunea memoriei cache Toate microprocesoarele, ncepnd cu familia 486 dispun de o component standard, incluznd un controler pentru memoria cache (memoria tampon rapid). Memoria cache este o zon de memorie foarte rapid cu rol de a pstra o parte din seturile de instruciuni i de date cu care se lucreaz n mod curent. Acest memorie poate lucra integral n ritmul procesorului, ea fiind accesat fr cicluri de ateptare. Aceast soluie face ca procesorul s nu mai stea n ateptarea codurilor de instruciuni sau a datelor primite de la memoria principal, mult mai lent, ducnd la mbuntirea performanelor. Cu ct memoria cache este mai mare, cu att viteza microprocesorului crete. 2. Dimensiunea memoriei interne ce poate fi accesat la un moment dat 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 s poat fi executat trebuie s se gseasc neaprat n memoria intern. 3. 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 mai multe domenii de activitate pot fi abordate. O instruciune sau o comand transmis de utilizator, prin program, conine o serie de informaii privind natura operaiei sau funciei ce trebuie executat, operanzii care particip la realizarea operaiunilor aritmetice sau logice, locul unde se afl operanzii sau unde se vor depune

19

rezultatele prelucrrii, componentele sistemului ce trebuie activate pentru executarea operaiunilor. Instruciunile din setul recunoscut de procesor pot fi grupate n: - instruciuni aritmetice; - instruciuni de transfer a datelor - generale, de conversie, de intrare/ieire etc. - instruciuni de prelucrare a irurilor; - instruciuni de manipulare a informaiilor la nivel de bit; - instruciuni de control a programelor, salt condiionat, salt necondiionat, iteraii i ntreruperi; - instruciuni logice (AND, OR, NOT, XOR, TEST), de deplasare i rotire (stnga, dreapta i dublu sens).
4. Fiabilitatea i costul de fabricaie

Funcionarea corect, pe o perioad mai ndelungat a microprocesorului indic o fiabilitate soprit i care raportat la costul acestuia constituie criteriile de decizie n alegerea unui anumit tip de microcalculator. Performanele procesorului pot fi exprimate prin:

durata ciclului procesorului, lungimea cuvntului, repertoriul de instruciuni, durata executrii instruciunilor. Tipul microprocesorului

Durata ciclului procesorului reprezint intervalul de timp n care se efectueaz un transfer ntre dou registre ale procesorului. Cuvntul microprocesorului reprezint numrul de bii ntotdeauna multiplu de octei care pot fi prelucrai la un moment dat de ctre microprocesor (de exemplu 8 bii,16 bii,32 bii,64 bii). Cu ct cuvntul are mai muli bii, cu att viteza de lucru a microprocesorului este mai mare i el este mai performant. Repertoriu de instructiuni conine mnemonicele instruciunilor au caracter orientativ. Durata executrii unei instruciuni reprezint timpul necesar desfurrii fazei de citireinterpretare i a fazei de execuie a acelei instruciuni. Tipul microprocesorului definete apartenena microprocesorului la o familie de microprocesoare care au caracteristici comune.

20

Pe calculatoarele IBM-PC, ct i pe cele compatibile IBM se ntlnesc microprocesoarele din familiile INTEL 80x86, unde x=0, 1, 2, 3, 4, 5, 6, Cu ct x este mai mare, cu att microprocesorul este mai performant (de exemplu, 80686) va putea nelege i executa instruciunile unui program scris pentru un microprocesor mai puin performant (de exemplu, 80486). Procesoarele folosite de calculatoarele IBM-PC sau compatibile IBM-PC sunt produse de firme ca Intel, AMD, Cyrix, etc. Familia din care acestea fac parte se stabilete prin compararea performanelor cu familiile de procesoare Intel: 286, 386, 486, Pentium, PentiumII, PentiumIII, PentiumIV,etc. n cadrul aceleiai familii, microprocesoarele sunt compatibile ntre ele. Trebuie amintit ca un calculator poate avea unul sau mai multe procesoare . Placile de baza normale permit prezenta unui singur procesor , nsa sunt producatori ce ofera optiunea de dual processor. Astfel n sistemele produse de Digital , HP se pot ntlni ntre 2-8 procesoare. Problema este ca numai anumite sisteme de operare stiu sa foloseasca multiprocesarea (Linux , SunOs , Unix , WindowsNT) . Astfel n Windows 9x prezenta unui processor suplimentar nu va influenta cu nimic performanta sistemului. Sistemele multiprocessor sunt folosite n servere sau n statii de lucru cu flux mare de date (CAD , GIS , etc) . Un alt motiv de a folosi un sistem multiprocessor este securitatea oferita. Astfel n cazul unei defectiuni produse la unul din procesoare conducerea va fi luata de celalalt . 5.3 CUM FUNCTIONEAZA UN CIP PENTIUM Pas 1. Microprocesorul Pentium de la Intel este alcatuirt din doua bucati de siliciu. Una este unitatea centrala de prelucrare de 5,5-9,5 milioane de tranzistori, unde sunt executate intructiunile programelor. Cealalta este o memorie ascunsa 2 (cache 2, L2), de mare viteza, special conceputa. Cei 15,5 milioane de tranzistori ai sai pot stoca pana la 512 kilobytes de date si cod. Primele procesoare foloaseau, de regula, o memorie cache separata de procesor, care de regula facea parte din placa de baza a calculatorului. Pas 2. Procesorul si memoria cache partajeaza aceeasi interfata pe 64 de biti pentru informatiile calculatorului. Codul de program sau datele manipulate de codul respectiv intra si ies din cip la viteza maxima a magistralei (bus) calculatorului personal, nu mai mult de 100MHz chiar si pentru procesoarele care functioneaza intern la 200 MHz(la puterea 20). O mare parte din designul pentiumului este structurata pentru a micsora piedica reprezentata de magistrala reducand numarul de ori in care un ceas cicleaza cel mai mic interval de timp in care un calculator poate realiza o operatiune fara ca procesorul sa finalizeze o operatiune. Pas 3. Atunci cand informatiile intra in procesor prin intermediul unitatii de interfata cu magistrala (bus interface unit, BIU), aceasta duplica informatiile, trimite o copie la memoria L2
21

cache care este strans legata de unitatea centrala de prelucrare si o alta la o pereche de memorii ascunse de nivelul 1 (L1 cache), a caror marime variaza de la 8 la 16 KB si care sunt construite direct in unitatea centrala de prelucrare. Unitatea de interfata a magistralei trimite codul de program la memoria ascunsa de instructiuni L1( instructiuni cahe sau l-cache) si trimite date care trebuie sa fie folosite de cod catre o alta memorie ascunsa L1, memoria ascunsa de date (data cache, D-cache). Pas4. In timp ce unitatea de apelare/decodare (fetch/decode unit) extrage instructiunile din memoria cache de instructiuni, unitatea branch target buffer (BTB) compara fiecare instructiune cu o inregistrare dintr-un tampon separat, pentru a vedea daca o anumita instructiune nu a fost folosita anterior. Unitatea branch target buffer cauta in particular instructiuni care implica defalcarea (branching), o situatie in care executia programului poate urma oricare din doua cai. Daca unitatea branch target buffer gaseste o instructiune de defalcare, el prezice, pe baza experientei din trecut, calea pe care o va lua programul. Predictiile sunt corecta in proportie de peste 90% din cazuri. Pas 5. In timp ce unitatea de apelare/decodare extrage instructiunile in ordinea prezisa de unitatea branch target buffer, trei decodoare care lucreaza in paralel defalcheaza instructiunile mai complexe in mu-ops, care sunt micro-operatiuni mai mici, pe 274 biti. Unitatea de livrare/executie (dispatch/execution unit) proceseaza mai rapid mai multe micro-operatiuni decat ar procesa o singura instructiune de nivel mai inalt. Pas 6. Unitatea de decodare trimite toate micro-operatiunile la cartelul de instructiuni (instruction pool), care mai este denumit si Tampon de re-ordonare (ReOrder Buffer). Acesta contine doua unitati aritmetice logice (arithmetic logic units, ALUs) care gestioneaza toate calculele care implica numere intregi. Unitatile aritmetice logice folosesc un tampon circular, cu un cap si o coada, care contine micro-operatiunile in ordinea in care unitatea BTB estimeaza ca va fi nevoie de ele. Pas 7. Unitatea de livrare/executie verifica fiecare micro-operatiune din tampon, pentru a vedea daca are toate informatiile necesare pentru procesarea sa si, atunci cand gaseste o microoperatiune gata de procesare, unitatea o executa, stocheaza rezultatul in chiar micro-operatiunea respectiva si o marcheaza ca efectuata. Pas 8. Daca o micro-operatiune are nevoie de mai multe date din memorie, unitatea de executie trece peste ea si procesorul cauta informatiile mai intai in memoria cache L1 aflata in imediata apropiere. Daca datele nu se afla aici, procesorul verifica memoria cache L2, de dimensiuni mult mai mari. Deoarece memoria cache L2 este integrata cu unitatea centrala de prelucrare, informatiile se transfera intre ele de 2-4 ori mai repede decat intre unitatea centrala de prelucrare si magistrala externa. La o viteza a cipului de 150MHz, informatiile sunt recuperate cu o rata de 1,2 GB pe secunda, in comparatie cu 528 MB /s, daca unitatea centrala de prelucrare trebuie sa ajunga la memoria externa pentru a obtine informatiile.

22

Pas 9. In loc sa stea inactiva pana cand informatiile sunt apelate, unitatea de executie continua inspectarea fiecarei micro-operatiuni din tampon. Atunci cand ea gaseste o micro-operatiune care are toate informatiile care are toate informatiile de care este nevoie pentru procesarea sa, unitatea o executa, stocheaza rezultatele in chiar micro-operatiunea respectiva si trece la urmatoarea micro-operatiune. Aceastqa procedura este denumita executie speculativa, deoarece ordinea micro-operatiunilor din tamponul circular se bazeaza pe prezicerile unitatii BTB. Unitatea executa pana la cinci micro-operatiuni simultan. Atunci cand unitatea de executie ajunge la sfarsitul tamponului, ea reia de la inceput, verificand din nou toate micro-operatiunile, pentru a vedea daca vreuna dintre ele a primit datele de care are nevoie pentru a fi executata. Pas 10. Daca o operatiune implica numere cu virgula mobila (floating-point numbers), cum ar fi 3,14 sau 0,33333, unitatile aritmetice logice transmit sarcina unitatii matematice cu vigula mobila, care contine instrumente de procesare concepute pentru manipularea rapida a numerelor cu virgula mobila. Pas 11. Atunci cand o micro-operatiune care a fost amanata este in cele din urma procesata, unitatea de executie compara rezultatele cu cele prezise de unitatea BTB. Atunci cand prezicerea este eronata, o componenta numita unitate de executie a sariturii (jump execution unit, JEU) muta marcatorul de final de la ultima micro-operatiune la aceea care a prezis ca toate micro-opertiunile de dupa marcatorul de final trebuie ignorte si pot fi supra-scrise de alte microoperatiuni. Se transmite BTB ca predictia sa era incorecta si informatiile respective devin parte din viitoarele sale preziceri. Pas 12. Intre timp, tamponul cicular este inspectat, de asemenea, de catre unitatea de retragere (retirement unit). El verifica sa vada daca micro-operatiunea de la inceputul tamponului a fost executata. Daca nu a fost executata, unitatea de retragere continua sa verifice pana cand ea a fost procesata. Apoi, unitatea de retragere verifica a doua si a treia micro-operatiune. Daca acestea sunt deja executate, unitatea trimite toate cele trei rezultate numarul maxim catre tamponul de stocare. Acolo, unitatea de prezicere le verifica o ultima data inainte de a fi trimise la locul corespunzator din memoria RAM a sistemului. 6. LIMBAJE DE NIVEL NALT I DE NIVEL SCAZUT. INSTRUCIUNI Microprocesoarele au o mulime fix, restrns, de instruciuni denumit mulimea de instruciuni main (sau cod-main). Cu ajutorul acestor instruciuni microprocesoarele pot fi programate s execute sarcinile pe care le dorim. Fiecare productor de cipuri (procesoare), fie c este vorba de Intel, IBM, Sun sau DEC proiecteaz i produce microprocesoare i computere ce posed un limbaj propriu nativ propria mulime de instruciuni main. Acest limbaj conine, de regul, 100-200 de instruciuni diferite. Nu exist n acest caz un standard universal recunoscut cum ar fi codurile ASCII sau UNICODE, spre exemplu.

23

n afara acestor limbaje main ce posed pn la cteva sute de instruciuni, s-au dezvoltat aa numitele limbaje de nivel nalt (HLL High Level Language). De aceea, limbajele main sunt cunoscute i sub titulatura de limbaje de nivel jos (LLL Low Level Language). Limbajelede nivel nalt sunt preferate de regul de ctre programatori, deoarece acestea ofer un set de instruciuni i concepte apropiate de limbajul natural. Exemple: BASIC, Pascal, C, C++, Java. Instruciunile unui astfel de limbaj de nivel nalt trebuie ns translatate n codul main de nivel jos pentru ca microprocesorul s le neleag i s le ruleze. Aceast translatare expandeaz o instruciune HLL n 3-10 instruciuni LLL. Exemplu: HLL (C) ASM 2+3; MOV ax, 2 MOV bx, 3 ADD ax,bx 0010 0000 0011 1001 0001 0010 0000 0001 0001 0010 0011 0100

Cod binar main:

n primele stadii de dezvoltare ale computerelor problema de baz era cum s fie scris un program i apoi cum s fie introdus n memoria computerului. Iniial, programele erau scrise de mn n binar i introduse n memorie. Instruciunile main pot fi grupate n patru mari categorii. Ele pot fi instruciuni pentru: - Transferul i manipularea datelor; - Operaii de intrare/ieire; - Transferul controlului programului; - Controlul mainii (termin procesarea, reseteaz maina etc.). 7. COMPILATOARE I ASAMBLOARE Compilatoarele translateaz instruciunile HLL n binar cod main pentru a fi direct executate de ctre computer. Ele au devenit componente de baz ntr-un sistem de calcul, reflectnd, de regul, eficiena cu care resursele harware sunt exploatate de ctre programatori. nainte de apariia limbajelor de nivel nalt i a compilatoarelor, programatorii foloseau limbajul de asamblare (ASM) i asambloarele. Acest lucru avea, de asemenea, avantajul de a nu scrie programe direct n binar.

24

Translatarea unui program HLL se poate face fie prin intermediul unui compilator, fie prin intermediul unui interpretor. Limbajele BASIC i Java au pornit la nceput folosind interpretoare, dar acum exist i compilatoare pentru ele. Pentru a fi executat de ctre microprocesor, un program trebuie s parcurg urmtoarele etape: - Editare (EDIT) - Compilare (COMPILE) - Editare de legturi (LINK) - ncrcare n memorie (LOAD)

8. ELEMENTE ALE LIMBAJULUI DE ASAMBLARE 8.1. INTRODUCERE N LIMBAJUL DE ASAMBLARE INTEL Limbajul de asamblare posed instruciuni cod-main, mnemonice (provin de la cuvintele n englez ce specific aciunea lor) precum ADD, MOV, SUB sau JMP. Programul scris folosind un limbaj de asamblare apare sub forma unei liste de de mnemonice ce pot fi convertite uor n limbajul de cod binar. Programele ce fac aceast translatare se numesc asambloare. Exemple de limbaje de asamblare sunt: MASM (Microsoft Assembler) i TASM (Turbo Assembler dezvoltat de firma Borland). 8.2. Formatul general al unei instruciuni n limbaj de asamblare O linie de cod scris n limbaj de asamblare are urmtorul format general: <nume> <instruciune/directiv> <operanzi> <;comentariu> unde: - <nume> - reprezint un nume simbolic opional; - <instruciune/directiv> - reprezint mnemonica (numele) unei instruciuni sau a unei directive; - <operanzi> - reprezint o combinaie de unul, doi sau mai muli operanzi (sau chiar nici unul), care pot fi constante, referine de memorie, referine de regitri, iruri de caractere, n funcie de structura particular a instruciunii;
25

- <;comentariu> - reprezint un comentariu opional ce poate fi plasat dup caracterul ; pn la sfritul liniei respective de cod.

8.3. Instruciuni generale (mnemonice)


o o o

MOV - mutare de informaie, PUSH - punere de informaii n memoria organizat ca o stiv, POP - aducerea informaiei din memoria stiv;

instruciuni de intrare/ieire
o

IN - depunerea n registrul acumulator a informaiei stocate n registrul de intrare/ieire (portul de date), OUT - scrierea n portul de date a informaiei aflate n registrul acumulator;

instruciuni aritmetice
o o o o

adunare (ADD, ADC, INC etc.), scdere (SUB, DEC, NEG, CMP etc.), nmulire (MUL, IMUL etc.), mprire (DIV, IDIV etc.);

instruciuni de manipulare a irurilor de bii


o o o

operaii logice (NOT, AND, OR, XOR, TEST), deplasare (SHL, SAL, SHR, SAR), rotire (ROL, ROR, RCL, RCR);

instruciuni de transfer
o o o o

salt necondiionat (CALL, RET, JMP), salt condiionat - prin testarea indicatorilor de condiii (JC, JNC, JE, JG, JL etc.), cicluri (LOOP etc.), ntreruperi (INT, IRET etc.);
26

instruciuni de sincronizare extern: HLT, WAIT, NOP etc.

8. Regitrii microprocesorului Intel Regitrii (sau registrele) microprocesorului reprezint locaii de memorie speciale aflate direct pe cip; din aceast cauz reprezint cel mai rapid tip de memorie. Un lucru deosebit legat de regitri este faptul c fiecare dintre acetia au un scop bine precizat, oferind anumite funcionaliti speciale, unice. Exist patru mari categorii de regitri: 1. 2. 3. 4. Regitrii de uz general, Registrul indicatorilor de stare (flags), Regitrii de segment, Registrul pointer de instruciune.

1. Regitrii de uz general Regitrii de uz general sunt implicai n operarea majoritii instruciunilor, drept operanzi surs sau destinaie pentru calcule, copieri de date, pointeri la locaii de memorie sau cu rol de contorizare. Fiecare dintre cei 8 regitrii de uz general AX, BX, CX, DX, SP, BP, DI,SI sunt regitrii pe 16 bii pentru microprocesorul 8086, iar de la procesorul 80386 ncoace au devenit regitrii pe 32 de bii, denumii, respectiv: EAX, EBX, ECX, EDX, ESP, EBP, EDI, ESI ( Extended ). Mai mult, cei mai puin semnificativi 8 bii ai regitrilor AX, BX, CX, DX formeaz respectiv regitrii AL, BL, CL, DL (Low), iar cei mai semnificativi 8 biiai acelorai regitrii formeaz regitrii AH, BH, CH, DH (High). Registrul AX (EAX) Registrul AX (EAX) este denumit i registrul acumulator, fiind principalul registru de uz general utilizat pentru operaii aritmetice, logice i de deplasare de date. Totdeauna operaiile de nmulire i mprire presupun implicarea registrului AX. Unele dintre instruciuni sunt optimizate pentru a se executa mai rapid atunci cnd este folosit AX. n plus, registrul AX este folosit i pentru toate transferurile de date de la/ctre porturile de Intrare/Ieire. Poate fi accesat pe poriuni de 8, 16 sau 32 de bii, fiind referit drept AL (cei mai puin semnificativi 8 bii din AX), AH (cei mai semnificativi 8 bii din AX), AX (16 bii) sau EAX (32 de bii). Acest lucru este utilizat pentru a lucra cu date pe un octet, permind ca registrul AX s fie folosit pe postul a doi regitri separai (AH i AL). Prezentm n continuare alte cteva exemple de instruciuni ce utilizeaz registrul AX. De remarcat este faptul c transferurile de date se fac pentru instruciunile (denumite i mnemonice)
27

Intel de la dreapta spre stnga, exact invers dect la Motorola, unde transferul se face de la stnga la dreapta. Exp: Urmtoarele trei instruciuni seteaz registrul AH cu valoarea 1, incrementeaz cu 1 aceast valoare i apoi o copiaz n registrul AL: MOV AH, 1 INC AH MOV AL, AH Valoarea final a registrului AX va fi 22 (AH = AL = 2). Registrul BX (EBX) Registrul BX (Base), sau registrul de baz poate stoca adrese pentru a face referire la diverse structuri de date, cum ar fi vectorii stocai n memorie. O valoare reprezentat pe 16 bii stocat n registrul BX poate fi utilizat ca fiind o poriune din adresa unei locaii de memorie ce va fi accesat. Spre exemplu, urmtoarele instruciuni ncarc registrul AH cu valoarea din memorie de la adresa 21. MOV AX, 0 MOV DS, AX MOV BX, 21 MOV AH, [ BX ] Se observ c am ncrcat valoarea 0 n registrul DS nainte de a accesa locaia de memorie referit de registrul BX. Acest lucru este datorat segmentrii memoriei (segmentare discutat mai n detaliu n seciunea consacrat regitrilor de segment); implicit, atunci cnd este folosit ca pointer de memorie, BX face referire relativ la registrul de segment DS adresa la care face referire este o adres relativ la adresa de segment coninut n registrul DS). Registrul CX (ECX) Specializarea registrului CX (Counter) este numrarea; de aceea, el se numete i registrul contor. De asemenea, registrul CX joac un rol special atunci cnd se folosete instruciunea LOOP. Rolul de contor al registrului CX se observ imediat din exemplul urmtor: MOV CX, 5 start: <instruciuni ce se vor executa de 5 ori>
28

SUB CX, 1JNZ start Deoarece valoarea iniial a lui CX este 5, instruciunile cuprinse ntre eticheta start i instruciunea JNZ se vor executa de 5 ori (pn cnd registrul CX devine 0). Instruciunea SUB CX, 1 decrementeaz registrul CX cu valoarea 1 iar instruciunea JNZ start determin saltul napoi la eticheta start dac CX nu are valoarea 0. n limbajul microprocesorului exist i o instruciune special legat de ciclare. Aceasta este instruciunea LOOP, care este folosit n combinaie cu registrul CX. Liniile de cod urmtoare sunt echivalente cu cele anterioare, dar aici se utilizeaz instruciunea LOOP: MOV CX, 5 start: <instruciuni ce se vor executa de 5 ori> LOOP start Se observ c instruciunea LOOP este folosit n locul celor dou instruciuni SUB i JNZ anterioare; LOOP decrementeaz automat registrul CX cu 1 i execut saltul la eticheta specificat (start) dac CX este diferit de zero, totul ntr-o singur instruciune. Registrul DX (EDX) Registrul de uz general DX (Data register), denumit i registrul de date, poate fi folosit n cazul transferurilor de date Intrare/Ieire sau atunci cnd are loc o operaie de nmulire sau de mprire. Instruciunea IN AL, DX copiaz o valoare de tip Byte dintr-un port de intrare, a crui adres se afl n registrul DX. Urmtoarele instruciuni determin scrierea valorii 101 n portul I/O 1002: ... MOV AL, 101 MOV DX, 1002 OUT DX, AL Referitor la operaiile de nmulire i mprire, atunci cnd mprim un numr pe 32 de bii la un numr pe 16 bii, cei mai semnificativi 16 bii ai dempritului trebuie s fie n DX. Dup mprire, restul mpririi se va afla n DX. Cei mai puin semnificativi 16 bii ai dempritului trebuie s fie n AX iar ctul mpririi va fi n AX. La nmulire, atunci cnd se nmulesc dou numere pe 16 bii, cei mai semnificativi 16 bii ai produsului vor fi stocai n DX iar cei mai puin semnificativi 16 bii n registrul AX. Registrul SI

29

Registrul SI (Source Index) poate fi folosit, ca i BX, pentru a referi adrese de memorie. De exemplu, secvena de instruciuni urmtoare: MOV AX, 0 MOV DS, AX MOV SI, 33 MOV AL, [ SI ] ncarc valoarea (pe 8 bii) din memorie de la adresa 33 n registrul AL. Registrul SI este, de asemenea, foarte folositor atunci cnd este utilizat n legtur cu instruciunile dedicate tipului STRING (ir de caractere). Registrul DI Registrul DI (Destination Index) este utilizat n mod asemntor registrului SI. n secvena de instruciuni urmtoare: ... MOV AX, 0 MOV DS, AX MOV DI, 1000 ADD BL, [ DI ] se adun la registrul BL valoarea pe 8 bii stocat la adresa 1000. Registrul DI este puin diferit fa de registrul SI n cazul instruciunilor de tip string; dac SI este ntotdeauna pe post de pointer surs de memorie, registrul DI servete drept pointer destinaie de memorie. Mai mult, n cazul instruciunilor de tip string, registrul SI adreseaz memoria relativ la registrul de segment DS, n timp ce DI conine referiri la memorie relativ la registrul de segment ES. n cazul n care SI i DI sunt utilizai cu alte instruciuni, ei fac referire la registrul de segment DS. Registrul BP Rolul regitrilor BP i SP este prezenta in contextul utilizarii stivei. Stiva reprezint o poriune special de locaii adiacente din memorie. Aceasta este coninut n cadrul unui segment de memorie i identificat de un selector de segment memorat n registrul SS (cu excepia cazului n care se folosete modelul nesegmentat de memorie n care stiva poate fi localizat oriunde n spaiul de adrese liniare al programului). Stiva este o poriune a memoriei unde valorile pot fi stocate i accesate pe principul LIFO (Last In First Out), drept urmare ultima valoare stocat n stiv este prima ce va fi citit din stiv. De regul, stiva este utilizat la apelul unei proceduri sau la ntoarcerea dintr-un apel de procedur (principalele instruciuni folosite sunt CALL i RET).

30

Registrul pointer de baz, BP (Base Pointer) poate fi utilizat ca pointer de memorie precum regitrii BX, SI i DI. Diferena este aceea c, dac BX, SI i DI sunt utilizai n mod normal ca pointeri de memorie relativ la segmentul DS, registrul BP face referire relativ la segmentul de stiv SS. Deoarece BX, SI i DI se refer la segmentul de date, nu exist o modalitate eficient de a folosi regitrii BX, SI, DI pentru a face referire la parametrii salvai n stiv din cauz c stiva este localizat ntr-un alt segment de memorie. Registrul BP ofer rezolvarea acestei probleme asigurnd adresarea n segmentul de stiv. Spre exemplu, instruciunile: ... PUSH BP MOV BP, SP MOV AX, [ BP+4 ] fac s se acceseze segmentul de stiv pentru a ncrca registrul AX cu primul parametru trimis de un apel C unei rutine scrise n limbaj de asamblare. n concluzie, registrul BP este conceput astfel nct s ofere suport pentru accesul la parametri, variabile locale i alte necesiti legate de accesul la poriunea de stiv din memorie.

Fig. Structura stivei

Registrul SP
31

Registrul SP (Stack Pointer), sau pointerul de stiv, reine de regul adresa de deplasament a urmtorului element disponibil n cadrul segmentului de stiv. Acest registru este, probabil, cel mai puin general dintre regitrii de uz general, deoarece este dedicat mai tot timpul administrrii stivei. Registrul BP face n fiecare clip referire la vrful stivei acest vrf al stivei reprezint adresa locaiei de memorie n care va fi introdus urmtorul element n stiv. Aciunea de a introduce un nou element n stiv se numete mpingere (n englez push); de aceea, instruciunea respectiv poart numele de PUSH. n mod asemntor, operaia de scoatere a unui element din vrful stivei poart, n englez, numele de pop, iar instruciunea echivalent operaiei se numete POP. Este permis stocarea valorilor n registrul SP precum i modificarea valorii sale prin adunare sau scdere la fel ca i n cazul celorlali regitri de uz general; totui, acest lucru nu este recomandat dac nu suntem foarte siguri de ceea ce facem. Prin modificarea registrului SP, vom modifica adresa de memorie a vrfului stivei, ceea ce poate avea efecte neprevzute, aceasta pentru c instruciunile PUSH i POP nu reprezint unicele modaliti de utilizare a stivei. Indiferent dac apelm o subrutin sau ne ntoarcem dintr-un astfel de apel de subrutin, fie procedur sau funcie, n acest caz este folosit stiva. Unele resurse de sistem, precum tastatura sau ceasul de sistem, pot folosi stiva n momentul trimiterii unei ntreruperi la microprocesor. Acest lucru presupune c stiva este folosit continuu, deci dac se modific registrul SP (adic adresa stivei), datele din noile locaii de memorie nu vor mai fi cele corecte. n concluzie, registrul SP nu trebuie modificat n mod direct; el este modificat automat n urma instruciunilor POP, PUSH, CALL, RET. Oricare dintre ceilali regitri de uz general pot fi modificai n mod direct n orice moment. 8.2.2. Registrul pointer de instruciuni (IP) Registrul pointer de instruciuni este folosit, ntotdeauna, pentru a stoca adresa urmtoarei instruciuni ce va fi executat de ctre microprocesor. Pe msur ce o instruciune este executat, pointerul de instruciune este incrementat i se va referi la urmtoarea adres de memorie (unde este stocat urmtoarea instruciune ce va fi executat). De regul, instruciunea ce urmeaz a fi executat se afl la adresa imediat urmtoare instruciunii ce a fost executat, dar exist i cazuri speciale (rezultate fie din apelul unei subrutine prin instruciunea CALL, fie prin ntoarcerea dintr-o subrutin, prin instruciunea RET). Pointerul de instruciuni nu poate fi modificat sau citit n mod direct; doar instruciuni speciale pot ncrca acest registru cu o nou valoare. Registrul pointer de instruciune nu specific pe de-a ntregul adresa din memorie a urmtoarei instruciuni ce va fi executat, din aceeai cauz a segmentrii memoriei. Pentru a aduce o instruciune din memorie, registrul CS ofer o adres de baz iar registrul pointer de instruciuneindic adresa de deplasament plecnd de la aceast adres de baz.
32

Fig. Regitrii de segment, pointerul de instruciuni i registrul indicatorilor de stare

33

8.2.3. Registrul indicatorilor de stare (FLAGS) pe 16 bii conine informaii legate de starea microprocesorului precum i de rezultatele ultimilor instruciuni executate. Un indicator de stare (flag) este n sine o locaie de memorie de 1 bit ce indic starea curent a microprocesorului i modalitatea sa de operare. Un indicator se spune c este setat dac are valoarea 1 i nu este setat n caz contrar. Indicatorii de stare se modific dup execuia unor instruciuni aritmetice sau logice. Exemple de indicatori de stare: - C (Carry) indic apariia unei cifre binare de transport n cazul unei adunri sau mprumut n cazul unei scderi; - O (Overflow) apare n urma unei operaii aritmetice. Dac este setat, nseamn c rezultatul nu ncape n operandul destinaie; - Z (Zero) indic faptul c rezultatul unei operaii aritmetice sau logice este zero; - S (Sign) indic semnul rezultatului unei operaii aritmetice; - D (Direction) cnd este zero, procesarea elementelor irului se face de la adresa mai mic la cea mai mare, n caz contrar este invers; - I (Interrupt) controleaz posibilitatea microprocesorului de a rspunde la evenimente externe (apeluri de ntrerupere); - T (Trap) este folosit de programele de depanare (de tip debugger), activnd sau nu posibilitatea execuiei programului pas cu pas. Dac este setat, UCP ntrerupe fiecare instruciune, lsnd programul depanator s execute programul respectiv pas cu pas; - A (Auxiliary carry) suport operaii n codul BCD. Majoritatea programelor nu ofer suport pentru reprezentarea numerelor n acest format, de aceea se utilizeaz foarte rar; - P (Parity) este setat n conformitate cu paritatea biilor cei mai puin semnificativi ai unei operaii cu date. Astfel, dac rezultatul unei operaii conine un numr par de bii 1, acest indicator este setat. Dac numrul de bii 1 din rezultat este impar, atunci indicatorul PF este zero. Este folosit de regul de programe de comunicaii, dar Intel a introdus acest indicator nu pentru a ndeplini o anumit funcionalitate, ci pentru a asigura compatibilitatea cu vechile microprocesoare ale familiei x86. 8.3.4 Regitrii de segment Proprietile regitrilor de segment sunt n strns legtur cu noiunea de segmentare a memoriei. Premisa de la care se pleac este urmtoarea: 8086 este capabil s adreseze 1MB de memorie, astfel c sunt necesare adrese pe 20 de bii pentru a cuprinde toate locaiile din spaiul de 1 MB de memorie. Totui, registrele utilizate sunt registre pe 16 bii, deci a trebuit s se gseasc o soluie pentru aceast problem. Soluia gsit se numete segmentarea memoriei; n acest caz memoria de 1MB este mprit n 16 segmente de cte 64 KB (16*64 KB = 1024 KB = 1 MB). Noiunea de segmentare a memoriei presupune utilizarea unor adrese de memorie formate din dou pri. Prima parte reprezint adresa segmentului iar cea de-a doua poriune reprezint adresa de deplasament, sau offset-ul.
34

Exemplu de program scris folosind instructiunile limbajuli de asamblare : Cerinta : Sa se scrie secventa de cod cu ajutorul careia se pot interschimba doua linii dintr-o matrice. Rezolvare:
main() { long matr[12]={1,2,3,4,5,6,7,8,9,10,11,12}; //matricea ocupa in memorie 12*4 octeti long col=3; long i=1; long j=4; long tempESP=0; long tempEBP=0; long vari=0; i long varj=0; j long sz=sizeof(long); //incarcam adresa efectiva a primului element al matricei _asm lea ebx,matr //calculam offset-ul primului octet al primului element din linia i, adica (i-1) x col _asm mov eax,i _asm sub eax,1 _asm mul col _asm mul sz ;luam in calcul faptul ca elementele matricei sunt de tip long, adica sunt variabile pe 4 octeti //stim offset-ul (calculat in eax) si, ca atare, putem calcula adresa primului element al liniei i; memoram //in <vari> aceasta adresa _asm add ebx,eax _asm mov vari,ebx //REincarcam adresa efectiva a primului element al matricei _asm lea ebx,matr //calculam indicele primului element din linia j, adica (j-1) x col _asm mov eax,j _asm sub eax,1 _asm mul col _asm mul sz ;luam in calcul faptul ca elementele matricei sunt de tip long, adica sunt variabile pe 4 octeti 35 //variabila in care memoram adresa primului element din linia

//variabile utilizate pt. memorarea pointerului (cursorului) si bazei stivei //variabila in care memoram adresa primului element din linia

//stim indicele (calculat in eax) si, ca atare, putem calcula adresa primului element al liniei j; memoram in <varj> aceasta adresa _asm add ebx,eax _asm mov varj,ebx _asm mov ecx,col _asm mov eax,vari _asm mov ebx,varj _asm mov tempESP,esp ;salvam indicatorul de stiva _asm mov tempEBP,ebp ;salvam baza stivei _asm bucla: _asm push [eax] _asm push [ebx] _asm mov edx,esp _asm pop [eax] _asm mov esp,edx _asm add esp,sz matricei noastre sunt pe 4 octeti) _asm mov edx,esp _asm pop [ebx] _asm mov esp,edx //restauram pointerul stivei de dinanintea ultimului pop _asm add esp,sz //incrementam pointerul stivei cu patru octeti (elementele matricei noastre sunt pe 4 octeti) _asm add eax,sz _asm add ebx,sz _asm loop bucla _asm mov esp,tempESP _asm mov ebp,tempEBP return 0; //restauram pointerul si baza stivei memorate anterior //ne deplasam la urmatorul element din linia i //ne deplasam la urmatorul element din linia j //salvam cursorul (pointerul) stivei //scoatem ultima valoare dusa in stiva in locul valorii din EAX //restauram pointerul stivei de dinanintea ultimului pop //incrementam pointerul stivei cu patru octeti (elementele //salvam cursorul (pointerul) stivei

9. PLACA DE BAZA Cele mai populare sisteme de calcul ale momentului sunt cele dezvoltate n jurul proiectului IBM PC.

36

Un microcalculator IBM sau o clon PC este format din trei pri: - unitatea sistem (system unit), - tastatura (keyboard) - ecranul (display screen). Unitatea sistem este construit modular. Partea cea mai important este placa de baz (eng. mother board sau main board). Ea conine circuitele electronice cele mai importante: - microprocesorul, - ceasul (clock), - memoria RAM (Random Access Memory) - memoria ROM (Read Only Memory). n plus, unitatea sistem mai conine: sursa de alimentare, ventilatoare i unitile de discuri. Diferitele plachete pentru cuplarea unor dispozitive de intrare-ieire (imprimant, disc, modem etc.) se cupleaz la placa de baz folosind conectorii la magistral. Magistrala (bus) este un canal comun de comunicaie ntre plachetele calculatorului prin care circul semnalele de dialog ntre componente. Plachetele pot fi introduse opional n sloturi (conectori), n funcie de dorina utilizatorului. Cele mai importante plachete sunt: adaptorul video ( display screen adapter), adaptorul sau cuplorul de disc, plachetele de memorie, plachetele de comunicaie (pentru imprimant, modem etc.). Pentru microcalculatoare compatibile IBM-PC se utilizeaz mai multe tronsoane demagistral: ISA (eng. Industry Standard Architecture) , MCA (eng. Micro Channel Pe langa functia de support pentru celelalte componente, placa de baza are rolul de a regla si distribui tensiune procesorului si celorlalte componente . O placa de baza de calitate are variatii mici al intensitatii curentului 'livrat' si mai multe valori ale tensiunii pe care o poate furniza. Porturile seriale sunt destinate conectarii n exterior a deviceurilor care sunt cam putine: modem/mouse. Porturile paralele sunt destinate conectarii imprimantelor sau altor dispozitive ce functioneaza pe acest tip de port (scannere, placi de acizitie, etc) . 10. MEMORIA 10.1. CUVINTE CHEIE: Cap de citire/scriere. Componenta discului care scrie datele pe un dis si il citeste, folosind magnetismul sau laserul. Cilindru. Un cilindru imaginar care trece prin aceleasi piste de pe mai multe platane. Citire. Recuperarea datelor de pe unitatile de stocare, cum ar fi fisiere de pe un disc.

37

Cluster. Un sector sau mai multe sectoare succesive care contin un grup continuu de date. Cea mai mica unitate in care sunt stocate datele pe un disc. Comprimare. Un proces de mutare a datelor redundante intr-un fisier de dimensiuni mici. Cookie. Discul Mylar pe care sunt scrise datele intr-o unitate de discheta. Director. Un set de fisiere legate intre ele; mai este numit dosar in Windows. Fisierele pot fi localizate logic in parti diferite ale discului, dare ele sunt grupate logic intr-un director, care poate contine alte dosare sau sub-directoare. Disc. Orice dispozitiv pentru stocarea fisierelor de calculator. Formatare. Procesul prin care un disc este impartit in piste si sectoare, astfel incat fisierele pot fi stocate si gasite intr- o maniera ordonata. Fragmentare. Procesul prin care fisierele sunt sparte in clustere vast separate. Defragmentarea sau optimizarea corectecteaza fragmentarea, rescriind fisierele sparte in sectoare continue. Gigabyte. Aproximativ un miliard de bytes sau caractere. Prescurtarea este G sau GB. Capacitatile hard discurilor sunt adesea exprimate in gigabytes. Laser. Prescurtarea pentru Light Amplification by Stimulated Emission of Radiation ( amplificarea luminii prin emisie stimulatade radiatii) un dispozitiv care produce o raza ingusta si coerenta de lumina. Coerenta inseamna ca toate undele de lumina se misca la unison, astfel incat raza nu se disperseaza (cu alte cuvinte, nu se imprastie) si nu devine mai slaba, asa cum se intampla cu lumina obisnuita. Numai in citire (read-only). Un dispozitiv de stocare disc sau memorie- in care nu pot fi scrise date noi. Pista. O banda pe un disc, creata prin formatare. Platan. Un disc rigid din metal pe care sunt stocate datele intr-un hard disc. Rata de transfer a datelor (data transfer rate). Numarul de bytes sau megabytes transferati de pe un disc in memorie (sau de pe un dispozitiv de stocare pe altul) intr-o secunda. Sector. O diviziune pe un disc, de forma unei felii de placinta, creata prin formatare. Stocare optica. Discuri care folosesc lasere pentru stocarea si citirea datelor. Tablou de discuri (drive array). Doua sau mai multe unitati de disc legate intre ele, pentru a imbunatati timpul de recuperare a fisierelor si a oferi posibilitatea de corectie a erorilor.
38

Timp de acces (access time). Cat dureaza recuperarea datelor de pe un disc. Timpul de acces este alcatuit din timpul de cautare (seek time) cat timp dureaza pana cand capul de citire/scriere se pozitioneaza asupra unei anumite piste), timpul de stabilizare (settle time) cat dureaza pana la stabilizarea capului, si latenta (latency) cat dureaza pana cand sectorul necesar se roteste pentru a ajunge sub cap. Toti acesti timpi sunt masurati in milisecunde. VFAT (Virtual File Allocation Table ) tabela virtuala de alocare a fisierelor din Windows 95 si 98 reprezinta un fisier special in care un disc stocheaza o inregistrare a locatiilor tuturor fisierelor de pe disc. Numit simplu FAT in DOS. Memorarea informaiilor n sistemul de calcul se realizeaz prin intermediul memoriei. Memoria este spaiul de lucru primar al oricrui sistem de calcul. n funcie de locul ocupat, distingem: memoria central (numit i memoria principal sau intern) i memoria secundar (numit i auxiliar). 10.3. MEMORIA INTERNA Memoria intern este o component principal principal a sistemelor electronice de calcul, avnd rolul de a pstra datele i programele n form binar pe toat durata de prelucrare a datelor participnd mpreun cu microprocesorul la efectuarea operaiilor stabilite prin program. n memoria interna sunt stocate programele i informaiile utilizate de ele n timpul execuiei lor de ctre procesor. Memoria secundar pstreaz cantiti mari de date i programe folosite frecvent i ncrcabile rapid n memoria central. Memoria unui sistem de calcul este caracterizat prin: - capacitate, - timp de acces, - vitez de transfer, - cost, - mod de accesare a informaiei stocate etc. Capacitatea memoriei este definit prin numrul de uniti de informaie (caractere, cuvinte) disponibile pentru stocarea informaiei. n general, capacitatea memoriei se exprim n MB (mega octei, eng. Mega Bytes): 1 MB=1024 KB=102410248 bii). Localizarea zonelor de memorie (intern sau extern) se realizeaz prin intermediul adresei. Prima locaie a memoriei centrale are adresa 0 (zero). Dac unitatea de stocare este octetul, atunci adresa 10 (scris zecimal) reprezint locaia a unsprezecea.

39

Timpul de acces exprim durata intervalului n care poate fi obinut informaia stocat n memorie. Viteza de transfer se exprim prin numrul de uniti de informaie transferate de memorie n unitatea de timp. n funcie de natura accesului la informaia ce o nmagazineaz, memoria central a unui calculator poate fi cu acces numai n citire i respectiv, cu acces n scriere i citire RAM si ROM. Memoria este spaliul de lucru primar al oricarui calculator . Lucrnd n tandem cu CPU (procesorul) are rolul de a stoca date si de a procesa informatii ce pot fi prelucrate imediat si n mod direct de catre processor sau alte dispozitive ale sistemului . Memoria este de asemenea legatura dintre software si CPU . Memoria de tip numai citirea este permis (ROM - Read Only Memory) se mai numete i memorie permanent sau nevolatil, deoarece programele i datele ce au fost nscrise n ea sunt fixate o dat pentru totdeauna. n general, n aceast memorie este depozitat firmware-ul (secven de instruciuni cu destinaie special). Memoria ce permite acces de tip citire-scriere se mai numete memorie cu acces aleator (RAM - Random Access Memory), dei, tot cu acces aleator este i memoria ROM, i este de tip volatil (trebuie s fie alimentat electric pentru a reine date). Din punct de vedere tehnologic deosebim dou tipuri de memorie RAM: DRAM (RAM dinamic) i SRAM (RAM static). Tehnologia DRAM este cea mai ntlnita n sistemele actuale , trebuind sa fie reimprospatata de sute de ori / secunda pentru a retine datele stocate n celulelede memorie (de aici vine si numele) fiecare celula este conceputa ca un mic condensator care stocheaza sarcina electrica . Este prezenta sub doua tipuri de module : SIMM-urile si DIMM-urile . SIMM-ul a fost dezvoltat cu scopul de a fi o solutie usoara pentru upgrade-uri . Magistrala de date este pe 32 biti , fizic modulele prezentnd 72 sau 30 de pini . DIMM-ul a fost folosit nti la sistemele MacIntosch dar a fost adoptat pe PC-uri datorita magistralei pe 64 de biti , avnd 128 pini . EDO RAM (Extended Data Output) este un nou tip de RAM a crui principal proprietate este aceea de a menine datele la dispoziia procesorului, chiar dup iniierea unui nou ciclu de acces la memorie. Aceast modalitate de acces suprapus permite s par mai rapid dect este de fapt. Creterea performanelor prin folosirea acestui tip de memorii este evaluat la 15%. Sunt construite similar cu DRAM-urile, lucreaz ns cu 20% mai rapid, pentru c preiau o parte din munca controlerului de memorie. Acest lucru este posibil pentru c noile cipuri de memorie au o zon pentru memorarea intermediar a datelor. n prezent, aceast memorie este concurat de SDRAM. Furnizorii de componente se orienteaz deja ctre tehnologii mai noi al cror obiectiv este de a rspunde nevoilor crescnde ale procesoarelor, cum sunt RDRAM i MDRAM. Memoria, precum i microprocesorul sunt cip-uri obinute printr-o tehnologie special, numit CMOS (Complementary Metal Oxide Semiconductors). Aceast tehnologie se bazeaz pe combinarea a dou tipuri de semiconductori, PMOS i NMOS. Ele consum extrem de puin energie i constituie memorii RAM. n felul acesta ele pot fi alimentate de la baterie. Este motivul pentru care parametrii de configurare ai PC-ului sunt pstrai nn memoria CMOS.

40

Atributul dinamic specific necesitatea unui interval de timp foarte mic ntre momentele de remprosptare (refresh), pentru a se reine datele stocate n celulele de memorie. DRAM-ul este preferat pentru memoria principal a sistemelor, n timp ce SRAM-ul, care nu necesit o remprosptarea foarte deas, este utilizat n primul rnd la implementarea memoriei cache. Exist mai multe tipuri de module DRAM utilizate n sistemele de calcul moderne:

FPM (Fast Page Mode), EDO (Enhanced Data Out), SDRAM (Synchronous DRAM) etc.

Ultimul tip amintit, face ca procesul de interogare a memoriei principale s fie foarte eficient datorit sincronizrii modulului de memorie cu semnalul de ceas al procesorului. Circuitele de stocare de tip ROM se ncadreaz n urmtoarele clase:

PROM (Programmable ROM) - pentru nregistrarea codului cu ajutorul unui echipament special, odat ce este scris nu se mai poate schimba;

EPROM (Erasable Programmable ROM) - circuit de stocare de tip ROM care poate fi ters cu ajutorul unui mediu n ultraviolet, iar apoi poate fi rescris Memoria cache Rolul memoriei cache const n memorarea datelor i instruciunilor solicitate frecvent de ctre procesor. Memoria cache este primul loc unde procesorul caut datele de care are nevoie. Numai dac acestea nu se afl n memoria cache ele vor fi cutate n memoria principal. Pe placa de baz, memoria cache poate aprea n mai multe feluri: cipuri ce sunt inserate n socluri speciale; deja ncorporat pe placa de baz (des ntlnit pe plcile de Pentium); forma unor mici card-uri (asemntoare unui SIMM - Single In-line Memory Module de memorie) ce sunt introduse n sloturi speciale PBC (Pipelined Burst Cache) ntlnite numai la plci de Pentium. Memoria cache poate fi de dou niveluri: 1. nivelul 1 se afl chiar n interiorul microprocesorului (L1); 2. nivelul 2 se afl pe placa de baz (L2).1
Zaharescu, A., Negrioiu, S., Upgrade-ul ,problema la care v vei gndi ntotdeauna , PC WORLD Romnia, nr. 8-9, 1996, p. 47
1

41

Controlerul de cache i memorie comand accesul la cache-ul second level de pe placa de baz. Memoria cache este compus din module SRAM foarte rapide, care memoreaz datele intermediar. n cazul n care procesorul cere date, controlerul verific pentru nceput dac informaiile sunt depuse doar n memoria cache. Dac nu este cazul, procesorul trebuie s se adreseze memoriei DRAM sau harddisc-ului. Controlerul de memorie regleaz ntreaga comand a busului pentru transferul de date ntre procesor, memoria cache (SRAM)), memoria principal (DRAM) i busul PCI (de exemplu, pentru c el este de mai multe tipuri: ISA, VESA, MCA).2 Memoria cache este o punte ntre memoria RAM sensibil mai lent dar mai ieftin i procesorul rapid. Din punct de vedere al administrrii i utilizrii, memoria intern este identificat prin urmtoarele componente: memoria de baz (convenional); memoria superioar (Upper Memory Area - UMA); memoria nalt (High Memory Area - HMA); memoria extins; memoria expandat. Memoria de baz este format din primii 640 Ko din memoria RAM, fiind componenta de baz a memoriei interne, fr de care nici un calculator nu poate funciona. Ea reprezint partea din memoria intern unde se execut majoritatea programelor-utilizator i unde se ncarc sistemul de operare la pornirea calculatorului. Memoria superioar urmeaz memoriei de baz i ocup o zon de 384 Ko (641la 1024). n mod curent, programele-utilizator nu au acces la aceast zon. Ea este mprit astfel: primii 128 Ko formeaz memoria RAM video, folosit de ctre adaptoarele video; urmtorii 128 Ko sunt rezervai pentru programele soft i programele BIOS (Basic Input Output System) de pe plcile adaptoare. BIOS-ul reprezint o colecie de programe prin care se comunic cu perifericele calculatorului. ultimii 128 Ko sunt rezervai pentru componenta BIOS de pe placa de baz. Tot aici se afl autotestul efectuat pentru punerea sub tensiune i ncrctorul de sistem care dirijeaz sistemul pn la preluarea controlului de ctre sistemul de operare MS-DOS. Memoria extins este aeea parte a memoriei ce poate fi adresat peste 1 Mo, fiind specific procesoarelor ncepnd cu tipul I 80286 i mai puternice. Memoria extins este frecvent utilizat de produsele soft moderne care solicit volume mari de memorie. Primii 64 Ko ai memoriei extinse se numesc memoria nalt (Upper Memory Block) n care ruleaz o parte din programele sistemului de operare MS-DOS dac n fiierul CONFIG.SYS a fost specificat comanda DOS=HIGH. Atunci cnd se lucreaz cu memoria extins, microprocesorul este supus unor protocoale prin care se trece din modul de lucru real n modul de lucru protejat. Aceste protocoale sunt puse la dispoziia utilizatorului fie independent, fie nsoind anumite programe care solicit memoria extins. Sistemul de operare MS-DOS pune la dispoziia utilizatorului managerul de memorie extins HIMEM.SYS care instalat n fiierul CONFIG.SYS asigur lucrul cu memoria extins.
2

Heise, F.i Schirmer, T., Cipuri mici cu efecte mari, CHIP Romnia, nr. 3, 1996, p. 16

42

Memoria expandat este o memorie suplimentar care apare datorit utilizrii incomplete a memoriei superioare. S-a constatat c n BIOS exist zone libere, programele nefiind alipite unul de cellalt. Aceste pori au fost folosite pentru a instala pe calculator memoria expandat. n cazul acestei memorii pot fi stocate, ntr-un volum limitat, programe i date. Aceste date i programe sunt constituite n blocuri (bancuri) de memorie a cror numr se memoreaz ntr-un registru al microprocesorului, ele fiind introduse pe rnd n zonele libere din memoria superioar. Mrimea acestei memorii este limitat de capacitatea registrelor

10.4.NOIUNI DE ADRESARE A MEMORIEI Memoria unui calculator poate fi accesat dac se cunoate o adresde memorie. n acest sens, octeii sunt numerotai secvenial: 0,1,2,3, etc. Componentele hardware lucreaz cu aceste adrese de memorie, cunoscute sub numele de adrese absolute. Programele software folosesc ns alt tip de adresare, adresarea relativ. O adres relativ reprezint o adres de memorie exprimat relativ la o locaie de baz. De exemplu, o rutin a unui program poate fi scris astfel nct primul octet al su se afl la adresa 0 (numit i punct de intrare) iar celelalte adrese sunt exprimate ca adrese de deplasament (offset) relativ la aceast adres. Atunci cnd rutina de program este ncrcat n memorie, adresa absolut de nceput este stocat ntr-un registru, stabilindu-se o adres de baz pentru rutina program. Adresarea relativ are dou scopuri: n primul rnd, permite unei rutine s fie relocalizat n memorie (s poat fi ncrcat ntr-o locaie diferit de memorie de fiecare dat cnd ruleaz). Deoarece fiecare locaie a rutinei este exprimat relativ la punctul de intrare, iar acesta este stocat ntr-un registru de baz, totdeauna este posibil s se calculeze adresa absolut prin adunarea adresei de baz cu adresa de deplasament. n al doilea rnd, deoarece doar adresa de deplasament trebuie stocat n instruciune, sunt necesari mai puini bii pentru a stoca fiecare adres, acest lucru conducnd la existena unor instruciuni de mrime mai mic. 11. MEMORIA EXTERNA (DISCURILE MAGNETICE-HARD-DISKUL) Una dintre cele mai importante uniti de memorare extern este unitatea de disc magnetic. Memorarea informaiei pe discul magnetic urmeaz acelai principiu fizic cu cel utilizat n nregistrarea casetelor i benzilor audio-video. Deosebirea principal ntre cele dou sisteme de memorare este datorat naturii semnalului de nregistrare folosit: analogic, n cazul audio-video i numeric (digital), n cazul discurilor sistemelor de calcul. Diferena fa de benzile magnetice (nregistrate tot numeric) const n modul de acces. Pe band accesul este secvenial, pe disc accesul este direct. Din punct de vedere fizic, o unitate de disc magnetic are n compunere unul sau mai multe platane, fiecare platan cu una sau dou suprafee de nregistrare, attea capete de citire/scriere cte suprafee de nregistrare exist, un bra ce permite accesul de la exterior spre centrul
43

platanului al capetelor de citire/scriere, motoare pentru rotirea platanelor i deplasarea braului, precum i un set de circuite specializate (numit controler, cuplor sau adaptor) pentru comanda ntregului mecanism. Discurile magnetice care conin un singur platan se numesc discuri flexibile (floppy disc), iar platanul propriu-zis se numete dischet. Discurile coninnd mai multe platane se numesc discuri rigide sau discuri dure (harddisc). Att pentru dischete, ct i pentru discul rigid, ntreaga colecie de date formeaz aa-numitul volum. Suprafeele de nregistrare ale unui disc magnetic sunt mprite ntr-un numr fix de cercuri concentrice, fiecare cerc numindu-se pist. Adresa unei piste este definit de o pereche de numere ntregi reprezentnd numrul curent al suprafeei de nregistrare, respectiv numrul curent al pistei. Suprafeele de nregistrare se numeroteaz ncepnd de la zero, de sus n jos. Pistele se numeroteaz cresctor de la pista de raz maxim (indice 0) spre pista de raz minim. Aceast numerotare se reia pentru fiecare suprafa de nregistrare. Mulimea pistelor de pe toate suprafeele de nregistrare identificate prin acelai numr formeaz un cilindru. Cilindrii se numeroteaz de la zero, cresctor, ncepnd cu cel cu diametrul maxim spre cel cu diametrul minim. Fiecare pist este mprit n sectoare, de lungime fix, de regul 512 octei. Fiecare sector este adresat fizic de un triplet de numere ntregi reprezentnd numrul cilindrului, numrul suprafeei i numrul sectorului. Numerotarea sectoarelor pe cilindru ncepe de la unu. Pe fiecare cilindru, numrul de sectoare este acelai. Din punct de vedere logic, pistele sunt numerotate ncepnd de la zero pe suprafaa de nregistrare zero i continund cresctor pn la epuizarea suprafeelor i pistelor. De asemenea, sectoarele sunt numerotate ncepnd de la zero (cilindrul zero, suprafaa zero), cresctor pn la epuizarea sectoarelor suprafeelor cilindrilor. Adresa fiecrui sector este nscris la nceputul acestuia ntr-un antet ce mai conine i o secven de octei de sincronizare utilizai de adaptor (cuplor) pentru identificarea unei adrese disc. Operaia de scriere a adresei i a celorlalte elemente ale antetului sectoarelor se numete formatare fizic a discului. n cazul sistemului de operare MS-DOS, formatarea fizic a dischetelor este realizat de comanda FORMAT. Pentru discul rigid, formatarea fizic este realizat, n majoritatea cazurilor, de ctre fabricantul acestuia. Cele de mai sus arat c discul magnetic este o memorie accesabil prin adres, deci datele se obin prin acces direct. Performanele unui disc magnetic depind de urmtorii factori:

timpul de poziionare, numrul de rotaii pe minut, rata de transfer a discului.


44

Discurile flexibile au dou suprafee pe care se poate scrie informaia i pot fi protejate la scriere prin fanta de protecie (n poziia liber). Cuplarea unitilor de disc se poate realiza intern (prin intermediul unei interfee standard: IDE, SCSI etc.) sau extern (prin intermediul interfeei paralele). Din punct de vedere constructiv, discurile rigide sunt de tip intern (capacitate fix, suportul de memorare nu poate fi demontat din unitatea de disc), cartridge (capacitate variabil; suportul poate fi evacuat precum o caset din cititorul/nregistratorul de casete (casetofon sau videocasetofon), respectiv pachet de discuri (care se monteaz n unitile speciale de citirescriere ale mini i supercalculatoarelor). 11.1. Interfata pentru hard-disk Interfata pentru hard-disk poate fi inclusa (n cele mai multe cazuri este) pe placa de baza sau poate fi achizitionata ca placa de extensie separata . Controllerele pentru hard-disk , ca si hddurile de altfel, pot fi de doua tipuri constructive : IDE (EIDE) sau SCSI(Small Computer System Interface) . Hard-diskurile SCSI necesita un controller special , interfata SCSI fiind mai avansata decat EIDE , mai scumpa , cu performante mai mari , avnd avantajul de a putea conecta pe acelasi controller si cablu scannere , hard-diskuri , unitati floppy, cdrom, etc, un numar total de 8 device-uri SCSI suportate simultan . Avantajele SCSI sunt multiple: poate conecta pe aceeasi magistrala 8 deviceuri diferite simultan (IDE - 2 deviceuri si acele HDD sau CD-ROM); lungimea panglicii SCSI - 10-25 m , viteza maxima 80Mb/sec wide ultra2 SCSI; gabaritul redus. SCSI utilizeaza cozi de mesaje. Mecanismele bazate pe astfel de cozi sunt integrate pe scara tot mai larga n sistemele de operare moderne (WindowsNT). Hard-diskurile SCSI au fost ntotdeauna cu un pas n fata celor IDE , astfel capacitatile au fost mai mari si viteza de transfer net superioara , cel mai rapid hard-disk IDE acutual are o rata de transfer maxima de 66Mb/sec (UDMA/66). Marimile hard-diskurilor singulare sunt cuprinse ntre 20Mb si 4T. Aceasta capacitate poate fi extinsa prin intermediul discurilor RAID sau prin tehnologia de clustering (conectarea mai multor hdd-uri astfel ca sistemul sa le vada ca fiind unul singur; aceasta tehnologie este folosita si n procesarea paralela) . 11.2. Cum functioneaza o unitate de disc fix? O carcasa metalica sigilata protejeaza componentele interne ale hard discului de particule de praf care ar putea bloca distanta ingusta dintre capetele de citire/scriere si platane. O obstructie aici ar determina unitatea sa cada efectiv, crestand o urma in stratul magnetic subtire care acopera platanul. Un fus conectat la un motor electric roteste pana la 8 platane (realizate din metal sau sticla) acoperite cu un strat magnetic, la cateva mii de rotatii pe minut. Numarul platanelor si compozitia materialului magnetic care le acopera determina capacitatea discului. Platanele de azi, sunt acoperite cu un aliaj cu o grosime de aproximativ 3 minionimi de inci.

45

In partea inferioara a discului, o placa de circuit imprimat, cunoscuta si sub numele de placa logica primeste comenzile de la controlerul discului, care la randul sau este gestionat de sistemul de operare si de sistemul de intrare/iesire de baza (BIOS). Placa logica traduce aceste comenzi in fluctuatii ale tensiunii care forteaza actuatorul de cap (head actuator) sa mute capetele grupate de citire/scriere peste suprafetele platanelor. Placa se asigura, de asemenea, ca fusul care roteste platanele se roteste cu o viteza constanta. Placa spune capetelor discului cand sa citeasca si cand sa scrie pe disc. La un disc IDE (Integrated Drive Electronics, dispozitive electronice integrate), controlerul discului face parte din placa logica. Un actuator de cap impinge si trage perechea de brate ale capetelor de citire/scriere peste suprafetele platanelor cu o precizie extrema. El aliniaza capetele deasupra pistelor care se intind in cercuri concentrice pe suprafata platanelor. Capetele de citire/scriere, atasate la capetele bratelor flexibile, se misca la unison, atat pe suprafata de sus, cat si pe cea de jos a platanelor hard discului. Capetele scriu datele provenite de la controlerul discului pe platane aliniind campurile magnetice de particule de pe suprafetele acestora; capetele citesc date detectand polaritatile particulelor care au fost deja aliniate. Atunci cand programul dvs da instructiuni sistemului de operare sa citeasca sau sa scrie un fisier, sistemul de operare ordoneaza controlerului hard discului sa mute capetele de citire/scriere la tabela de alocare a fisierelor (FAT32, VFAT sau FAT) a discului. Sistemul de operare citeste tabela virtuala de alocare a fisierelor, pentru a stabili ce cluster de pe disc contine sectiunea de inceput a unui fisier sau ce portiuni ale discului sunt disponibile pentru a contine un nou fisier. Un singur fisier poate fi presarat printre sute de clustere separate, raspandite pe mai multe platane. Sistemul de operare stocheaza un inceput de fisier in primele clustere pe care le gaseste listate in tabela virtuala de alocare a fisierelor. Aceasta pastreaza o inregistrare in lant a clusterelor utilizate de un fisier, fiecare legatura din lant conducand la urmatorul cluster care contine o alta parte din fisier. Dupa ce datele din tabela virtuala de alocare a fisierelor sau trecut prin componentele electronice ale discului si controlerul hard discului, ajungand inapoi la sistemul de operare, acesta da instructiuni discului sa isi transporte capetele de citire/scriere pe deasupra platanelor, citind sau scriind clustere pe platane care se rotesc sub capete. Dupa ce sistemul de operare scrie un nou fisier pe disc, el trimite capetele de citire/scriere inapoi la tabela virtuala de alocare a fisierelor, acolo unde inregistreaza o lista a clusterelor fisierului. 12. TIPURI DE MAGISTRALE Cum se transmit informaiile n interiorul calculatorului? n interiorul calculatorului informaia se transmite codificat, n format binar. Deci, n interiorul calculatorului informaia circul sub forma unui ir de bii. Singura component hardware a calculatorului care face difereniere ntre programe i date este procesorul. Pentru celelalte componente, informaia este un ir de bii fr nici o semnificaie informaional/
46

ntre cele trei mari componente hardware ale calculatorului, informaia circul pe magistral (bus). Magistrala se definete ca mulimea conductoarelor folosite n comun de mai multe uniti funcionale pentru realizarea unor sarcini pe care informaia circul sub form de impulsuri electrice cu dou niveluri de tensiune crora le corespunde cele dou cifre binare 0 i 1. Dup natura informaiilor care circul, magistralele pot fi de adrese, de date sau de semnale de control, dup cum semnalele respective reprezint adrese, date sau comenzi i informaii despre starea unitilor interconectate. Liniile folosite pentru transferul datelor ntre microprocesor, memorie i dispozitivele de intrare/ieire formeaz magistrala de date. Aceast magistrala este bidirecional - pe ea intr date atunci cnd se efectuaz o citire din memorie sau de la dispozitivele de intrare/ieire i ies date la efectuarea unei scrieri. Magistrala de adrese este unidirecional - adresele ies din microprocesor pentru a putea fi transmise ctre circuitele de memorie i ctre cele de I/E. Prin magistrala de adrese, microprocesorul coordoneaz funcionarea microcalculatorului. Magistrala de comenzi este reuniunea unor semnale individuale de I/E din microprocesor, avnd fiecare un rol aparte. Aceste semnale se pot clasifica astfel: 1. Semnale de control - prin care microprocesorul coordoneaz funcionarea dispozitivelor de pe magistral (exemple: READ, WRITE); 2. Semnale de stare - prin care microprocesorul primete reacii de la dispozitivele situate pe magistral (ex: cerere de ntrerupere, cerere de suspendare a controlului magistralei). Patru tipuri de activiti se pot desfura pe o magistral i anume: 1. Transferul datelor - se efectueaz ntre regitri UC i o locaie de memorie sau un registru de interfa. Pentru realizarea unui transfer, avem nevoie de adrese prin care se selecteaz locaia de memorie sau registrul de interfa, de o comend care va specifica tipul operaiei (scriere/citire memorie, scriere/citire dispozitiv periferic) i de datele din memorie sau de la dispozitivul selectat. 2. Operaia de suspendare a controlului magistralei - se folosete n cazul n care exist mai multe module care vor s ocupe magistrala. Cnd microprocesorul care ocup magistrala i termin operaia, el poate s-i suspende controlul, astfel nct acesta s fie preluat de un alt microprocesor care dorete sa acceseze magistrala. Operaia poate fi executat la cerere sau la momente de timp bine definite. 3. Sincronizarea microprocesorului cu dispozitivele lente - aceast operaie sesuprapune peste operaia de transfer a datelor, n situaia n care dispozitivul selectat prin comand este mai lent. n acest caz, la nivelul dispozitivului de comand se trece microprocesorul n ateptarea unui semnal specific ctre periferic. 4. Operaia de ntrerupere - se folosete n cazul n care se dorete oprirea fluxului de instruciuni n curs de execuie i nlocuirea lui cu alt flux. ntreruperea poate fi cauzat de schimbarea unui dispozitiv periferic sau de un eveniment extern/intern neateptat. La apariia unei cereri de ntrerupere, microprocesorul termin instruciunea curent, salveaz adresa de revenire, dup care trece la o secven de tratare a cererii de ntrerupere. Dup sensul de circulaie a informaiilor, magistralele sunt bidirecionale i unidirecionale.
47

Magistralele se mai pot clasifica n magistrale dedicate, respectiv nededicate. Magistrala dedicat este n permanen asignat unei singure funcii sau unui set de dispozitive fizice. Magistrala nededicat permite accesul mai multor funcii sau al mai multor dispozitive fizice. Tehnicile de control al magistralei (tehnici de arbitrare) sunt folosite n cazul n care exist cereri simultane de acces la magistral. Pentru a transmite informaia corect pe magistral este necesar s se respecte urmtoarea regul - la un moment dat accesul pe magistral l poate avea doar un singur emitor, numrul receptoarelor fiind teoretic nelimitat. Prin activitatea de arbitraj se nregistreaz cererile de acces la magistral ale emitorului i eventual se acord magistrala solicitatorului. Arbitarea poate fi realizat centralizat, caz n care circuitele necesare efecturii controlului se afl comasate ntr-un singur modul, sau distribuit, caz n care fiecare modul cuplat pe magistral conine un circuit cu logica de arbitraj necesar. Pentru fiecare dintre aceste tipuri de tehnici exist trei metode de arbitrare: nlnuire serial, interogare, cereri independente. n cazul n magistrala a fost ctigat de un dispozitiv, trebuie stabilit dialogul ntre surs i destinaie. Pe baza metodei de dialog se realizeaz transferul propriu-zis, care poate fi sincron (la cuante de timp fixe, generate de un generator de tact central) sau asincron. S trecem acum n revist componentele periferiei calculatorului. Dup cum s-a vzut ea se mparte n: Dispozitive de memorare sau memoria extern Dispozitive de I/E. 12.1. MAGISTRALA SERIALA Cum functioneaza magistrala universala seriala? In interiorul calculatorului personal, un controler de magistrala universala seriala (universal serial bus, USB)- un set specializat de cipuri si conexiuni- actioneaza ca o interfata intre programe si componentele hardware. Aplicatiile, sistemul de operare si driverele dispozitivelorcare furnizeaza detalii despre modul in care functioneaza anumite dispozitive hardware- trimit comenzi si date hub-ului gazda USB, localizat pe controler. De la hub-ul gazda pleaca conectori speciali sau porturi USB. Cabluri pereche cu cate patru fire se conecteaza in porturi. Un cablu se poate atasa la un alt hub, singurul scop fiind acela de a furniza mai multe porturi la care sunt atasate dispozitivele USB un fel de cordon digital de extensie. Sau un cablu poate conduce direct la un dispozitiv USB, cum ar fi un monitor. USB suporta conexiuni pentru aproape orice tip de dispozitive periferice externe, cum ar fi monitor, tastatura, mouse, modem, boxe, microfon, telefon, scaner si imprimanta. Doua din cele patru fire din cablul USB sunt folosite pentru a furniza putere electrica dispozitivelor periferice, eliminand aglomerarea de surse de alimentare. Celelalte doua linii, numite D+ si D-, sunt folosite pentru

48

transimiterea de date si comenzi. O tensiune inalta pe D+, dar nu si pe D-, inseamna un bit 1. Otensiune inalta pe D- dar nu si pe D+ inseamna un bit 0. Orice dispozitiv USB poate include, de asemenea, un hub, astfel incat un monitor, de exemplu, furnizeaza porturi in care pot fi conectate boxe multimedia, un microfon si o tastatura. Aceste dispozitive pot, la randul lor, sa furnizeze porturi pentru alte componente hardware USB. De exemplu, un mouse si un stilou digital se pot atasa la o tastatura, care este atasata la monitor, care este atasat la hub-ul gazda. Acest sistem de conexiuni arborescente permite magistralei universale seriale sa gestioneze pana la 127 de dispozitive. Atunci cand un nou dispozitiv USB este concectat intr-un port, el determina in mod automat o modificare a tensiunii in unul din cele doua fire de date. Daca tensiunea este aplicata firului D+, dispozitivul periferic spune ca este un dispozitiv de mare viteza, capabil sa transimita 12 megabiti pe secunda, fiind folosit pentru monitoare, scanere, imprimante si alte dispozitive care trimit un volum mare de date. O tensiune aplicata pe firul D- indica faptul ca dispozitivu are o rata de transfer mica, de 1,5 Mbps de exemplu, fiind folosit pentru o tastatura sau un mouse. Un port conventional serial, de exemplu, trimite numai 100 kilobiti pe secunda. Un port paralel aproximativ 2,5 Mbps. Lucrand cu tehnologia asemanatoare Plug and Play care permite configurarea automata a componentelor calculatorului personal, controlerul gaza USB ii spune noului dispozitiv, sa se identifice, afla ce anume ii trebuie acestuia pentru transmiterea si receptionarea datelor si asociaza dispozitivului un numar de identificare. Dupa ce noul dizpozitiv a devenit un membru oficial al magistralei, el isi ocupa locul atunci cand controlerul gazda adunca dispozitivele- pentru a emite comenzi, pentru a intreba daca dispozitivul este gata sa trimita sau sa primieasca date si pentru a aloca portiuni din latimea de banda (capacitatea de transmitere a datelor) a magistralei pentru fiecare dispozitiv. De aproximativ un milion de ori pe secunda controlerul trimite interogari sau comenzi in aval (downstream) tuturor dispozitivelor periferice din USB. Fiecare dintre mesajele gazdei incepe cu un jeton care indentifica dispozitivul periferic caruia ii este adresat. Mesajul merge la toate dispozitivele din magistralaq, dar dispozitivele care nu corespund adresei jetonului pur si simplu il ignora. Dispozitivele trimit date in amonte (upstream) catre gazda numai daca gazda le acorda permisiunea. Magistrala universala seriala poate functiona cu trei tipuri de transferuri de date si ascociaza prioritati de latime de banda in ordinea urmatoare: - prioritatea cea mai inalta. Prioritatea izocrona, sau in timp real, la care nu poate exista nici o intrerupere in fluxul de date, cum ar fi pentru aplicatiile video sau de sunet - a doua prioritate. Transferurile de intreruperi, care apar numai atunci cand un dispozitiv, cum ar fi o tastatura sau un joystick ,genereaza un semnal ocazional de intrerupere pentru a atrage atentia procesorului.
49

Prioritatea cand timpul permite. Transferurile in bloc de date pentru imprimante, scanere si camere digitale, in care exista multe date de transmis, dar nicio graba deosebita pentru transmiterea datelor 13. DISCURILE OPTICE Cele mai recente uniti de memorie extern sunt unitile de disc optic sau magneto-optic. nscrierea optic a informaiei este un proces care folosete un fascicul de lumin (o raz laser) fie pentru citirea i/sau nregistrarea datelor, fie pentru a ajuta la realizarea acestor operaii pe un suport sensibil optic. Citirea datelor se bazeaz pe evidenierea unor modificri survenite n fasciculul de lumin reflectat de suport. Operaia de scriere folosete un fascicul laser pentru modificarea (sau pentru a facilita modificarea) unui material sensibil la lumin amplasat pe suport. Din punct de vedere tehnologic distingem urmtoarele tipuri de discuri optice:

13.1.Discurile CD-ROM (Compact Disc - Read-Only Memory) Sunt discuri compacte prenregistrate pe care informaia nu poate fi actualizat. Coninutul unui astfel de disc este nscris de ctre productorul su i poate fi doar citit de ctre utilizator. Principalele caracteristici de performamta ale unitatilor de CD sunt : capacitatea de sctocare ; - timpul de acces ; - rata de transfer ; - viteza de lucru. Capacitatea de stocare la un CD este de 650 MB,fiind cu mult mai superioara floppy-discului dar la concurenta cu HD. Timpul de acces reprezinta ,ca si la HD,durata de timp ce se consuma din momentul emiterii unei cereri de citire sau scriere si pana in momentul cand incepe efectiv operatia respectiva. Acest parametru se masoara in milisecunde shi este mai mare ca la HD, fiind cuprins ,in medie, intre 100 ms. si 400 ms. iar la cele mai moderne scade sub 100ms.Astfel in timp ce la hard diskuri timpul de acces se situeaza sub 20 milisecunde , la CD-ROM-uri timpul de acces nu scade cu mult sub 100 milisecunde .Timpul mare de acces se explica, in primul rand, prin faptul ca la fiecare accesare CD-ul trebuie adus la o anumita viteza de rotire, in timp ce hard disk-ul are o viteza de rotatie constanta, iar in al doilea rand capul de citire, la unitatea CD, este ceva mai greu ca la hard disk, continand mai multe elemente (laserul,fotocelula, unitatea de focalizare s.a.), iar manevra acestuia cere mai mult timp. Din acest punct de vedere unitatile CD se afla in curs de perfectionare.

50

Rata de transfer se refera la cantitatea de informatie ce se transfera intr-o secunda si poate fi cuprinsa intre 150KB/s (la primele tipuri de unitatide CD-uri) si peste 3000 KB/s (la unitatile moderne). Rata de transfer depinde, in primul rand de timpul de acces si de viteza de lucru a unitatii CD. Viteza de lucru reprezinta un parametru care influienteaza direct rata de transfer si timpul de acces si se stabileste in raport cu primul tip de unitate CD numit single-spid, care lucra cu un transfer de 150KB/secunda si fata de care s-au dezvoltat apoi viteze de 2xSpeed, de 4xSpeed, de8xSpeed s.a.m.d. ajungandu-se in prezent pana la 24x, pentru care ar corespunde, cel putin teoretic, unei rate de transfer de 300KB/s. Discurile CD-R (CD - Recordable): Sunt discuri compacte ce pot fi nregistrate de ctre posesor, dac acesta dispune de un dispozitiv periferic special i programele de baz aferente. Dup nregistrare, fostul CD-R devine un CD-ROM pe care l poate citi orice unitate de citire CD-ROM. Discurile CD-R se mai numesc discuri WORM (Write Once, Read Many). Discuri MO (magneto-optice): Sunt discuri la care scrierea se realizeaz magnetic, iar citirea optic. Aceste discuri pot fi scrise de cte ori este necesar, atta vreme ct suportul nu este deteriorat. Ele fac parte din clasa, mai larg, a discurilor RW (ReWriteable optical discs). Caracteristicile principale ale unui disc optic sunt: dimensiunea (5,25" sau 3,5"), capacitatea de stocare, numrul de cicluri de citire/scriere (pentru CD-E) etc. 13.2. Cum functioneaza o unitate CD-ROM? Un motor variaza in mod constant rata cu care se roteste un CD-ROM, astfel incat, indiferent unde este localizata o componenta, numita detector, in comparatie cu raza discului, portiunea discuui aflata imediat deasupra detectorului se misca intotdeauna cu aceeasi viteza. Laserul proiecteaza o raza concentrata de lumina care este focalizata mai apoi de o lentila si de o bobina focalizatoare (focusing coil). Raza de laser penetreaza un strat protector din plastic si se loveste de un strat reflector care arata ca o foita de aluminiu si este plasat la baza discului. Suprafata stratului reflector alterneaza intre intinderi si adancituri. Intinderile reprezinta zone cu suprafata plata; adanciturile reprezinta mici scobituri in statul reflector. Aceste doua suprafete reprezinta o inregistrare a bitilor 1 si 0 folositi pentru stocarea datelor. Lumina care loveste o adancitura este dispersata, dar lumina care loveste o intindere este reflectata direct inapoi, in detector, unde trece printr-o prisma care deflecteaza unda laser reflectata catre o dioda fotosenzitiva (light-sensing diode).

51

Fiecare puls de lumina care loveste dioda fotosenzitiva genereaza o mica tensiune electrica. Aceste tensiuni sunt comparate cu un circuit temporizator (timing circuit), pentru a genera un flux de biti 1 si 0 pe care calcualtorul il poate intelege. Discurile magnetice, cum ar fi acelea folosite in hard discuri, au datele aranjate in cercuri concentrice numite piste, care sunt impartite radial in sectoare. Folosint o schema numita viteza unghiulara constanta (constant angular velocity), discul magnetic se roteste intotdeauna cu aceeasi rata; adica pistele din apropierea marginii discului se misca mai rapid decat pistele de linga centrul discului. Deoarece sectoarele exterioare se misca mai repede atunci cant drec de capetele de citire/scriere, acestea trebuie sa fie fizic mai mari pentru a contine aceeasi cantitate de date precum sectoarele interioare. Acest format risipeste o mare parte din spatiul de stocare, dar maximizeaza viteza cu care pot fi recuperate datele. O alta rotatie De regula, CD-ROM foloseste o schema diferita de aceea a discurilor magnetice pentru impartirea suprafetelor discului in care sunt inregistrate datele. In locul mai multor piste aranjate in cercuri concentrice, pe discul CD-ROM, datele sunt continute intr-o singura pista care inainteaza in spirala din centrul discului catre circumferinta sa. Pista este in continuare impartita in sectoare, dar fiecare sector are aceeasi marime fizica. Folosind o metoda numita viteza liniara constanta (constant linear velocity), unitatea de disc variaza in mod constant rata cu care discul se roteste, astfel incat atunci cand detectorul se misca spre centrul discului, discul se roteste cu o viteza mai mare. Efectul este acela ca un disc compact poate contine mai multe sectoare si, prin urmare, mai multe date decat un disc magnetic. 13.3.DVD(digital video disc) Dei capacitatea de stocare a unui CD-ROM este semnificativ,multe programe i jocuri incep s aib dimensiuni din ce in ce mai mari;au aprut deja enciclopedii sau programe pe 4-5 CDROM-uri.Problema aceasta este rezolvat prin apariia DVD-ROM-ului,urmtorul pas dup compact disc. In loc de 650 MB de informaie care pot fi stocai pe un CD, un DVD poate stoca acum pan la 4,7 GB. Spre deosebire de CD,un DVD poate avea dou fee pe care s se inregistreze informaie,aa c intorcandu-l se mai pot citi inc 4,7 GB de informaie.Daca discul are mai multe straturi in interior va putea stoca peste 15 GB. Acestea folosesc capacitatea suplimentar pentru a aduga mai multe segmente de informaie video i audio i pentru a face ca toate fragmentele multimedia s arate i s sune mai bine decat CD-ROM-urile standard. Uniti DVD-ROM

52

Pentru a rula un DVD ,este nevoie de o unitate DVD-ROM arat la fel ca unitatea de CDROM, dar are dou lasere:unul pentru citirea CD-urilor clasice,iar cellalt pentru discuri DVD.Dup ce am instalat o unitate DVD-ROM in PC,el va putea s citeasc orice tip de CD fie el vechi sau mai nou. Ca i la CD-ROM-uri,exist DVD-ROM-uri pe care se poate scrie informaie,dar i DVDROM-uri pe care se poate inscripiona informaie i se poate terge i apoi rescrie o alt informaie. 13.4. Cum functioneaza un disc DVD? Un disc DVD (digital video disc, disc video digital sau digital versatile disc, disc digital versatil) cu o singura fata este alcatuit din pana la patru nivele principale. Primul este un plastic gros din policarbonati care furnizeaza fundatia pentru celelalte straturi. Apoi urmeaza un strat mult mai subtire dintr-un material opac, reflector, care este asezat peste baza. Apoi urmeaza un strat subtire de film transparent si, in fine, un stat (aflat la suprafata) de plastic transparent, protector. Datele, incluzand aici pe cele video, audio, text sau programe, sunt reprezentate, ca si in cazul unui disc CD-ROM, printr-o combinati de suprafete plate (intinderi) si scobituri (adancituri) pe doua suprafete- filmul transparent si nivelul opac stralucitor. Adanciturile din discul DVD sunt insa mult mai mici, acesta fiind unul dintre motivele pentru care un disc DVD contine nu mai putin de 8,5 GB de date, capacitatea a 13 discuri compacte. Asemenea unei unitati CD-ROM, o unitate DVD foloseste un laser pentru a citi intinderile si adanciturile. Cu toate astea, laserul DVD foloseste lumina care are o lungime de unda mai scurta, ceea ce face unda de laser suficient de ingusta pentru a citi cu acuratete adanciturile si intinderile mai mici de pe suprafatele discurilor DVD. Modificand cantitatea de curent care trece pintr-o bobina magnetica ce inconjoara raza laser, capul de citire DVD focalizeaza raza, astfel incat aceasta este concentrata numai pe suprafata filmului transparent. Atunci cand raza laser loveste o adancitura, scobitura imprastie lumina in toate directiile. Dar atunci cand raza de lumina loveste o arie plana, ea este reflectata inapoi la capul de citire, unde o prisma deflecteaza lumina catre un dispozitiv care converteste impulsurile de energie optica in impulsuri de electricitate. Calculatorul interpreteaza aceste pulsuri electrice ca date si cod. Stratul de film transparent reprezinta numai jumatate din datele pe care un disc DVD le poate contine. Modificand cantitatea de curent din bobinele care incojoara laserul, capul de citire poate modifica lungimea focala a razei laser, astfel incat aceasta trece prin stratul transparent cu o deformare minima. Raza loveste apoi stratul opac si citeste adanciturile si intinderile de pe aceasta in acelasi mod in care procedeaza cu stratul transparent.
53

Pistele spiralate de date inregistrate pe cele doua straturi ale unui disc DVD sunt orientate in directii diferite. Capul de citire urmeaza prima spirala pana ce ajunge la centrul discului. Apoi, cu discul miscandu-se in aceeasi directie, capul de citire incepe sa urmareasca spirala din al doilea strat, indreptandu-se spre marginea discului. Acest desig evita o intarziere in fluxul de date, lucru important in special atunci cand un disc DVD contine aplicatii multimedia. Capacitatea unui disc DVD cu o singura fata este dublata atunci cand aceleasi straturi de materiale opac si transparent sunt aplicate pe cealalta parte a discului. Dar, deoarece unitatile DVD actuale au un singur cap de citire, trebuie sa scoateti discul DVD cu doua fete si sa-l intoarceti, pentru a citi datele de pe a doua fata. 13.4. Cum functioneaza CD-RW si DVD-RAM ? Discurile CD-ROM si DVD, ambele fiind medii optice numai in citire, au si echivalente reinscriptionabile. Reinscriptionabil inseamna nu numai ca puteti fune fisiere pe un disc, dar le puteti sterge si modifica, exact cum puteti face cu o unitate hard. Discul CD-ROM are un echivalent inscriptionabil in discul CD-Rewritable (CD-RW, disc CD reinscriptionabil). Echivalentul discului DVD este DVD-RAM. Desi discurile CD-RW si DVD-RAM difera in privinta cantitatilor de date care pot fi scrise pee le, ambele folosesc un process numit tehnologia modificarii fazei, pentru a scrie, modifica si sterge date. Procesul scrie date pe ambele tipuri de discuri prin focalizarea unei raze laser de inalta intensitate pe un strat alcatuit, de regula, din argint, iridiu, antimoniu si telur incorporate in baza de plastic a discului. In starea sa originala, acest strat are o structura rigida, policristalina. Raza de laser incalzeste selectiv suprafetele la 482-704,5 grade celsius. Atunci cand raza loveste, caldura topeste cristalele, care trec intr o faza necristalina sau amorfa. Aceste suprafete reflecta mai putina lumina decat suprafata nemodificata care le inconjoara. Mai tarziu, atunci cand o raza laser mai slaba, folosita numai pentru citirea datelor de pe discuri, loveste aria necristalina, raza este imprastiata si nu este receptionata de dioda fotosenzitiva din capul de citire. Capacitatea lor de reflectare fiind mai mica, aceste arii devin adancituri si reprezinta biti 1. ariile care nu sunt incalzite sunt intinderi mai reflectorizante, reprezentand biti 0. Atunci cand raza laser loveste intinderile, ea este reflectata direct in dioda, creand un curent electric care este trimis calculatorului. Calculatorul interpreteaza modelul de pulsuri electrice, decomprima datele pe care acestea le reprezinta, verifica datele pentru erori si trimite datel programului care foloseste discul (vezi capitolul unitatii CD-ROM). Pentru a sterge date sau a modifica o adancitura inapoi intr-o suprafata intinsa un proces numit faza de incandescenta (annealing phase) unitatile CD-RW si DVD-RAM folosesc o
54

raza de energie mai joasa, pentru a incalzi ariile reprezentate de adancituri pana la 204 grade celsius. Aceasta cantitate de caldura este sub punctul de topire, dar declaseaza in mediu modificarea fazei, astfel incat acesta se poate recristaliza in starea sa originala.

14. MONITORUL Reprezinta un dispozitiv periferic de iesire. Primele generatii de monitoare au fost de tip digital , primind de la calculator toata informatia necesara afisarii sub forma de semnale TTL aparand apoi monitoarele analogice din ce n ce mai constructive . S-a diversificat oferta , perfectionndu-se tehnologiile cristalelor lichide,plasma sa altele . O clasificare sumara a monitoarelor ar putea fi facuta dupa unul din criteriile : a) dupa culorile de afisare - monitoare monocrome (afiseaza doar doua culori - negru si alb/verde/galben) ; - cu niveluri de gri - pot afisa o serie de intensitati ntre alb si negru ; - monitoarele color b) dupa tipul semnalelor video - Monitoare digitale : accepta semnale video digitale (TTL) sunt conforme cu standardele mai vechi IBM CGA si EGA . Sunt limitate la afisarea unui numar fix de culori . - Monitoarele analogice : pot afisa un numar nelimitat de culori . c) dupa tipul grilei de ghidare a electronilor n tub - Cu masca de umbrire : ghidarea fluxurilor de electroni spre punctele de fosfor corespunzatoare de pe ecran este realizata de o masca metalica subtire prevazuta cu orificii fine - Cu grila de apertura : n locul mastii de umbrire se afla o grila formata din fibre metalice fine , verticale , paralele , bine intinse si foarte apropiate intre ele.Calitatea acestor monitoare este superioara . d) dupa tipul constructiv al ecranului - Monitoare cu tuburi catodice coneventionale (CRT) , sunt cele mai ieftine si mai performante de pe piata . Prezinta diferite variante , cele mai ntlnite fiind shadowmask CRT si tuburile Trinitron , cu grila de apertura - Dispozitive de afisare cu ecran plat (FPD-Flat Panel Display), LCD (cristale lichide) si PDP(Plasma Display Panel) . Sunt utilizate la laptopuri , fiind net inferioare monitoarelor clasice. Ecrane tactile - adauga posibilitatea de selectare si manipulare a informatiei de pe ecran cu mna; dimensiunile monitoarelor pot varia intre 14 si 21 inch.
55

Monitorul oricrui terminal (compus din ecran i circuite de generare a imaginii) poate lucra n dou moduri: modul text i modul grafic. n modul text ecranul este mprit n rnduri (rows) i coloane (columns). Numrul de rnduri i numrul de coloane este dat de modul de lucru permis de monitor. De obicei sunt 25 de rnduri i 80 de coloane. La intersecia unei linii cu o coloan se genereaz un caracter printr-o matrice de puncte luminoase. Pentru fiecare poziie de afiare, se vor pstra (din motive de remprosptare a imaginii) codul ASCII (Unicode) al caracterului i atributul caracterului (cel care controleaz aspectul caracterului afiat i depinde de adaptorul folosit). De exemplu, pentru calculatoare personale, codul caracterului este stocat folosind 8 bii, iar atributul folosind ali 8 bii. Atributul pentru afiarea color este format din trei elemente:

culoarea peniei (foreground), culoare hrtiei (background), elementul de control al clipirii (blink>).

Culoarea este specificat cu ajutorul a trei componente fundamentale:


R - rou (Red), G - verde (Green), B - albastru (Blue).

n modul grafic ecranul este o suprafa de puncte luminoase numite pixeli (elemente de imagine; picture element). Fiecare pixel este caracterizat prin codul culorii. Urmtoarele elemente caracterizeaz un anumit mod grafic:

Rezoluia - numrul de puncte de pe ecran; Definiia - distana dintre dou puncte pe ecran; Numrul de culori.

Toate aceste elemente depind de modul grafic suportat de monitor. De exemplu:


modul VGA (Video Graphics Array) asigur o rezoluie de 640480 puncte i 16 culori, modul SVGA (Super VGA) standard asigur rezoluia de 800600 pixeli n 256 culori, modul XGA (eXtended Graphic Array) afieaz mai mult de 18 milioane de culori pentru o rezoluie de pn la 1024768 de pixeli.

56

Generarea unor imagini complexe, la o vitez de prelucrare mare, fr aportul procesorului sistemului de calcul, este asigurat astzi de coprocesoarele grafice (numite i acceleratoare) care realizeaz n mod independent: trasarea liniilor, generarea suprafeelor definite prin contur, desenarea umbrelor, deplasarea textului, deplasarea blocurilor de imagine etc. Monitoarele sunt de tip desktop (la locul de munc sau acas) i portabile. Monitoarele desktop, numite i sisteme CRT (Cathode-Ray Tubes) sunt similare ca dimensiune i tehnologie cu receptoarele emisiunilor de televiziune. Sunt de tip ntreesut (interlaced) - cu realizarea imaginii pe rndurile impare i apoi pe cele pare i, de tip nentreesut (noninterlaced). ntreeserea provoac plpirea, i deci oboseala ochilor. Monitoarele portabile echipeaz sistemele de tip laptop, notebook, subnotebook i PDA.

14.1. Cum functioneaza un ecran LCD? Lumina care emana de la un panou fluorescent din spatele panoului de afisare al calculatorului portabil se raspandeste in valuri care vibreaza in toate directiile. Un filtru polarizator din fata panoului de lumina perminte trecerea numai undelor de lumina care vibreaza mai mult sau mai putin pe orizontala. Faptul ca filtrul polarizator nu este precis in totalitate permite afisajului sa creeze diferite nuante. Intr-un strat de celule de cristale lichide- cate una pentru fiecare din cele trei culori care compun un pixel- adaptorul grafic intern al calculatorului personal portabil aplica o sarcina electrica variabila unor celule si nici o sarcina electrica tuturor celorlalte celule. In celulele care primesc curent, moleculele luguiete, in forma de vergea care alcatuiesc materialul cristalului lichid reactioneaza la sarcina electrica formand o spirala. Cu cat sarcina electrica este mai mare, cu atat se rasucesc mai mult moleculele. Atunci cand este aplicata cea mai mare sarcina electrica, moleculele de la un capat al celulei se rdica intr-un unghi de 90 de grade fata de orientarea moleculelor din celalalt capat. Lumina polarizata care patrunde in celule din spate este rasucita de-a lungul spiralei formate de molecule. In celulele care au fost alimentate cu sarcina electrica maxima, lumina polarizata iese vibrand, intr-un unghi de 90 de grade fata de alinierea ei initiala. Lumina care trece prin celulele care nu au fost alimentate iese neschimbata. Celulele care au fost alimentate cu o sarcina electrica partiala rasucesc lumina intr-un unghi situat intre 0 si 90 de grade, in functie de marimea sarcinii electrice. Lumina care iese din fiecare celula de cristal lichid trece prin unul din cele trei filtre de culoare rosu, albastru sau verde- care sunt aranjate unul in apropierea celorlalte. Fasciculele colorate de lumina trec printr-un al doilea filtru de polarizare care este aliniat pentru a lasa sa treaca numai acele unde de lumina care vibreaza mai mult sau mai putin pe verticala.
57

Lumina care trece print-un cristal lichi care este alimentat cu o sarcina electrica maxima este acum orientat perfect pentru a trece prin al doilea filtru. Deoarece este complet precis, o parte din undele de lumina care au trecut prin celula cu sarcina electrica partiala si care, prin urmare, a fost rasucita numai partial- trec prin filtru, in timp ce altele sunt blocate. Lumina care nu a fost rasucita deloc atunci cand a trecut prin cristalul lichid este acum blocata complet. Unele LCD folosesc doi polarizatori cu aceeasi aliniere, astfel inacat o sarcina care este aplicata unei celule de cristal lichid determina blocarea luminii, deoarece ea este rasucita. De aseemenea, sunt folosite doua metode pentru a se alimenta cu sarcini electrice celulele de cristale lichide. Afisajele cu matrice pasiva folosesc relativ putini electrozi aranjati de- alungul marginilor stratului de cristale lichide si se bazeaza pe coordonare pentru a se asigura ca sunt alimentate celulele corecte cu sarcini electrice. Sarcinile din celulele cu matrice pasiva determina culorile sa para estompate. Afisajele cu matrice activa au tranzistori individuali pentru fiecare celula. Tranzistorul individual furnizeaza o sarcina electrica mai precisa si mai puternica, creand astfel culori mai vii. 15. TASTATURA Prin intermediul tastaturii utilizatorul poate transmite comenzi calculatorului. Comenzile se introduc sub forma unui ir de caractere (litere, cifre, semne speciale, caractere de control). Fiecare caracter se genereaz prin acionarea uneia sau mai multor taste (butoane; keys). Acionarea unei taste sau combinaii de taste are ca efect nchiderea unui circuit electronic prin care se genereaz un cod unic, care este codul ASCII (sau Unicode) al caracterului respectiv. Unele taste sunt de tip cald (hotkeys), iar altele de tip rece (coldkeys). Tastele reci nu genereaz cod ctre calculator ci se folosesc mpreun cu tastele calde pentru a realiza combinaii. Tastele reci sunt: Shift, Ctrl, Alt. O tastatur are i taste comutator (cu dou stri):

CapsLock (asigur comutarea ntre starea care genereaz litere mici i starea care genereaz litere mari), NumLock (comut ntre starea numeric i starea de editare pentru blocul tastelor numerice), Insert (comut ntre corectura prin inserare i corectura cu suprascriere).

58

16. DISPOZITIVE PENTRU INTRODUCEREA INFORMATIEI GRAFICE n categoria dispozitivelor periferice de intrare sunt incluse i echipamentele: mouse, joystick, trackball, tablet grafic sau digitizor (digitizer), creion optic (light pen) etc. Primele trei dispozitive de interaciune controleaz deplasarea unui cursor pe ecranul unui sistem de calcul. Difer numai constructiv. Mausul dispune de butoane a cror apsare este interpretat de programele sistemului de calcul care genereaz o secven de operaii specific locului cursorului, butonului apsat i funciilor programului n executare. Creionul optic este un dispozitiv de selecie i se utilizeaz numai n combinaie cu terminale speciale, pentru aplicaii speciale (de exemplu: proiectare grafic, pictur asistat de calculator etc.). Tableta grafic este un digitizor ce poate fi folosit fie pentru selecie, fie pentru introducere de date n aplicaii de proiectare, nclusiv pentru arhitectur, sisteme informatice geografice etc. Mausul se poate deplasa pe o mas real (pad) i va antrena deplasarea unui cursor pe ecran. Mausul are mai multe butoane utile n efectuarea urmtoarelor operaii: 1. indicare (point) - cursorul mausului este deplasat pentru a indica un anumit punct de pe ecran (deci reprezentarea unui anumit obiect); 2. clic (click) - se acioneaz, foarte scurt, un buton al mausului. Codul ce controleaz funcionarea mausului va trata evenimentul aprut; 3. clic dublu (double click) - se acioneaz, foarte scurt, de dou ori, un buton al mausului; 4. tragere (drag) - se asigur deplasarea mausului pe masa real, acesta avnd un buton apsat continuu. Tabletele grafice se pot clasifica pe baza a dou criterii: a. dup dimensiunea suprafeei active: A4, A3, A0; b. dup precizie i acuratee: pentru digitizare de planuri i pentru meniuri. Ele pot fi echipate cu un stylus sau un puck cu 4-16 butoane programabile. Un alt periferic de intrare, cu aplicaii n introducerea imaginilor, este scanerul (scanner). Dup citirea imaginii, aceasta poate fi prelucrat: mrit, micorat, rotit, colorat, suprapus cu alte imagini i analizat folosind diferite metode. Principiul fundamental al funcionrii scanerului l reprezint modificarea intensitii unui fascicul luminos la ntlnirea unei suprafee de o culoare oarecare.

59

Scanarea unui document se desfoar n dou faze. Un fascicul luminos, n prima faz, baleiaz (scaneaz) documentul linie cu linie, iar fascicolul luminos care se reflect este direcionat (cu ajutorul unui sistem de oglinzi i lentile) spre o mulime de celule fotosensibile CCD (Charge-Coupled Device). n etapa urmtoare, CCD-ul transform semnalele luminoase recepionate n semnale electrice care dup o conversie analog-digital sunt trimise programului care va salva imaginea. Scanerele color obin trei versiuni ale documentului de scanat: una de culoare roie (red), una de culoare verde (green) i una de culoare albastr (blue) care contribuie la imaginea final. Observm c ceea ce se introduce nu este un punct ci o suprafa de puncte. Caracteristicile unui scaner sunt: a. rezoluia optic - numrul de puncte pe unitatea de suprafa pe care le poate citi (Dots Per Inch); b. numrul de culori c. viteza de scanare (explorare). Alte scanere sunt specializate:

cititorul de bare (Bar Code Reader), cititorul de taloane (Badge Reader), cititorul de text (Document Scanner sau OCR Scanner), cititoare cu cerneal magnetic a nscrisurilor bancare (Magnetic Character Ink Reader).

Transmiterea/Recepionarea documentelor la/de la distan se poate realiza, pe linie telefonic, folosind un adaptor special (modem) i un fax (facsimile transmission machines). n prezent cele dou componente sunt integrate pe o plachet numit internal fax-modem sau ntr-un dispozitiv extern care se cupleaz la un sistem de calcul prin portul serial.

17. ALTE ECHIPAMENTELE DE IESIRE Din categoria echipamentelor de ieire ne vom referi la urmtoarele: imprimanta, plotterul i fotoplotterul. Plotterele au fost primele dispozitive periferice care au oferit sistemelor de calcul posibilitatea de a produce ieiri n form grafic. Plotterele pot fi cu peni, cu jet de cerneal, de tip termic i de tip electrostatic.

60

Plotterele au n componen procesoare grafice proprii. De exemplu, plotterele cu peni recunosc primitive grafice precum: linie, poligon, arc de cerc, text etc. Dac suportul de informaie este filmul fotografic atunci dispozitivul asemntor plotterului, dar instalat n codiii specifice se numete fotoplotter. Imprimantele sunt dispozitive de afiare alfanumeric sau grafic. Ele pot fi: cu ace, cu jet de cerneal, cu transfer termic sau pe baz de laser. Sistemele multimedia accept i intrare/ieire sonor dispunnd de dispozitive specializate pentru analiza/sinteza vocii. Conversia vocii unei persoane n cod numeric se realizeaz cu scopul recunoaterii vorbirii. Sunt disponibile sisteme integrate pentru recunoaterea vorbirii (la nivel discret i la nivel continuu). Acestea sunt sisteme speciale care realizeaz i traducerea dintr-o limb n alta, a mesajului vorbit. 18. MODEM-URILE Modemurile sunt dispozitive destinate conectarii intre calculatoare cu ajutorul liniei telefonice . Pot fi de doua tipuri constructive : . interne si m. externe . Modemurile interne se instaleaza ntrun slot PCI sau ISA avnd integrate portul serial propriu , Ofera conectari la viteze cuprinse ntre 600bps si 56700bms . Unele versiuni ofera si capabilitati fax si voice , viteza maxima de primire/trimitere a unui fax fiind de 14400bps . Exista un numar mare de protocoale de corectie si compresie pentru modemuri , ce au rolul de a pastra integritatea datelor transmise (V32/V42,K5Flex,etc) . 19. PLACILE VIDEO Placile video sunt dispozitive ce fac legatura intre processor/system si monitor. Au rolul de a afisa pe monitor datele procesate de CPU (de fapt rezultatul acestori procesari). Se conecteaza pe placa de baza printr-un slot ISA/PCI sau AGP. Placile video pot contine acceleratoare 3D care degreveaza procesorul, versiunile profesionale incluzand chiar 2 procesoare 3D pe placa video (ELSA Guillemond). Sunt dotate cu memorie (VRAM) intre 512k(Trident) si 96Mb(ElsaG). Reprezinta o componenta importanta a sistemului, viteza sa influentand n mare parte pareformanta sistemului. n functie de cantitatea de memorie existenta pe placa video rezolutiile la care poate lucra sunt 640x480,800x600,1024x764,etc . Placile video bune ofera si o rata de reimprospatare a imaginii optima ce reduce riscul aparitiei afectiunilor oculare . 20. PLACILE DE SUNET Placile de sunet sunt dispozitive ce au rolul de a reda informatia binara sub forma de sunet, sau de a converti sunetele n format .bin. Astfel o placa de sunet se conecteaza la slotul ISA/PCI, apoi la CD-ROM printr-un cablu separat.

61

Placile de sunet de la Creative sunt dotate cu memorie n care sunt nregistrate sunete originale de instrumente, fiind utile compozitorilor . Atat Creative ct si Aureal au lansat recent o tehnologie de redare spatiala a sunetului . 21. DISPOZITIVE DE INTERFA Datele sunt stocate n calculator sub forma unor iruri de bii; n acest sens sunt utilizate diverse codificri. La nivelul computerului, aceste reprezentri sunt unice; spre exemplu, dac n reprezentarea intern a calculatorului caracterul Z are forma: 01011010, atunci acest ir de bii este folosit n mod unic pentru a reprezenta caracterul Z. Aceast regul nu este ns valabil pentru dispozitivele periferice sau pentru memoria secundar. n cazul unei tastaturi, fiecare tast genereaz un caracter. n cazul unei imprimante, caracterele sunt reprezentate sub form unor matrice de puncte. Un dispozitiv optic citete informaia prin intermediul intensitii luminoase, n timp ce un dispozitiv magnetic nregistreaz i citete poriuni magnetizate. Fiecare echipament periferic folosete o modalitate proprie de reprezentare a datelor iar aceast reprezentare poate s coincid sau nu cu reprezentarea intern a datelor n calculator. Dac aceste reprezentri sunt diferite este necesar un dispozitiv de translatare dintr-o reprezentare n alta. Aici intervine rolul dispozitivului de interfa, numit i placa de interfa. Considernd cazul tastaturii, atunci cnd o tast este apsat, se transmite un semnal electronic ctre interfaa tastaturii. Ca rspuns la semnalul electronic primit, interfaa tastaturii genereaz codul ce reprezint caracterul stocat n interiorul calculatorului, transfernd acest cod n memoria calculatorului. n cazul unei imprimante, irurile de bii transmise dinspre calculator spre imprimant sunt preluate de interfaa imprimantei, care translateaz aceste iruri de bii n reprezentarea recunoscut de ctre imprimant pentru a se putea face tiprirea. Cele dou dispozitive periferice considerate aici, tastatura i imprimanta, reprezint dou dispozitive diferite din punct de vedere al reprezentrii datelor; datorit existenei dispozitivelor de interfa, ele pot fi conectate la acelai calculator. La intrare, interfaa translateaz semnalele externe ntr-un format ce este recunoscut de ctre calculator. n cazul semnalelor de ieire, acestea sunt convertite din formatul intern al calculatorului n formatul propriu al dispozitivului de ieire respectiv. i n cazul dispozitivelor de memorie secundar legtura dintre calculator i acestea se face prin intermediul interfeelor. Interfaa controleaz din punct de vedere fizic dispozitivul de disc, acceptnd comenzi de citire, scriere, cutare din partea microprocesorului. Atribuirea unei interfee fiecrui echipament conectat la un calculator este un lucru practic n cazul calculatoarelor personale. Pentru calculatoare ce pot avea sute sau mii de echipamente periferice (cazul computerelor mainframe) conectate, modalitatea de comunicare dintre calculator i dispozitivele periferice se schimb: sunt utilizate canale i uniti de control I/O specifice. n acest caz, fiecare dispozitiv fizic are propria unitate de control iar canalul asigur comunicaia cu calculatorul, n timp ce unitatea de control comunic cu echipamentul extern n limbajul acestuia din urm. Canalul i unitile de control acioneaz mpreun pentru a realiza operaia de translatare n ambele sensuri.
62

22. TESTUL POST Atunci cand va porniti calculatorul personal, un proces numit test POST (power-on self-test) incepe cu un semnal electric care urmeaza o cale programata permanent catre unitatea centrala de prelucrare (sau microprocesorul). Aici, semnalul electric elimina datele ramase in registrii interni de memorie ai cipului. Semnalul reseteaza, de asemenea, un registru al unitatii centrale de prelucrare numit contor de programe (prgram counter) la un numar specific. In cazul calculatoarelor mai noi, numarul hexazecimal este F000. Numarul din contorul de programe spune unitatii centrale de prelucrare adresa urmatoarei instructiuni care trebuie sa fie procesata. In acest caz, adresa reprezinta inceputul unui program de boot stocat permanent la adresa F000 intr-un set de cipuri de memorie ROM (read-onlu memory, ROM) care contin sistemul de intrare/iesire de baza (bazic input/output system, BIOS) al calculatorului personal. 23. BOOT-AREA DE PE DISC Dupa efectuarea verificarii POST a tuturor componentelor hardware ale unui calculator personal, programul de boot continut in cipurile ROM BIOS verifica discul A pentru a vedea daca el contine o discheta formatata. Daca in unitate este plasata o discheta, programul cauta in locatiile specifice de pe disc fisierele care formeaza primele doua parti ale sistemului de operare. Daca in unitate nu se afla nici o discheta, programul de boot cauta fisiere de sistem pe hard discul principal, de regula C. Daca si aceasta cautare esueaza, programul cauta orice disc din unitatea CD-ROM. De regula, nu veti vedea aceste fisiere de sistem, deoarece fiecare din ele este marcat cu un atribut special de fisier care, de regula, le face invizibile in orice listare de fisiere. Pentru sistemele Windows, fisierele se numesc IO.SYS si MSDOS.SYS. Daca unitatea de discheta este goala, programul de boot cauta fisierele sistem de pe hard disc C si, pe unele sisteme, ca ultima varianta, cauta si pe unitatea CD-ROM. Daca un disc boot nu contine fisierele, programul de boot genereaza un mesaj de eroare. Dupa localizarea unui disc cu fisierele de sistem, programul de boot citeste datele stocate pe primul sector al discului si copiaza datele respective in locatii specifice din memoria RAM. Aceste informatii constituie inregistrarea de boot (boot record). Inregistrarea de boot se gaseste in aceeasi locatie pe orice disc formatat. Dupa ce programul de boot BIOS a incarcat inregistrarea de boot in memorie la adresa hexazecimala 7C00, sistemul de intrare/iesire de baza BIOS trece controlul inregistrarii de boot, conectandu-se la adresa respectiva. Inregistrarea de boot preia controlul calculatorului personal si incarca IO.SYS in memoria RAM. Fisierul IO.SYS contine extensii catre ROM BIOS si include o rutina numita SYSINIT
63

care gestioneaza restul boot-arii. Dupa incarcarea fisierului IO.SYS, inregistrarea de boot nu mai este necesara si este inlocuita in memoria RAM de un alt cod. SYSINIT isi asuma controlul procesului de pornire si incarca MSDOS.SYS in memoria RAM. Fisierul MSDOS.SYS lucreaza cu sistemul de intrare/iesire de baza BIOS, pentru a gestiona fisierele, executa programele si raspunde la semnalele primite de la componentele hardware. SYSINIT cauta in directorul radacina al discului de boot un fisier pe nume CONFIG. SYS. Daca exista fisierul CONFIG.SYS, SYSINIT spune lui MSDOS.SYS sa execute comenzile din fisier. CONFIG.SYS este un fisier creat de utilizator. Comenzile sale spun sistemului de operare cum sa gestioneze anumite operatiuni, cum ar fi, cate fisiere pot fi deschise in acelasi timp. CONFIG.SYS poate contine de asemenea, instructiuni de incarcare a unor programe de comanda sau drivere (device drivers). Driverele sunt fisiere care contin cod care extinde functiile sistemului de intrare/iesire de baza BIOS privind controlul memoriei sau dispozitivelor hardware. In Windows, driverele sunt incarcate prin inregistrari dintr-un fisier numit Registru( Registry). SYSINIT spune lui MSDOS.SYS sa incarce fisierul COMMAND.COM. acest fisier de sistem de operare consta din trei parti. Una este o alta extensie a functiilor de intrare/iesire. Aceasta parte este incarcata in memorie, impreuna cu sistemul de intrare/iesire de baza si devine parte componenta a sistemului de operare. A doua parte din COMMAND.COM contine comenzile de interne DOS, cum ar fi DIR, COPY si TYPE. Aceasta parte este incarcata in zona superioara a memoriei RAM conventionala, acolo unde poate fi suprascrisa de programele de aplicatii, daca este nevoie de memorie. A treia parte din COMMAND.COM este folosita o singura data si apoi se renunta la ea. Aceasta parte cauta un fisier pe nume AUTOEXEC.BAT in directorul radacina. Acest fisier este creat de utilizatorul calculatorului si contine o serie de comenzi de fisiere batch DOS (DOS batch files) si/sau nume de programe pe care utilizatorul doreste sa le ruleze de fiecare data cand calculatorul este pornit. Calculatorul personal a boot-at acum complet si este gata sa fie folosit. Sistemul de intrare/iesire de baza din umbra (Shadowed BIOS). Informatiile BIOS ale unui calculator sunt stocate, de regula, in cipurile EPROM (erasable, programmable, read-only memory memorie numai in citire, ce poate fi stearsa sau programata) care isi pastreaza datele chiar si atunci cand calculatorul personal este oprit. Gasirea codului din EPROM ia mai mult timp decat gasirea datelor din memoria RAM. Din acest motiv, majoritatea calculatoarelor personale noi creeaza o umbra a codului BIOS adica il copiaza din EPROM in memoria RAM si apoi construiesc echivalentul semnalelor de retur prin microcircuite, astfel incat atunci cand calculatorul personal acceseaza codul BIOS, el apeleaza memoria RAM, in loc sa apeleze cipul EPROM.

64

24. FORMATAREA UNUI DISC Inainte ca orice informatie sa poata fi stocata pe un disc magnetic, discul trebuie mai intai formatat. Formatarea creeaza o harta care permite discului sa stocheze si sa gaseasca date intr o maniera ordonata. Harta consta in marcatori magnetici incorporati in filmul magnetic de pe suprafata discului. Codurile impart suprafetele de pe disc in sectoare (de forma unor felii de placinta) si piste (cercuri concentrice). Aceste diviziuni organizeaza discul astfel incat datele pot fi inregistrate intr o maniera logica si pot fi accesate rapid de pe capetele de citire/scriere care se misca inainte si inapoi pe deasupra discului, in timp ce acesta se roteste. Numarul de sectoare si piste care incap pe un disc determina capacitatea discului. Dupa ce un disc este formatat, scrierea sau citirea fie si a celui mai simplu fisier reprezinta un proces complicat. Acest proces implica programele dvs, sistemul de operare, sistemul de intrare/iesire de baza (basic input/output system, BIOS) al calculatorului personal, driverele software care spun sistemului de operare cum sa foloseasca unele componente hardware complementare, precum un disc SCSI sau o unitate de banda magnetica, si mecanismul discului insusi. 24.1. Cum se realizeaza formatarea unui disc? Prima sarcina pe care o unitate magnetica trebuie s-o indeplineasca este aceea de formatare a oricarui disc care este folosit de ea, astfel incat sa existe o modalitate de organizare si de gasire a fisierelor salvate pe disc. Unitatea realizeaza acest lucru scriind pe suprafata discului un model de biti de 1 si 0 asemenea unor birouri magnetice de informatii. Modelul imparte discul radial in sectoare si in cercuri concentrice numite piste. Pe masura ce capul de citire/scriere se misca inapoi si inainte pe deasupra discurilor care se rotesc, el citeste aceste semne magnetice pentru a stabili unde se afla, in relatie cu datele de pe suprafata discului. Doua sau mai multe sectoare de pe o singura pista formeaza un cluster sau un bloc. Numarul de octeti dintr-un cluster variaza potrivit marimii discului si versiunii de sistem de operare folosit pentru formatarea discului. Un cluster este unitatea minima pe care sistemul de operare o foloseste pentru a stoca informatii. Chiar daca un fisier are o marime de numai 1 byte, un cluster mare de 32 kilobytes poate fi folosit pentru a contine fisierul pe discuri mari. Numarul sectoarelor si pistelor si, prin urmare, numarul clustelor pe care o unitate le poate crea pe suprafata unui disc determina capacitatea discului. Unitatea creeaza un fisier special, localizat in sectorul 0 al discului. In lumea calculatoarelor, numerotarea incepe adesea cu 0 in loc de 1. Acest fisier este numit tabela de alocare a fisierelor (file allocation table sau FAT) in DOS si tabel virtuala de alocare a fisierelor (virtual FAT, VFAT) in Windows. Tabela virtuala de alocare a fisierelor este mai rapida, deoarece ea permite calculatorului sa citeasca fisierele cate 32 de biti simultan, in comparatie cu citirile de 16 biti ale mai vechii tabele de alocare a fisierelor. Tabela virtuala de alocare a fisierelor permite, de
65

asemenea, folosirea unor nume de fisier cu lungimea de pana la 255 de caractere, in comparatie cu 11 folosite de DOS. Tabelele de alocare a fisierelor sunt locul in care sistemele de operare stocheaza informatiile despre structura de directoare (sau dosare) a discului si despre ce clustere sunt folosite pentru a stoca anumite fisiere. Ele permit, de asemenea, utilizarea de clustere de 4KB, indiferent de marimea discului. O data cu Windows 98 a aparut FAT32, care permite hard discurilor mai mari de 2 gigabytes sa fie formatate caun singur disc. O copie identica a tabelei de alocare a fisierelor este pastrata intr-o alta locatie, in cazul in care datele din prima versiune devin corupte. In mod obisnuit, nu veti vedea niciodata continutul tabelei de alocare a fisierelor, tabelei virtuale de alocare a fisierelor sau al FAT32. 24.2. Ce se intampla atunci cand stergem un fisier? Atunci cand stergem un fisier, datele care formeaza fisierul de fapt nu sunt modificate pe disc. In schimb, sistemul de operare modifica informatiile din tabela virtuala de alocare a fisierelor, pentru a indica faptul ca clusterele care au fost utilizate de fisierlu respectiv sunt acum disponibile pentru a fi reutilizate de alte fisiere. Deoarece datele raman pe disc pana cand fisierele sunt refolosite, dvs puteti adesea restabili- sau anula operatiunea de stergere, undeleteun fisier pe care l-ati sters accidental. 25. Variante de subiecte: Varianta 1: 1. Convertiti din baza 10 in baza 2 numarul 21.15 2. Convertiti din baza 2 in baza 10 numarul 1101.11 3. Convertiti din baza 2 in baza 16 numarul 110111 4. Transformati folosind scrierea in virgula mobila pe 32 biti numarul 13 5. Care este rolul BIOSului? 6. Ce dispozitive se pot conecta folosind porturile SATA? 7. Cati biti au urmatorii registri: BX, EAX, AL? 8. Ce functii au urmatorii registri: BP, DI, SP, SI, AX? 9. Care va fi valoarea finala a registrului AX dupa executarea urmatoarei secvente de cod:
66

MOV AH,2 INC AH MOV AL,AH 10. Scrieti secventa de instructiuni care realizeaza media aritmetica a doua numere. 11. Scrieti secventa de instructiuni care inmulteste cifrele unui numar memorat intr-o variabila introdusa in momentul executiei.

Varianta 2: 1. Convertiti din baza 10 in baza 2 numarul 18.75 2. Convertiti din baza 2 in baza 10 numarul 1001.01 3. Convertiti din baza 2 in baza 16 numarul 100101 4. Transformati folosind scrierea in virgula mobila pe 32 biti numarul 17 5. Care este rolul BIOSului? 6. Ce dispozitive se pot conecta folosind porturile IDE? 7. Cati biti au urmatorii registri: BX, EAX, AL? 8. Ce functii au urmatorii registri: BP, DI, SP, SI, AX? 9. Care va fi valoarea finala a registrului AX dupa executarea urmatoarei secvente de cod: MOV AH,2 INC AH MOV AL,AH 10. Scrieti secventa de instructiuni care realizeaza media aritmetica a doua numere. 11. Scrieti secventa de instructiuni care inmulteste cifrele unui numar memorat intr-o variabila introdusa in momentul executiei. CUPRINS
Introducere...............................................................................................................................................................2

67

1. STRUCTURA UNUI SISTEM DE CALCUL....................................................................................................2 1.2. CANALELE DE I/E- dirijeaza fluxul de informatii ce se transfera de la DP/ I catre DP /E...........................4 1.3. MEMORIA INTERNA- In memoria interna sunt stocate programele si datele care sunt in lucru la un moment dat. Memoria interna este un depozit de informatie in care comenzile, semnalele, textele, numerele, imaginile, etc., sunt reprezentate in codificare binara. Pentru regasirea informatiei memoria interna a fost impartita in locatii de memorie care se identifica dupa o adresa unica. ....................................4 1..................................................................................................................................................4 4. UNITATEA ARITMETICA-LOGICA (UAL) reprezinta ansamblul de circuite electronice prin care se realizeaza prelucrarea datelor cerute prin instructiuni sau comenzi. Prelucrarea se face prin operatii aritmetice, logice si de comparare. Fiecare circuit este specializat sa realizeze un una din operatiile de baza. .......................4 2. SISTEME DE NUMEROTATIE.........................................................................................................................5 2.1. Conversia unui numar real intr-o baza de numerotatie .......................................................5 ....................................................................................................................................................5 2.2. Conversia unui numar dintr-o baza de numerotatie in zecimal...........................................6 ....................................................................................................................................................6 2.3. Conversia unui numar din binar in octal, hexazecimal si invers.........................................6 ....................................................................................................................................................6 2.4. Operatii aritmetice in binar, octal si hexazecimal................................................................6 3. REPREZENTAREA DATELOR IN SISTEMELE DE CALCUL.....................................................................7 3.1 ...............................................................................................................................................8 Reprezentarea numerelor naturale..............................................................................................8 3.2 ...............................................................................................................................................8 Reprezentarea numerelor intregi.................................................................................................8 3.3 Complement logic i aritmetic..............................................................................................9 3.4 Numere fracionare (subunitare). .........................................................................................9 3.5 Virgula fix (VF)..................................................................................................................9 3.6 ...............................................................................................................................................9 Virgula mobil (VM)..................................................................................................................9 5. PROCESOR. PROPRIETATI. MOD DE FUNCTIONARE............................................................................13 Crearea unui cip din tranzistori.................................................................................................16 5.2 Microprocesorul..................................................................................................................16 5.3 CUM FUNCTIONEAZA UN CIP PENTIUM...................................................................21 6. LIMBAJE DE NIVEL NALT I DE NIVEL SCAZUT. INSTRUCIUNI....................................................23 7. COMPILATOARE I ASAMBLOARE...........................................................................................................24 8. ELEMENTE ALE LIMBAJULUI DE ASAMBLARE........................................................25 8.1. INTRODUCERE N LIMBAJUL DE ASAMBLARE INTEL......................................................................25 8.2. Formatul general al unei instruciuni n limbaj de asamblare.................................................................25 8.3. Instruciuni generale (mnemonice).........................................................................................................26 8. Regitrii microprocesorului Intel .........................................................................................27 1. Regitrii de uz general...............................................................................................................................27 8.2.2. Registrul pointer de instruciuni (IP)...................................................................................................32 8.3.4 Regitrii de segment..............................................................................................................................34 10. MEMORIA......................................................................................................................................................37 10.3. MEMORIA INTERNA....................................................................................................39 10.4.NOIUNI DE ADRESARE A MEMORIEI....................................................................43 11. MEMORIA EXTERNA (DISCURILE MAGNETICE-HARD-DISKUL).....................................................43 11.1. Interfata pentru hard-disk.................................................................................................45 11.2. Cum functioneaza o unitate de disc fix?.........................................................................45 12. TIPURI DE MAGISTRALE...........................................................................................................................46 ...............................................................................................................................................................................48

68

12.1. MAGISTRALA SERIALA.............................................................................................48 Cum functioneaza magistrala universala seriala?.....................................................................48 13. DISCURILE OPTICE......................................................................................................................................50 13.1.Discurile CD-ROM (Compact Disc - Read-Only Memory).............................................50 13.2. Cum functioneaza o unitate CD-ROM?...........................................................................51 13.3.DVD(digital video disc)....................................................................................................52 13.4. Cum functioneaza un disc DVD?....................................................................................53 13.4. Cum functioneaza CD-RW si DVD-RAM ?...................................................................54 14. MONITORUL..................................................................................................................................................55 14.1. Cum functioneaza un ecran LCD?...................................................................................57 15. TASTATURA..................................................................................................................................................58 16. DISPOZITIVE PENTRU INTRODUCEREA INFORMATIEI GRAFICE...................................................59 17. ALTE ECHIPAMENTELE DE IESIRE.........................................................................................................60 19. PLACILE VIDEO............................................................................................................................................61 20. PLACILE DE SUNET.....................................................................................................................................61 21. DISPOZITIVE DE INTERFA...................................................................................................................62 22. TESTUL POST................................................................................................................................................63 23. BOOT-AREA DE PE DISC............................................................................................................................63 24. FORMATAREA UNUI DISC.........................................................................................................................65 24.1. Cum se realizeaza formatarea unui disc?.........................................................................65 24.2. Ce se intampla atunci cand stergem un fisier?.................................................................66 CUPRINS...............................................................................................................................................................67

69