Ce este - compilatorul sau Cum de a face computerul să înțeleagă ce vrei de la el?

Etapa finală de creare a unui program este de a traduce un algoritm scris într-una din limbile de programare (C / C ++, Pascal, etc.) într-un limbaj de nivel scăzut al mașinii. Acest lucru se datorează faptului că computerele trebuie să execute comenzi într-o limbă pe care o înțeleg, care este aproape de structurile de date binare și de operare primitive (bit, octet sau cuvânt) pentru a efectua o sarcină. Procesul de traducere a operatorilor orientați spre probleme de limbi de nivel înalt în cod binar se numește traducere. Există două metode de traducere - compilare și interpretare.

compilatorul este

Compilatorul - ce este?

O analiză a setului de interpretări ale termenilor "compilator" și "compilare" ne permite să distingem următoarea definiție. Compilatorul - este un program conceput pentru a converti textul original al algoritmului cu limbaj de nivel înalt într-un set echivalent de instrucțiuni privind un limbaj orientat spre mașină. Acesta este așa-numitul cod obiect, pentru asamblarea ulterioară a codului obiect primit în modulul de program gata de utilizare.

Compilatorul și interpretul sunt asemănări și diferențe

interpret Este un utilitar, precum și un compilator proiectat să traducă codul sursă în codul mașinii. Totuși, spre deosebire de compilator, interpretul se execută de fiecare dată cu programul și efectuează linia de traducere în linie.

Putem spune că compilatorul și interpretul sunt procesoare de limbă care permit computerului să recunoască și să execute comenzile specificate de programator.

Clasificarea compilatoarelor

compilatorul este programul

Clasificați compilatorii în principal pe caracteristicile asociate domeniilor de aplicare practice ale acestora.

Vectoring compilator Este un utilitar care efectuează traducerea codului sursă în codul obiect și este adaptat pentru computerele echipate cu procesoare vectoriale.

Compilator flexibil programată într-un limbaj de nivel înalt printr-un principiu modular. Gestionarea sa se face folosind tabele. Este, de asemenea, posibil să-l executați utilizând compilatorul de compilatoare.

Compiler incremental Este un procesor de limbă care re-traduce fragmente separate de cod sursă și add-on-uri. Totuși, aceasta elimină recompilarea întregii aplicații.

Interpretator (pas cu pas) Este un utilitar care execută secvențial compilația independentă a fiecărui operator sau comandă a codului sursă la nivel înalt.



Compilator compilator - un translator capabil să perceapă o descriere formală pentru un limbaj de programare și să genereze independent un compilator pentru orice limbă.

compilatorul și interpretul este

Compilator de depanare permite găsirea și eliminarea unor tipuri de erori sintactice efectuate în timpul scrierii codului sursă

Compilatorul rezident ocupă un loc permanent în memorie și, prin urmare, este disponibil pentru reutilizarea unei game largi de sarcini.

Un compilator de auto-compilare este scrisă în aceeași limbă din care se face traducerea.

Compilator universal se bazează pe o descriere formală a parametrilor semantici și sintactici ai limbajului de intrare. Principalele componente ale unui astfel de utilitar sunt încărcătoarele kernel, sintactice și semantice.

Dispozitivul compilator

În centrul oricărui compilator se află compilatorul și link-ul. Adesea, compilatorul utilizează un linker extern, iar compilatorul însuși efectuează numai funcția de traducere. De asemenea, se întâmplă că compilatorul este implementat ca un fel de manager de program asociat cu traducătorului (sau traducători, în cazul în care scrierea codului sursă utilizat în diferite limbaje de programare) și linker-ul și să le executați de execuție, dacă este necesar.

Limbaje de programare și metode de traducere

compilator de limbi

În ciuda faptului că un program scris în orice limbaj de programare poate fi compilat și interpretat, multe limbi de nivel superior au o predispoziție la această sau la acea metodă de traducere. Deci, limba C este inițial concepută pentru compilare, iar Java pentru interpretarea programului scris. Compilatoarele C sunt dezvoltate destul de ușor datorită nivelului lor relativ scăzut și a unui număr mic de elemente structurale.

Avantajele și dezavantajele compilatorilor și interpreților. aplicații

Rețineți că aplicațiile compilate au o viteză mai mare în comparație cu interpretabil, dar în același timp codul de mașină care rezultă din compilare depinde de platforma hardware. Deci, un program scris și compilat pentru Windows nu va funcționa, de exemplu, în Linux. Prin urmare, în cazul aplicațiilor bazate pe Internet, atunci când este imposibil de spus dinainte ce fel de mediu vor fi de lucru, utilizarea sau interpretarea codului octet (în acest caz, programul sursă este convertit în formă intermediară, care pot fi implementate pe platforme hardware diferite).

Distribuiți pe rețelele sociale:

înrudit
Lista limbajelor de programare. Limbi de programare de nivel scăzut și înaltLista limbajelor de programare. Limbi de programare de nivel scăzut și înalt
Interpretată este ... Interpretul este un sinonimInterpretată este ... Interpretul este un sinonim
Programare: limba de asamblare. Elementele de bază ale limbajului de asamblareProgramare: limba de asamblare. Elementele de bază ale limbajului de asamblare
Mediul de programare `Pascal ABC`Mediul de programare `Pascal ABC`
Traducătorul este ... Tipuri de traducători. Convertiți și traduceți programulTraducătorul este ... Tipuri de traducători. Convertiți și traduceți programul
Cele mai populare limbi de programare. Limbaje de programare pentru începătoriCele mai populare limbi de programare. Limbaje de programare pentru începători
Conversia de tip. Funcții rotunde și Trunc în PascalConversia de tip. Funcții rotunde și Trunc în Pascal
Ce este un compilator - descriereCe este un compilator - descriere
GCC Compiler pentru WindowsGCC Compiler pentru Windows
Istoria dezvoltării limbajelor de programare: pe scurt despre totIstoria dezvoltării limbajelor de programare: pe scurt despre tot
» » Ce este - compilatorul sau Cum de a face computerul să înțeleagă ce vrei de la el?