Interpreter-Definition: Übersetzer des Maschinencodes
Programmiersprachen können von Menschen mit etwas Übung einfach gelesen und angewandt werden. Damit der Prozessor die einzelnen Anweisungen des Programmierers verstehen kann, muss der Quellcode in eine für Maschinen verständliche Form gebracht werden. Je nach Programmiersprache werden dazu ein Interpreter oder ein Compiler eingesetzt. Laut Interpreter-Definition handelt es sich dabei um ein Computerprogramm, welches den Quellcode einer Software-Anwendung verarbeitet und somit eine Schnittstelle zwischen dem Prozessor und der Anwendung bildet.
Unterschied zwischen Compiler und Interpreter
Der Interpreter geht beim Übersetzen von Anweisungen in Programmiersprache den Code Zeile für Zeile vor. Jede Anweisung wird einzeln analysiert und der Reihe nach für den Prozessor aufbereitet und mögliche Fehlercodes direkt aufgezeigt. Der Interpreter übersetzt den Quelltext während der Laufzeit der Software. Diese Vorgehensweise gilt auch für wiederkehrende Anweisungen. Dadurch bietet der Interpreter eine zuverlässige Fehleranalyse. Aufgrund der akribischen Genauigkeit des Interpreters kann er jedoch nicht mit Schnelligkeit punkten.
Im Gegensatz dazu arbeitet der Compiler den gesamten Code durch und zeigt Fehler gesammelt nach der kompletten Kompilierung an. Der Zeitpunkt der Übersetzung ist hier vor der Ausführung der Software. Durch diesen Prozess kann der Compiler möglicherweise nicht alle Fehler identifizieren, arbeitet dafür jedoch in einer hohen Geschwindigkeit.
Bei welchen Programmiersprachen kommen Interpreter zum Einsatz?
Je nach Programmiersprache werden Interpreter oder Compiler zur Übersetzung genutzt. Beide Varianten können ihren jeweiligen Vorteil (Gründlichkeit vs. Schnelligkeit) so effizient einsetzen. Beispiele für beide Bereiche sind:
Interpreter-Programmiersprachen:
- BASIC
- Perl
- Python
- Ruby
- PHP
Compiler-Programmiersprachen:
- Java
- C#
- C++
- Pascal
- Visual Basic .NET
Geben Sie beispielsweise ein Projekt zur Anwendungsmodernisierung bei fecher in Auftrag, sind die Programmiersprachen C# und Visual Basic .NET relevant, die statt eines Interpreters von einem Compiler mit hoher Geschwindigkeit verarbeitet werden können.
Sie interessieren sich für Anwendungsentwicklung und Softwaremodernisierung? Neben diesem Beitrag zum Thema Interpreter finden Sie weitere Erläuterungen und Begriffsklärungen in unserem IT-Glossar!