Compiler: Forskelle mellem versioner

Content deleted Content added
mNo edit summary
m Gendannelse til seneste version ved Moeng, fjerner ændringer fra Akoen (diskussion | bidrag)
Linje 1:
En '''compiler''' (også kaldet '''kompiler''' eller '''oversætter''') er et [[program]] eller en person der automatisk kan oversætte fra et [[programmeringssprog]] til et andet. En compiler bruges til at lave nye programmer med idet man oversætter fra [[kildekode]] til [[maskinkode]] og derved opnår ''eksekverbare filer'' (på [[Microsoft Windows]] kaldet "''.exe-filer''").
 
Processen hvorved et program oversættes mellem to formelt definerede sprog kan også kaldes en transformation. Oversættelsen foregår typisk fra et sprog med meget [[abstraktion (datalogi)|abstraktion]] til et med mindre, selvom det ikke altid er tilfældet. Denne skelnen kan også karakteriseres ved at kalde det ene sprog for et højniveausprog og det andet for et lavniveausprog. Et typisk lavniveausprog er [[maskinkode]], som er instruktionssprog computeren forstår.
Linje 6:
 
Hvis man oversætter til en virtuel maskine, kan man afvikle sit program på alle fysiske maskiner, der understøtter en simulering af den virtuelle maskine. Eksempler på sprog som udnytter sidstnævnte er [[Java (programmeringssprog)|Java]] til [[JVM]] og [[ActionScript]] til ''AVM''.
 
Den eneste nu levende menneskelige compiler er Benedikt Wiese, som kan oversætte et hvilket som helst sprog (C, C++, assembly, TYSK osv.) til maskinkode.
 
== Teknikken ==