Übersetzerbau. Virtuelle Maschinen
Reinhard Wilhelm, Helmut Seidl
Will man für eine moderne Programmiersprache Code erzeugen, wird man schnell feststellen, dass man bei der Übersetzung gerne Befehle verwenden würde, die so von einer konkreten Maschine nicht bereit gestellt werden. Andererseits ändern sich die Instruktionssätze moderner Rechner so schnell, dass es auch gar nicht sinnvoll erscheint, den Compiler zu sehr auf zufälligerweise bereitgestellte Operationen festzulegen. Eine solche Festlegung könnte nämlich bedeuten, dass man nach wenigen Jahren den Compiler gänzlich neu schreiben müsste.
Um dieses zu vermeiden wird ein Code für eine idealisierte Maschine erzeugt, deren Befehle dann jeweils nur noch auf den verschiedenen konkreten Zielrechnern zu implementieren sind. Einerseits erleichtert dieses Vorgehen die Portierbarkeit des Compilers. Andererseits vereinfacht dies auch die Übersetzung selbst, da man den Befehlssatz entsprechend der jeweiligen zu übersetzenden Programmiersprache geeignet wählen kann.
In dem Buch werden solche virtuellen Maschinen für imperative, funktionale, logische und objekt-orientierte Programmiersprachen vorgestellt. Dabei wird insbesonds auf die Übersetzungsschemata eingegangen, wie man für die jeweiligen konkreten Programmkonstrukte der Programmiersprache die Befehlsfolgen für die zugehörige virtuelle Maschine konstruiert. Neben einer vertieften Einsicht in allgemeine Konzepte von Programmiersprachen vermittelt unser Buch darum grundlegende Techniken zur Implementierung moderner Übersetzer.
Prof. Helmut Seidl lehrt an der Technischen Universität München, Garching
Um dieses zu vermeiden wird ein Code für eine idealisierte Maschine erzeugt, deren Befehle dann jeweils nur noch auf den verschiedenen konkreten Zielrechnern zu implementieren sind. Einerseits erleichtert dieses Vorgehen die Portierbarkeit des Compilers. Andererseits vereinfacht dies auch die Übersetzung selbst, da man den Befehlssatz entsprechend der jeweiligen zu übersetzenden Programmiersprache geeignet wählen kann.
In dem Buch werden solche virtuellen Maschinen für imperative, funktionale, logische und objekt-orientierte Programmiersprachen vorgestellt. Dabei wird insbesonds auf die Übersetzungsschemata eingegangen, wie man für die jeweiligen konkreten Programmkonstrukte der Programmiersprache die Befehlsfolgen für die zugehörige virtuelle Maschine konstruiert. Neben einer vertieften Einsicht in allgemeine Konzepte von Programmiersprachen vermittelt unser Buch darum grundlegende Techniken zur Implementierung moderner Übersetzer.
Prof. Helmut Seidl lehrt an der Technischen Universität München, Garching
年:
2007
出版社:
Springer
语言:
german
页:
198
ISBN 10:
3540495967
ISBN 13:
9783540495963
系列:
eXamen press
文件:
PDF, 787 KB
IPFS:
,
german, 2007
因版权方投诉,本书无法下载