Extras din curs
Programele sunt scrise pentru a instrui masinile sa lucreze cu taskuri specifice sau sa rezolve
probleme specifice. O procedura (descrisa pas cu pas) asociata unui task se numeste algoritm.
Programarea este activitatea de comunicare (codificare) a algoritmilor in calculatoare. Procesul de
programare are (in general) patru pasi:
1. Specificarea task-ului;
2. Descoperirea unui algoritm pentru solutia sa;
3. Codificarea algoritmului in C;
4. Testarea codului.
Un calculator este o masina electronica digitala compusa din trei componente:
1. procesor (central processing unit sau CPU);
2. memorie;
3. dispozitive de intrare/iesire.
Procesorul lucreaza cu instructiuni care sunt inregistrate in memorie. Pe langa aceste instructiuni, in
memorie sunt pastrate si date. Dispozitivele de intrare/iesire iau informatii de la agenti externi catre
masina si produc informatii pentru acesti agenti.
Dispozitivele de intrare sunt (de obicei):
1. tastatura;
2. discheta;
3. banda;
4. CD-ROM.
Dispozitivele de iesire sunt (de obicei):
1. ecranul terminalului;
2. imprimanta;
3. discheta;
4. banda;
5. CD-ROM.
Sistemul de operare consta intr-o colectie de programe speciale si are doua scopuri principale:
1. coordoneaza resursele (memoria, procesorul, imprimanta) masinii. De exemplu, daca un fisier
este creat pe disc sistemul de operare are grija de detaliile localizarii acestuia si memoreaza
numele, lungimea si data creearii;
2. produce instrumente necesare utilizatorilor, multe dintre ele sunt folositoare utilizatorilor C. De
exemplu, doua dintre acestea sunt un editor de texte si un compilator de C.
Un cod C se numeste cod sursa, iar un fisier ce contine un cod sursa se numeste fisier sursa. Dupa
ce a fost creat un fisier sursa, atunci se invoca un compilator de C. De exemplu, pentru sistemele
MS-DOS se poate da comanda:
bc ex1.c sau tcc ex1.c
iar pentru unele sisteme UNIX:
cc ex1.c
Daca nu sunt erori in ex1.c, atunci aceasta comanda produce fisierul executabil asociat (ex1.exe).
Acum acesta poate fi rulat (executat) cu numele sau (ex1 sau ex1.exe).
In continuare, vom preciza trei dintre trasaturile procesului de compilare (mentionam ca asupra
acestor notiuni, vom reveni cu detalii interesante intr-un capitol viitor):
1. invocarea preprocesorului;
2. invocarea compilatorului;
3. invocarea incarcatorului.
Preprocesorul modifica o copie a codului sursa prin includerea altor fisiere si facand alte schimbari.
Compilatorul traduce aceasta in cod obiect folosit de incarcator pentru producerea fisierului
executabil final. Fisierul care contine codul obiect se numeste fisier obiect. Fisierele obiect, spre
deosebire de fisierele sursa, nu se pot intelege asa usor. Cand spunem deci compilare, de fapt
invocam preprocesorul, compilatorul si apoi incarcatorul.
Dupa ce scriem un program, acesta trebuie compilat si testat. Daca sunt necesare modificari, atunci
codul sursa trebuie editat din nou. Asadar, partea proceselor de programare consta din ciclul:
editare ---> compilare ---> executie
Un prim program
O sa incepem cu un exemplu de program C necesar pentru tiparirea unui sir pe ecran.
#include <stdio.h>
main()
{
printf("azi am inceput laboratoarele de Cn");
}
Folosind un editor de texte, presupunem ca am scris si salvat acest fisier numit "ex1.c". Cand
programul este compilat si rulat atunci va apare pe ecran sirul:
azi am inceput laboratoarele de C
Explicatii:
1. #include <stdio.h>
Liniile care incep cu "#" se numesc directive de preprocesare (precompilare). Acestea comunica cu
preprocesorul. Aceasta directiva "#include" determina preprocesorul sa includa o copie a fisierului
header "stdio.h" in acest punct al codului. Parantezele unghiulare din "<stdio.h>" indica ca acest
fisier se gaseste in biblioteca C (pentru compilatorul Borland 3.1 pentru MS-DOS, acesta se gaseste
in subdirectorul BC31/INCLUDE). Am inclus acest fisier deoarece acesta contine informatii despre
functia "printf()".
2. main()
Fiecare program are o functie numita "main", care se executa intai. Parantezele ce urmeaza dupa
"main" indica compilatorului ca aceasta este o functie.
Preview document
Conținut arhivă zip
- Limbajul de Programare C.pdf