Etape de compilare și de legare a programelor în limba c

V-ați gândit vreodată despre cum sunt create fișierele executabile cu extensia .exe din codul sursă? Care este rolul compilatorului și al linkerului? În această notă foarte scurtă, voi descrie acest proces foarte simplu, fără a trece în detaliu punerea sa în aplicare.







Setul de descrieri și operatori uniti printr-un singur algoritm formează un program într-un limbaj algoritmic. Pentru a rula programul, trebuie să îl traduceți într-o limbă pe care procesorul o înțelege - în codurile mașinilor. Acest proces constă în mai multe etape. Figura de mai jos ilustrează acești pași pentru C ++.

Etape de compilare și de legare a programelor în limba c






Etapele creării unui program executabil în C ++

Mai întâi, programul este transmis către preprocesor. care realizează directivele. (de exemplu, includerea în text a așa-numitelor fișiere de antet - fișiere text care conțin descrieri ale elementelor utilizate în program).

Textul complet rezultat al programului ajunge la intrarea compilatorului. care alocă lexeme și apoi, pe baza gramaticii limbajului, recunoaște expresii și operatori construiți din aceste jetoane. În acest caz, compilatorul detectează erorile de sintaxă și, în absența acestora, construiește un modul de obiect.

Astfel, programele executabile sunt create în C ++. Desigur, aceasta este o descriere foarte generală a acestui proces complex, dar transmite în mod clar semnificația tuturor etapelor operației de compilator și linker.

Bazat pe cartea "Programarea într-un limbaj de nivel înalt C \ C ++", Pavlovskaya Т.А.

Navigare după înregistrări

Ce este o lexemă? Și ce înseamnă "gramatica limbajului recunoaște expresiile și operatorii construiți din aceste jetoane"
"În același timp, compilatorul detectează erori de sintaxă și, dacă nu, construiește un modul de obiect." - De ce îl construiește? de ce fără ea este imposibil?

Nu este clar, pe scurt.







Articole similare

Trimiteți-le prietenilor: