/ / Hva er en kompilator, eller hvordan får du en datamaskin til å forstå hva du vil ha av den?

Hva er det - kompilatoren, eller hvordan får du datamaskinen til å forstå hva du vil ha fra det?

Det siste stadiet for å lage et program eroversettelse av en algoritme skrevet på et av programmeringsspråkene (C / C ++, Pascal, etc.) til et maskinspråk på lavt nivå. Dette skyldes det faktum at datamaskiner for å utføre en hvilken som helst oppgave trenger å sette kommandoer på et språk de forstår, nær binære og opererer med primitive datastrukturer (bit, byte eller ord). Prosessen med å oversette problemorienterte operatører av høyt nivå språk til binær kode kalles oversettelse. Det er to metoder for oversettelse - kompilering og tolkning.

kompilatoren er

Kompilator - hva er det?

Analyse av de mange tolkningene av begrepene "kompilator" og "kompilering" lar oss fremheve følgende definisjon. kompilatoren Er et program designet for å oversetteteksten til den opprinnelige algoritmen fra et høyt nivå språk til et ekvivalent sett med instruksjoner på et maskinorientert språk. Dette er den såkalte objektkoden, for den påfølgende koblingen av den resulterende objektkoden til en brukervennlig programmodul.

Kompilator og tolk - likheter og forskjeller

Tolk Er et verktøy, akkurat som en kompilator,designet for å oversette kildekode til maskinkode. Imidlertid, i motsetning til kompilatoren, blir tolken lansert hver gang med programmet og utfører oversettelsen linje for linje.

Vi kan si at en kompilator og en tolk er språkprosessorer som gjør det mulig for en datamaskin å gjenkjenne og utføre instruksjoner gitt av en programmerer.

Kompilator klassifisering

kompilatoren er et program

Kompilatorer klassifiseres hovedsakelig i henhold til funksjonene som er knyttet til områdene for deres praktiske anvendelse.

Vectorizing kompilator Er et verktøy som oversetter kildekode til objektkode og er tilpasset datamaskiner utstyrt med vektorprosessorer.

Fleksibel kompilator programmert på høyt nivå språk på modulbasert basis. Ledelsen utføres ved hjelp av tabeller. Det er også mulig å utføre den med en kompilatorkompilator.

Inkrementell kompilator Er en språkprosessor som oversetter individuelle fragmenter av kildekoden og tillegg til den på nytt. Det forhindrer imidlertid at hele applikasjonen blir kompilert på nytt.

Tolke (trinnvis) kompilator Er et verktøy som uavhengig kompilerer hver setning eller kommando for kilden på høyt nivå kode sekvensielt.

Kompilator kompilator - en oversetter som er i stand til å godta en formell beskrivelse for et programmeringsspråk og uavhengig generere en kompilator for hvilket som helst språk.

kompilatoren og tolk er

Feilsøk kompilator lar deg finne og eliminere noen typer syntaksfeil som er gjort når du skriver kildekode

Resident kompilator har en permanent plass i RAM og er derfor tilgjengelig for gjenbruk av et bredt spekter av oppgaver.

Selvkompilerende kompilator skrevet på samme språk som sendingen blir utført fra.

Generisk kompilator er basert på en formell beskrivelse av de semantiske og syntaktiske parametrene til inngangsspråket. Hovedkomponentene i et slikt verktøy er kjernen, syntaktiske og semantiske lastere.

Kompilatorenhet

Enhver kompilator er basert på en oversetter oglenker. Ofte brukes en ekstern lenke under kompilering, og kompilatoren utfører bare oversettelsesfunksjonen. Det hender også at kompilatoren er implementert som et slags managerprogram tilknyttet oversetteren (eller oversettere, hvis forskjellige programmeringsspråk ble brukt når du skrev kildekoden) og linkeren, og starter kjøringen om nødvendig.

Programmeringsspråk og oversettelsesmetoder

språk kompilator

Til tross for at programmet er skrevet innethvert programmeringsspråk kan du både kompilere og tolke, mange språk på høyt nivå har en disposisjon for en eller annen metode for oversettelse. Så C-språket ble opprinnelig designet for kompilering, og Java - for tolkning av det skrevne programmet. Kompilatorer av C-språket utvikles ganske enkelt på grunn av det relativt lave nivået og et lite antall strukturelle elementer.

Fordeler og ulemper med kompilatorer og tolker. Bruksområder

Merk at kompilerte applikasjoner harhøyere ytelse sammenlignet med tolket, men samtidig avhenger den resulterende kompilasjonsmaskinkoden av maskinvareplattformen. Dermed fungerer ikke et program skrevet og kompilert for Windows, for eksempel på Linux. Når det er umulig å si på forhånd i hvilket miljø de vil jobbe, bruker Internett tolkning eller bytekode (i dette tilfellet konverteres det opprinnelige programmet til en mellomform som kan utføres på forskjellige maskinvarer. plattformer).