En kompilator er et spesielt dataprogram som oversetter, kompilerer, et program skrevet i et programmeringsspråk til maskinkode som datamaskinens prosessor så kan utføre. Denne oversettelsen trenger kun gjøres én gang, og det er maskinkoden som så distribueres til brukere og kjøres.

Faktaboks

Uttale
kompilˈator

Kompilatoren er spesifikk for et bestemt programmeringsspråk og ofte også en bestemt maskintype. Den sørger for at programmet skrevet på generelle høynivåspråk blir oversatt til maskininstruksjoner som passer en bestemt datamaskin.

Et alternativ til kompilering er interpretering, der en tolker (fortolker) oversetter instruksjonene mens programmet utføres. Dette benyttes som regel av skriptingspråk. Interpretering kan sees på som kompilering som skjer under hver kjøring, i motsetning til kompilering som gjøres på forhånd.

Objektkode og linking

Selv om man forenklet sier at kompilatoren produserer maskinkode, er ikke det helt korrekt. I praksis produseres objektkode eller objektmoduler, som er delvis maskinkode og delvis referanser til andre nødvendige ressurser. Et kjørende program settes sammen av en eller flere objektmoduler, og det er et spesielt dataprogram som kalles lenker (engelsk linker) som setter disse sammen til et kjørbart program. Objektkoden har relative adresser som blir gitt en absolutt verdi av lenkeren når modulens plass i det kjørbare programmet er bestemt.

Les mer i Store norske leksikon

Kommentarer

Kommentarer til artikkelen blir synlig for alle. Ikke skriv inn sensitive opplysninger, for eksempel helseopplysninger. Fagansvarlig eller redaktør svarer når de kan. Det kan ta tid før du får svar.

Du må være logget inn for å kommentere.

eller registrer deg