Etapele rezolvării unei probleme cu ajutorul calculatorului 

Să detaliem în continuare etapa de implementare. După analiza problemei şi stabilirea algoritmului, acesta trebuie tradus (implementat) într-un limbaj de programare. 

Srierea (editarea) programului sursă.

Programele sursă sunt fişiere text care conţin instrucţiuni (cu sintactica şi semantica proprii limbajului utilizat). Programul (fişierul) sursă este creat cu ajutorul unui editor de texte  şi  va fi salvat pe disc (programele sursă C primesc, de obicei,  extensia .c, iar cele C++, extensia .cpp).

Pentru a putea fi executat, programul sursă trebuie compilat  şi linkeditat

Compilarea

Procesul de compilare este realizat cu ajutorul compilatorului, care translatează codul sursă în cod obiect (cod maşină), pentru ca programul să poată fi înţeles de calculator. În cazul limbajului C, în prima fază a compilării este invocat preprocesorul. Acesta recunoaşte şi analizează mai întâi o serie de instrucţiuni speciale, numite directive procesor. Verifică apoi codul sursă pentru a constata dacă acesta respectă sintaxa şi semantica limbajului. Dacă există erori, acestea sunt semnalate utilizatorului. Utilizatorul trebuie să corecteze erorile (modificând programul sursă). Abia apoi codul sursă este translatat în cod de asamblare, iar în final, în cod maşină, binar, propriu calculatorului. Acest cod binar este numit cod obiect şi de obicei este memorat într-un alt fişier, numit fişier obiect. Fişierul obiect va avea, de obicei, acelaşi nume cu fişierul sursă şi extensia .obj

Linkeditarea

Dupa ce programul sursă a fost translatat în program obiect, el este va fi supus operaţiei de  linkeditare. Scopul fazei de linkeditare este acela de a obţine o formă finală a programului, în vederea execuţiei acestuia. Linkeditorul “leagă” modulele obiect, rezolvă referinţele către funcţiile externe şi rutinele din biblioteci şi produce cod executabil, memorat într-un alt fisier, numit fişier executabil (acelaşi nume, extensia .exe

Execuţia

Lansarea în execuţie constă în încărcarea programului executabil în memorie şi startarea execuţiei sale.

etaperezolvare