Tuesday, January 14, 2014

CURS3

• Structura unui microcalculator. Definitii
– Componenta software
• Sisteme de operare / Aplica􀄠ii - instruc􀄠iunea, setul de
instruc􀄠iuni, program.
• Nivele de abstractizare – limbaje de nivel înalt, limbaj de
asamblare, cod ma􀃺in􀄃.
– Componenta hardware; blocurile func􀄠ionale
• Unitatea Central􀄃 de Prelucrare - μPUG, coprocesoare
aritmetice, procesoare digitale de semnal, CISC, RISC.
• Memoria - formatul memoriei, con􀄠inut / adres􀄃, harta
memoriei, “pagini“, "segmente“, memorie de date, memorie
de program.
• Dispozitive de I/O - port de intrare/ie􀃺ire.
• Magistral􀄃 – date, adrese, control.


Etape de baz􀄃 care trebuie urmate pentru
rezolvarea unei probleme pe calculator
􀂾 analiza problemei - se stabile􀃺te exact ce
subprobleme trebuie s􀄃 rezolve programul
􀂾 programarea - reprezentarea problemelor
într-un mod adecvat pentru rezolvarea cu calculator
􀂾 implementarea - scrierea programului care rezolv􀄃
problema într-un anumit limbaj de programare

Algoritm
• set de pa􀃺i prin care se define􀃺te modul în care poate fi dus􀄃
la îndeplinire o anumit􀄃 sarcin􀄃
• set ordonat de pa􀃺i executabili, descri􀃺i f􀄃􀁕􀄃 echivoc, care
definesc un proces finit
• rezolv􀄃 o problem􀄃
• sunt în form􀄃 conceptual􀄃 - trebuie s􀄃 fie reprezentate într-o
form􀄃 în care pot s􀄃 fie comunicate unui calculator –> prin
setul de instruc􀄠iuni (gramatic􀄃􀀃􀃺i limbaj) –> limbaj de
programare
Reprezentarea algoritmilor în calculator -> program -> software
• Rezolvarea aplicatiilor cu ajutorul calculatorului, presupune descrierea
acesteia prin succesiunea de opera􀄠ii, care constituie algoritmul de
rezolvare. Descrierea se poate realiza, la început, în limbaj natural,
transpunându-se apoi într-un limbaj artificial, numit limbaj de programare



Instruc􀄠iune
– Instruc􀄠iunea este informa􀄠ia codificat􀄃 (binar) prin care se
impune microprocesorului desf􀄃􀃺urarea unei ac􀄠iuni
specifice. Fiecare instruc􀄠iune este asociat􀄃 în mod biunivoc
cu un 􀃺ir de cifre binare; deoarece acestea "codific􀄃"
instruc􀄠iunile (denumite coduri).
– O instruc􀄠iune reprezint􀄃 cea mai simpl􀄃 ac􀄠iune, cu rezultat
bine precizat, din activitatea unui microcalculator a c􀄃rui
unitate central􀄃 de prelucrare a informa􀄠iei este un
microprocesor anume. Un microprocesor poate "recunoa􀃺te"
􀃺i executa numai codurile corespunz􀄃toare instruc􀄠iunilor
pentru care a fost construit.
• Totalitatea instruc􀄠iunilor pe care un microprocesor le
poate recunoa􀃺te 􀃺i executa alc􀄃tuie􀃺te setul de
instruc􀄠iuni al microprocesorului respectiv.



Limbajele de programare:
􀂾 procedurale - atunci când rezolvarea problemei
urmeaz􀄃 anumite etape 􀃺i utilizeaz􀄃 ni􀃺te structuri
fundamentale (precum: C, Pascal, etc.)
􀂾 neprocedurale - ele se bazeaz􀄃 pe reguli 􀃺i sunt mai
apropiate de limbajul 􀃺i modul de ra􀄠ionare natural (cum
sunt limbajele pentru inteligen􀄠􀄃 artificial􀄃: Prolog, Lisp



Editor de leg􀄃turi
• Editor de leg􀄃turi = une􀃺te modulele obiect înrudite
generate de c􀄃tre compilator prin procesarea
programului surs􀄃 􀃺i produce codul (programul)
executabil.
• Elementul esen􀄠ial dintr-un cod obiect este codul ma􀃺in􀄃
care poate fi executat direct de c􀄃tre CPU.
• Link editare (editare de leg􀄃turi) = producerea codului
executabil din programul obiect 􀃺i a modulelor obiect
asociate (bibliotecile de func􀄠ii standard).


Surse de erori
• În dezvoltarea unui program, eventualele erori pot fi descoperite la compilare, în
timpul rul􀄃rii sau la testarea programului.
Sursele erorile pot fi datorate:
1. neîn􀄠elegerii problemei de rezolvat
• - programul rezultat, de obicei nu func􀄠ioneaz􀄃 sau func􀄠ioneaz􀄃 din întâmplare.
2. proiect􀄃rii gre􀃺ite a algoritmului
• - ca urmare a proiect􀄃rii gre􀃺ite rezult􀄃 erori logice, care conduc la func􀄠ionarea
incorect􀄃 a programului (ob􀄠inere de rezultate nea􀃺teptate).
3. implement􀄃rii incorecte a algoritmului
• - ca urmare a implement􀄃rii gre􀃺ite rezult􀄃 erori de sintax􀄃 (erori simple de
programare), care sunt semnalate de c􀄃tre compilator 􀃺i care, în principiu, pot fi
corectate u􀃺or.
4. execu􀄠iei incorecte a programului
• - se numesc erori run-time 􀃺i pot fi datorate erorilor logice sau erorilor de
programare.