kompilátor je speciální program, který zpracovává prohlášení, napsaný v určitém programovacím jazyce a udělá z nich do strojového jazyka nebo „kód“, který procesoru počítače použití. Programátor obvykle zapisuje příkazy jazyka v jazyce, jako je Pascal nebo C, jeden řádek najednou pomocí editoru. Soubor, který je vytvořen, obsahuje to, co se nazývá zdrojové příkazy. Programátor poté spustí příslušný překladač jazyka a určí název souboru, který obsahuje zdrojové příkazy.
Při provádění (provozování), kompilátor nejprve analyzuje (nebo analyzuje) všechny jazykové výpovědi syntakticky jeden po druhém, a pak, v jednom nebo více po sobě jdoucích fází, nebo „projde“, navazuje na výstupní kód, ujistěte se, že výroky, které odkazují na jiné výroky jsou uvedené správně v konečném kód. Tradičně se výstup kompilace nazývá objektový kód nebo někdy objektový modul . (Všimněte si, že termín „objekt“ zde nesouvisí s objektově orientovaným programováním.) Kód objektu je strojový kód, který procesor může provádět jednu instrukci najednou.
Java Je programovací jazyk, jazyk používaný v objektově orientovaného programování, zavádí možnost sestavování výstupu (tzv. bytecode ), který lze spustit na jakémkoli počítači systém platformy, pro které Java virtual machine nebo bytecode interpreter je poskytována převést do bajtového kódu do instrukcí, které mohou být provedeny podle aktuální hardware procesor. Pomocí tohoto virtuálního stroje může být bytecode volitelně překompilován na implementační platformě kompilátorem just-in-time. (Vidět: Java kompilátoru)
Tradičně, v některých operačních systémů, jako další krok bylo nutné po sestavení – řešení relativní umístění instrukce a data, když více než jeden objekt modul měl být běžet současně a cross-uvedené navzájem sekvence instrukcí nebo data. Tento proces se někdy nazýval editace vazeb a výstup známý jako modul zatížení.
kompilátor pracuje s jazyky, které se někdy nazývají 3GL a vyššími jazyky. Assembler pracuje na programech napsaných pomocí jazyka assembleru procesoru.