(1) Software-ul care convertește un set de declarații de limbaj de nivel înalt într-o reprezentare de nivel inferior. De exemplu, un compilator de ajutor convertește un document text încorporat cu comenzi adecvate într-un sistem de ajutor online. Un compilator dicționar convertește Termeni și definiții într-un sistem de căutare dicționar.(2) Software care traduce un program scris într-un limbaj de programare la nivel înalt (C/C++, COBOL etc.) în limbajul mașinii. Un compilator generează mai întâi limbajul de asamblare și apoi traduce limbajul de asamblare în limbajul mașinii. Un utilitar cunoscut sub numele de „linker” combină apoi toate modulele necesare limbajului mașinii într-un program executabil care poate rula în computer. A se vedea optimizarea compilator.
Următorul este un exemplu conceptual de cod sursă convertit în limbaj de asamblare și cod mașină de compilator:
Source Code IF COUNT=10 GOTO END-OF-JOB ELSE GOTO COMPUTE-AGAIN ENDIF Assembly Language Machine Language Compare A to B Compare 3477 2883 If equal go to C If = go to 23732 Go to D Go to 23119 Machine Code 10010101001010001010100 10101010010101001001010 10100101010001010010010