Sunteți pe pagina 1din 2

1.

Implementarea algoritmilor
1.1. Caracteristicile limbajului de programare
Pentru a putea executa cu ajutorul calculatorului algoritmii descrişi în pseudo-
cod,aceştia trebuie împlementaţi într-un limbaj de programare, adică trebuie să-i
reprezentaţi cu ajutorul instrucţiunilor unui limbaj de programare, de exemplu, limba-
jul C++. Pentru ca algoritmul scris pe hârtie să devină un program executabil (un
program care să fie încăcat în memoria internă a calculatorului şi care să poată fi ex-
ecutat de procesor), el trebuie să treacă prin etapele următoare:

Se realizează cu: se obţine cu:

Editarea programului Editor de texte Program sursă


Transcrierea algoritmului Fişier cu extensia .cpp
într-un limbaj de programare

Compilarea programului
Traducerea fiecărei instruc-
Compilator Program obiect
ţiuni din limbajul de pro- Fişier cu extensia .obj
gramare într-un grup de in-
strucţiuni în limbajul maşinii

Editarea legăturilor
Asamblarea pieselor rezulta- Editor de legături Program executabil
te în urma compilării împre- Fişier cu extensia .exe
ună cu instrucţiunilor în cod
maşină ale funcţiilor stan-
dard apelate de program

Ansamblul de programe compilator şi editor de legături funcţionează ca un


translator între două persoane care vorbesc limbi diferite. Dacă în cazul unui translator
traducerea se face între două limbaje naturale, în cazul acestor programe traducerea se
face între două limbaje artificiale: limbajul de programare şi limbajul maşinii.
Compilatorul reprezintă dicţionarul pe baza căruia se realizează traducerea cuvintelor,
iar editorul de legături asamblează aceste cuvinte în construcţii gramaticale corecte.
La fel ca şi limbajul natural, orice limbaj de programare este caracterizat de:
 Sintaxă. Este formată din totalitatea regulilor de scriere corectă, astfel încât
să se realizezeconstrucţii acceptate de compilator (construcţii în care
compilatorul să recunoască fiecare unitate lexicală, pentru a putea să o
traducă în cod maşină).
 Semantică. Reprezintă semnificaţia construcţiilor corecte din punct de
vedere sintactic. Chiar dacă aţi realizat o construcţie corectă sintactic,
trebuie să cunoaşteţi semnificaţia ei – pentru a fi siguri că aţi implementat
corect algoritmul.
 Vocabular. Este format din totalitatea cuvintelor care pot fi folosite într-un
program.
Setul de caractere folosit pentru construirea cuvinteloreste format din :
 Litere mari şi mici ale alfabetului latin (a÷z, A÷Z);
1
 Cifrele sistemului de numeraţie zecimal (0÷9);
 Caracterele speciale (spaţiu, +, -, *, /, %, =, #, “, (, ), [, ], ;, :, . etc).
Cuvintele pot fi:
Identificatori;
Separatori;
Constante;
Cuvinte cheie;
Operatori.
Identificatorii sunt nume de obiecte folosite în program (cum sunt de exemplu,
variabilele de memorie şi funcţiile). Identificatorul este o succesiune de litere, cifre sau
caracterul de subliniere ( _ ), din care prima trebuie obligatoriu să nu fie cifră.
Lungimea maximăa unui identificator este de 31 de caractere. De exemplu, sunt
consideraţi identificatori corecţi: a1, A1, delta_nr, nr_prim, dar nu sunt consideraţi
identificatori corecţi identificatorii 1°, A B, A&B sau c.m.m.d.c.. limbajul C++ face
diferenţă între literele mari şi literele mici ale alfabetului. De exemplu,
identificatorul A1 este diferit de identificatorul a1.
Separatorii se folosesc pentru a delimita unităţile lexicale (o unitate lexicală este
formată dintr-un şir de caractere care are o semnificaţie lingvistică). Se folosesc în
rolul de separatori:
 Spaţiul şi caracterul tabulator (TAB) pentru a separa cuvintele;
 ; pentru a separa instrucţiunile (corespunde punctului care separă propoziţi-
ile, din limbajul natural);
 Ansamblu de caractere de control CR+LF generat la apăsarea tastei Enter,
pentru a separa liniile de text (corespund scrierii unui paragraf de la începu-
tul rândului, din limbajul natural);
 Virgula ( , ) care separă elementele unei liste (corespunde virgulei care se-
pară cuvintele unei enumerări, din limbajul natural).

Cuvintele cheie (keywords) sunt identificatori cu o semnificaţie precisă pentru limbaj,


care nu pot fi folosiţi într-un context decât cel permis de semantica limbajului. De
exemplu: int, char, float, double, unsigned, signed, short, long, void, sizeof,
typedef, struct, const, enum, if, else, switch, case, default, for, while, do, break,
continue, return etc.
Daţi patru exemple de identificatori corecţi şi patru exemple de
idetificatori care nu sunt corecţi. Ce cuvinte puteţi folosi ca nume
Temă de variabile de variabile de memorie ?

Programul poate conţine şi comentarii. Comentariile sunt texte explicative folosite în


program pentru a-l face uşor de înţeles. Ele nu sunt interpretate de compilator. Pot fi
scrise oriunde în program şi sunt delimitate de restul programului astfel:
 Dacă ocupă mai multe rânduri, se folosesc perechile de caractere /* şi */;
 Dacă se acriu pe un singur rând, comentariul este precedat de caracterele //.
De exemplu:
a) /* Acesta este
un comentariu */
b) // Acesta este
// un comentariu

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