Belangrijkste verschil: tolken vertalen programmeerinstructies op hoog niveau naar tussencodes en voeren vervolgens de resulterende codes uit. Compilers vertalen programmeertaalcodes op hoog niveau naar de objectcodes. Tolken voeren code regel voor regel uit, terwijl compilers de resulterende bestanden uitvoeren.
Interpreter en Compiler spelen een zeer belangrijke rol bij het uitvoeren van programma's in een computertaal. Veel mensen hebben de neiging om te denken dat ze allebei op elkaar lijken. Ze verschillen echter beide in verschillende contexten.
Het grootste verschil tussen beide is dat een compilator de broncode rechtstreeks in de machinetaal wijzigt, terwijl een interpreter een middencode produceert en deze code vervolgens uitvoert om een door de machine begrijpelijke code te vormen. Tolken en compilers hebben dezelfde taak om de broncode in de machine-code te vertalen, maar ze verschillen in de middelen om deze vertaling te bereiken. Compliers beschikken over diagnostische mogelijkheden en dus kunnen ze tijdens het compileren van een programma op hoog niveau passende foutmeldingen geven. In het geval van een tolk wordt de objectcode niet opgeslagen en kan deze dus niet opnieuw worden gebruikt.
Een compiler produceert een objectcode voordat een uitvoerbaar bestand voor hetzelfde wordt gemaakt. Het gecompileerde programma wordt direct uitgevoerd met behulp van de objectcode. Aan de andere kant, een tolk
Compiler | Tolk | |
Definitie | Hoogwaardige instructie in machinetaal | Instructie op hoog niveau in een tussencode |
Uitvoering | Gehele programma in één keer | Lijn bij lijn |
Snelheid | Snel | Langzaam |
Kosten | Goedkoop | Minder |
Geheugengebruik | Meer | Meestal een grote hoeveelheid geld |
Ongeautoriseerde wijziging | Moeilijk (om de stroom van het programma te begrijpen is een complexe taak) | Eenvoudig (om de stroom van het programma te begrijpen is een eenvoudige taak) |
debugging | Moeilijk | Gemakkelijk |
Uitvoering van de resulterende code | Door computerhardware | Door een ander programma |
Voorbeeld | C-compiler | BASIC |
Running Computer | Ieder | Tolk geïnstalleerd |