Full Description
Die Prozessoren sind schneller, ihre Register sind breiter und die Hardwareunterstutzung fur Betriebssysteme hat zugenommen.Dennoch sind die grundlegenden Techniken der maschinennahen Programmierung dieselben geblieben. Diese bilden den Schwerpunkt dieses Buches, welches in der 2., durchgesehenen und verbesserten Auflage vorliegt. Es wird ein guter Einblick in die Codeerzeugung von Ubersetzern geschaffen. Weiterhin werden die Grundlagen fur das Verstandnis der Systemprogrammierung an der Hardware- und Softwareschnittstelle solide und verstandlich vermittelt.
Contents
1 Einleitung.- 1.1 Einsatzgebiete maschinennaher Programmierung.- 1.2 Die Entwicklungsgeschichte elektronischer Rechner.- 2 Darstellung von Informationen.- 2.1 Datenformate.- 2.2 Zahlensysteme und Arithmetik.- 2.3 Kodierung von Informationen.- 3 Rechnerorganisation.- 3.1 Aufbau und Struktur von Rechnern.- 3.2 Speicherorganisation.- 3.3 Modell des Rechnerkerns.- 3.4 Kodierung von Befehlen.- 3.5 Operandenarten und Adressierungsmodi.- 3.6 Adressierungsmodi bei Operanden.- 3.7 Zugriff zum Speicher.- 3.8 Sprungbefehle.- 3.9 Bedingte Sprünge.- 4 Prozessorarchitekturen.- 4.1 Intel 8086.- 4.2 Motorola 68000.- 5 Assembler.- 5.1 Assemblersprache.- 5.2 Intel-Assembler.- 5.3 Motorola-Assembler.- 6 Arithmetischer Ausdruck.- 6.1 Linearisierung des Baumes.- 6.2 Auswertung mittels Stapel.- 6.3 Intel: Arithmetik-Befehle und Stapelzugriff.- 6.4 Motorola: Arithmetik-Befehle und Stapelzugriff.- 6.5 Motorola-Programme zur Auswertung arithmetischer Ausdrücke.- 7 Bedingte Anweisungen.- 7.1 Optimale Auswertung Boolescher Ausdrücke.- 7.2 Programmbeispiele zu bedingten Anweisungen.- 8 Fallanweisungen.- 8.1 Intel-Programmbeispiele für Fallanweisung.- 8.2 Motorola-Programmbeispiele für Fallanweisung.- 9 Speicherabbildung von Datentypen.- 9.1 Reihungen (array).- 9.2 Verbunde (record).- 10 Schleifen.- 10.1 Intel: Programmbeispiele zu Schleifen.- 10.2 Motorola: Programmbeispiele zu Schleifen.- 11 Unterprogramme.- 11.1 Prozeduren.- 11.2 Programmbeispiele zu Prozeduren.- 11.3 Rekursive Prozeduren.- 12 Dynamische Variable und Zeiger.- 12.1 Zeigervariable.- 12.2 Beispiel: lineare Liste.- 13 Unterbrechungen.- 13.1 Intel: Unterbrechungen.- 13.2 Motorola: Unterbrechungen.- 14 Ein-/Ausgabe.- 14.1 Beispiel zur Ein-/Ausgabe.- 14.2 Intel-Programmbeispiele.- 14.3 Motorola-Programmbeispiele.- AZeichensätze.- B Literaturverzeichnis.- C Sachwortverzeichnis.