/ / Vad är det - en kompilator, eller hur man får datorn att förstå vad du vill ha av den?

Vad är det - en kompilator, eller hur man får datorn att förstå vad du vill ha av den?

Det sista steget i att skapa ett program äröversättning av en algoritm skriven på ett av programmeringsspråken (C / C ++, Pascal, etc.) till ett maskinspråk på låg nivå. Detta beror på det faktum att datorer för att utföra någon uppgift måste ställa in kommandon på ett språk de förstår, nära binära och arbetar med primitiva datastrukturer (bit, byte eller ord). Processen med att översätta de problemorienterade operatörerna av högnivåspråk till binär kod kallas översättning. Det finns två metoder för översättning - sammanställning och tolkning.

kompilatorn är

Kompilator - vad är det?

Analys av många tolkningar av termerna "kompilator" och "kompilering" gör att vi kan lyfta fram följande definition. Kompilator Är ett program som är utformat för att översättastexten i originalalgoritmen från ett högnivåspråk till en motsvarande uppsättning instruktioner på ett maskininriktat språk. Detta är den så kallade objektkoden för den efterföljande länken av den resulterande objektkoden till en färdig programmodul.

Kompilator och tolk - likheter och skillnader

Tolk Är ett verktyg, precis som en kompilator,utformad för att översätta källkod till maskinkod. Till skillnad från kompilatorn lanseras dock tolk varje gång med programmet och utför översättningen rad för rad.

Vi kan säga att en kompilator och en tolk är språkprocessorer som gör det möjligt för en datormaskin att känna igen och utföra instruktioner från en programmerare.

Kompilatorklassificering

kompilatorn är ett program

Kompilatorer klassificeras främst efter funktioner relaterade till deras praktiska tillämpningsområden.

Vectorizing kompilator Är ett verktyg som översätter källkoden till objektkoden och är anpassad för datorer utrustade med vektorprocessorer.

Flexibel kompilator programmerad på högnivåspråk på modulbasis. Dess hantering utförs med hjälp av tabeller. Det är också möjligt att köra det med en kompilatorkompilator.

Inkrementell kompilator Är en språkprocessor som översätter enskilda fragment av källkoden och tillägg till den. Det eliminerar dock behovet av att kompilera om hela applikationen.

Tolkning (steg för steg) kompilator Är ett verktyg som oberoende sammanställer varje uttalande eller kommando i högnivå källkod sekventiellt.

Kompilator kompilator - en översättare som kan acceptera en formell beskrivning för ett programmeringsspråk och självständigt generera en kompilator för vilket språk som helst.

kompilator och tolk är

Felsöka kompilatorn låter dig hitta och eliminera vissa typer av syntaxfel som görs när du skriver källkod

Resident compiler upptar en permanent plats i RAM och är därför tillgänglig för återanvändning av ett stort antal uppgifter.

Självkompilerande kompilator är skriven på samma språk som sändningen utförs från.

Generisk kompilator är baserad på en formell beskrivning av de semantiska och syntaktiska parametrarna för ingångsspråket. Huvudkomponenterna i ett sådant verktyg är kärnan, syntaktiska och semantiska lastare.

Kompilator enhet

Varje kompilator är baserad på en översättare ochlänkare. Ofta används en extern länk vid kompileringen och kompilatorn själv utför endast översättningsfunktionen. Det händer också att kompilatorn implementeras som ett slags manager-program som är associerat med översättaren (eller översättare, om olika programmeringsspråk användes när du skrev källkoden) och länkaren och startar deras utförande vid behov.

Programmeringsspråk och översättningsmetoder

språkkompilator

Trots att programmet skrivits invalfritt programmeringsspråk kan du både kompilera och tolka, många språk på hög nivå har en benägenhet för en eller annan översättningsmetod. Så C-språket var ursprungligen utformat för kompilering och Java - för tolkningen av det skrivna programmet. C-kompilatorer utvecklas ganska enkelt på grund av dess relativt låga nivå och ett litet antal strukturella element.

Fördelar och nackdelar med kompilatorer och tolkar. Användningsområden

Observera att kompilerade applikationer harhögre hastighet jämfört med tolkade, men samtidigt beror den resulterande kompileringsmaskinkoden på hårdvaruplattformen. Således fungerar ett program skrivet och sammanställt för Windows till exempel inte på Linux. När det gäller internetapplikationer, när det är omöjligt att säga i förväg i vilken miljö de kommer att arbeta, använder de därför tolkning eller bytkod (i det här fallet omvandlas det ursprungliga programmet till en mellanform som kan köras på olika hårdvaruplattformar).