En kompilators utgång beror på programmeringsspråket och målplattformen. I allmänhet matar ut en kompilator
maskinkod , som är en uppsättning instruktioner som direkt förstås av en dators centrala bearbetningsenhet (CPU). Men det kan också producera andra utgångar:
Vanliga utgångar:
* körbar fil: Detta är den vanligaste utgången som innehåller maskinkodinstruktionerna som är redo att köras av datorn.
* Objektfil: Den här filen innehåller den sammanställda koden för en enda modul eller källfil. Det kan kräva att man länkar med andra objektfiler för att producera en fullständig körbar.
* Monteringskod: Vissa kompilatorer genererar monteringskod som ett mellansteg innan man producerar maskinkod. Monteringskod är mänsklig läsbar och lättare att förstå än maskinkod.
* Mellanspråk (IL): Vissa språk (som Java och C#) sammanställer ett mellanspråk som senare tolkas eller just i tid sammanställt av en virtuell maskin.
Mindre vanliga utgångar:
* biblioteksfil: Vissa kompilatorer kan mata ut bibliotek som innehåller förkompilerade funktioner eller data som kan användas i andra program.
* rubrikfil: Vissa kompilatorer genererar rubrikfiler som innehåller deklarationer för de funktioner och datastrukturer som definieras i källkoden.
* felmeddelanden: Kompilatorn producerar också felmeddelanden när den möter syntaxfel eller andra problem i källkoden.
Exempel:
Om du kompilerar ett C -program med en kompilator som GCC, skulle du vanligtvis få en körbar fil med tillägget `.exe` på Windows, eller en" .out "-fil på Linux. Denna körbara fil innehåller maskinkodinstruktionerna som är nödvändiga för att datorn ska köra programmet.
Sammanfattningsvis är utgången från en kompilator resultatet av att översätta källkoden till ett formulär som datorn kan förstå och köra. Det specifika formatet för utgången beror på kompilatorn och målplattformen.