By Reinhard Wilhelm
ISBN-10: 3540495967
ISBN-13: 9783540495963
ISBN-10: 3540495975
ISBN-13: 9783540495970
ISBN-10: 3540616926
ISBN-13: 9783540616924
Will guy für eine moderne Programmiersprache Code erzeugen, wird guy schnell feststellen, dass guy 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 guy 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 guy den Befehlssatz entsprechend der jeweiligen zu übersetzenden Programmiersprache geeignet wählen kann.
In dem Buch werden solche virtuellen Maschinen für central, funktionale, logische und objekt-orientierte Programmiersprachen vorgestellt. Dabei wird insbesonds auf die Übersetzungsschemata eingegangen, wie guy 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.
Read Online or Download Übersetzerbau: Virtuelle Maschinen PDF
Similar german_14 books
New PDF release: Weck den Sieger in Dir!: In 7 Schritten zu dauerhafter
Alexander Christiani bietet mit diesem erfolgreichen Buch einen unüblichen, aber dafür erfolgreich umsetzbaren Weg zu dauerhafter Selbstmotivation. Sein siebenstufiges Motivationsprogramm setzt neue Maßstäbe - ein brillanter Wegweiser zum Erfolg! "Das Buch basiert auf aktuellsten Erkenntnissen der Motivationspsychologie.
Download e-book for iPad: Im Gehäuse der Zugehörigkeit: Eine kritische by Agathe Bienfait
Im Zentrum der Untersuchung steht eine Kritik an den Homogenitäts- und Kohärenzunterstellungen, die nicht nur den klassischen Kulturbegriff, sondern auch das alltägliche Verständnis kultureller Identität in entscheidendem Maße belasten. Diese Missverständnisse übersehen nicht nur die interne Pluralität von Kulturen; sie begünstigen zudem im Kontext multikulturalistischer Identitätspolitiken die Unterdrückung des Einzelnen durch seine Herkunftsgruppe.
- Stahlbau 1
- Diskursstrategien im Rechtspopulismus: Freiheitliche Partei Österreichs und Schweizerische Volkspartei zwischen Opposition und Regierungsbeteiligung
- Computergrafik und Bildverarbeitung: Alles für Studium und Praxis — Bildverarbeitungswerkzeuge, Beispiel-Software und interaktive Vorlesungen online verfügbar
- Landolt-Börnstein: Eigenschaften der Materie in ihren Aggregatzuständen, 7. Teil, Elektrische Eigenschaften II (Elektrochemische Systeme), Teil a
- Die Reichskrise des III. Jahrhunderts in der spätantiken und byzantinischen Geschichtsschreibung : Untersuchungen zu den nachdionischen Quellen der Chronik des Johannes Zonaras
- Kindernotfall-ABC: Kompendium für Notärzte und Kindernotärzte
Additional info for Übersetzerbau: Virtuelle Maschinen
Sample text
Zur Bearbeitung einer globalen Variablendeklaration t x; definieren wir uns eine Funktion: elab_global, die für ein Paar (ρ, n) aus einer Adressumgebung ρ und einer ersten freien Relativadresse n sowie der Deklaration d ≡ t x eine erweiterte Adressumgebung zusammen mit der nächsten freien Relativadresse liefert. , falls ρ für x bereits definiert war, den alten Eintrag in ρ für x mit dem neuen Wert a überschreibt. Analog benötigen wir Funktionen elab_formal und elab_local zur Bearbeitung von Deklarationen formaler Parameter bzw.
8 Zeiger und dynamische Speicherbelegung HP 29 HP n n new if ( HP − S[ SP] > EP) { HP ← HP − S[ SP] ; S[ SP] ← HP; } else S[ SP] ← 0; Abb. 21. Die Instruktion new. Objekts auf der Halde geschieht mithilfe der Instruktion new (Abb. 21). Die Instruktion new erwartet oben auf dem Keller die Größe des zu erzeugenden Objekts und liefert die Anfangsadresse des für das Objekt zur Verfügung gestellten Speicherbereichs zurück. Vorher muss überprüft werden, ob noch genügend Speicherplatz für das neu anzulegende Objekt zur Verfügung steht.
Tags) G und L jeweils globale bzw. lokale Gültigkeit bezeichnen. Um Zugriffe relativ zum FP auf lokale Variablen oder formale Parameter zu ermöglichen, reicht es, die Übersetzungsfunktion code L für Namen zu verallgemeinern. Für ρ( x) = (tag, j) definieren wir jetzt: codeL x ρ = loadc j loadrc j für das Etikett G für das Etikett L Dabei laden die neuen Befehle loadrc j den Wert FP + j oben auf den Keller (Abb. 25). Selbstverständlich gestatten wir uns wieder als Optimierungen geeignete Spezialbefehle für häufig vorkommende Instruktionsfolgen: 40 2 Imperative Programmiersprachen FP f loadrc j FP f f+j SP++; S[ SP] ← FP + j; Abb.
Übersetzerbau: Virtuelle Maschinen by Reinhard Wilhelm
by Edward
4.4