Interpreter und Compiler


In der heutigen Zeit verwendet man kaum noch Programmiersprachen, die den Prozessor direkt ansprechen. Eine derartige Sprache heißt Assembler. Sie wird vor allem dort eingesetzt, wo Berechnungen schnellst möglich ausgeführt werden sollen. Oft werden sogar nur die geschwindigkeitsrelevanten Routinen in Assembler verfasst.

Heute verwendet man meist Hochsprachen, welche erst durch ein Programm in für den Prozessor verständliche Anweisungen umgewandelt werden müssen. Man unterscheidet hierbei Interpreter und Compiler.

Ein Interpreter ist ein Programm,

Arbeitsweise eines Interpreters

Sprachen mit Interpreter sind beispielsweise VBA aus den Officepaketen, VBS aus Windows, JavaScript usw. Das Programm muss natürlich immer im Quelltext vorliegen, damit sich der Interpreter die einzelnen Zeilen holen kann. Solche Programme lassen sich leicht editieren. Nachteilig könnte sein, dass hier ein Schutz von Urheberrechten kaum möglich ist. Außerdem bremst die ständige Übersetzerei des Quelltextes die Ausführung ziemlich stark.

Ein Compiler ist ein Programm,

Arbeitsweise eines Compilers

Sprachen mit Compiler sind unter anderem Pascal, Delphi, C, C++. Compilierte Programme laufen ziemlich schnell, da die Befehle bereits in der für den Prozessor verständlichen Form vorliegen. Sie sind nur schwer editierbar, vor allem, wenn der Quelltext nicht mehr vorliegt.

Java ist Compiler und Interpreter

Vorteil: Javaprogramme laufen auf allen Plattformen, auf denen ein virtueller Prozessor installiert ist. Java ist also plattformunabhängig.
Nachteil: Da der virtuelle Prozessor den Bytecode erst für die konkrete Plattform interpretieren muss, erreichen Javaprogramme nicht die Geschwindigkeit von compilierten Programmen.

zurück zur Informatikhauptseite