Heidi Anlauff: Das MMIX-Buch
Das MMIX-Buch
Buch
- Ein praxisnaher Zugang zur Informatik
- Springer Berlin Heidelberg, 09/2002
- Einband: Kartoniert / Broschiert, Paperback
- Sprache: Deutsch
- ISBN-13: 9783540424086
- Bestellnummer: 7703375
- Umfang: 348 Seiten
- Sonstiges: 3 SW-Abb., XIV, 328 S. 120 Abb.
- Auflage: 2002
- Copyright-Jahr: 2002
- Gewicht: 517 g
- Maße: 236 x 157 mm
- Stärke: 25 mm
- Erscheinungstermin: 18.9.2002
- Serie: Springer-Lehrbuch
Beschreibung
Dieses Lehrbuch gibt eine praxisnahe Einführung in die Informatik. Zunächst werden die Grundlagen der Kodierung und der Informationsdarstellung abgehandelt und Kontroll- und Datenstrukturen vorgestellt. Anschließend werden Architekturmerkmale von Prozessoren (RISC und CISC) sowie Mechanismen der Systemsteuerung wie Pipelining und Interrupts erläutert. Es folgt eine Beschreibung der wichtigsten Funktionen eines Betriebssystems wie die Organisation von Prozessen und die Speicherverwaltung. Die Darstellung erfolgt mittels des Modellprozessors MMIX, der von Donald E. Knuth in seinem Standardwerk "The Art of Computer Programming" entwickelt wurde. Die Funktionsweise dieses Prozessors wird in einem eigenen Kapitel ausführlich beschrieben. Ferner werden die Programmierumgebung des MMIX und seine Assemblersprache MMIXAL in ergänzenden Anhängen zusammengestellt. TOC: Aus dem Inhalt: Einführung.- Codes.- Einführung in MMIX.- Sprungbefehle und Kontrollstrukturen.- Ablaufsteuerung.- Steuerwerk.- Speicher.- Datenstrukturen.- Unterprogramme.- Interrupts.- Programmieren mit MMIX.- Fehlermeldungen vom MMIXAL.- Zusammenfassung der Assemblersprache MMIXAL.- Sachverzeichnis.Inhaltsangabe
1. Einführung.- 1.1 Computer.- 1.2 Die Hardware-Software-Schnittstelle.- 1.3 Das klassische Computermodell.- 1.4 Warum MMIX?.- 2. Darstellung von Information Codierung und Zahlensysteme.- 2.1 Information, Daten und Nachricht.- 2.2 Codierung.- 2.3 Zahlensysteme.- 2.3.1 Dezimalsystem.- 2.3.2 Allgemeine Stellenwertsysteme.- 2.3.3 Umwandlung der Zahlenformate.- 2.4 Negative Zahlen.- 2.4.1 Der Zahlenkreis.- 2.4.2 Rechnen mit dem Zwei-Komplement.- 2.5 Byte als Maß für die Speicherkapazität.- 3. Einführung in MMIX.- 3.1 Der MMIX-Prozessor.- 3.1.1 MMIX-Befehle.- 3.1.2 Ein erstes Programm für MMIX.- 3.1.3 Direktoperanden.- 3.2 Speicherzugriff.- 3.2.1 Speicherorganisation.- 3.2.2 Reservieren und Vorbelegen von Speicher.- 3.2.3 Lesen aus dem Speicher.- 3.2.4 Befehle zum Speichern.- 3.2.5 Vorzeichenbehandlung beim Laden und Speichern.- 3.3 Arithmetik mit MMIX.- 3.4 Einfache Ein- und Ausgabe.- 3.4.1 Zeichenketten.- 3.4.2 Ausgabe von Zeichenketten.- 3.4.3 Einlesen von Zeichenketten.- 3.5 Symbole zur Erhöhung der Lesbarkeit eines Programms.- 4. Sprungbefehle und Kontrollstrukturen.- 4.1 Unbedingte Sprünge.- 4.1.1 Der JMP-Befehl.- 4.1.2 Der GO-Befehl.- 4.2 Bedingte Verzweigungen.- 4.3 Kontrollstrukturen.- 4.3.1 Schleifen.- 4.3.2 Exkurs: Vergleichsbefehle.- 4.3.3 Alternativen.- 4.3.4 Exkurs: Lokale Labels.- 4.3.5 Mehrfachauswahl.- 4.4 Bedingte Zuweisungen.- 5. Unterprogramme.- 5.1 Einführung.- 5.2 Unterprogrammaufrufe mit GO.- 5.2.1 Übergabe von Parametern in Registern.- 5.3 Der Stack.- 5.3.1 Ablage der Rücksprungadresse auf dem Stack.- 5.3.2 Ablage von lokalen Variablen auf dem Stack.- 5.3.3 Parameterübergabe auf dem Stack.- 5.3.4 Sichern von Registern auf dem Stack.- 5.3.5 Stackframes.- 5.4 Exkurs: Präfix und lokale Symbole.- 5.5 Der Registerstack.- 5.5.1 Das Konzept.- 5.5.2 Globale und lokale Register.- 5.5.3 Die PUSHJ-Instruktion.- 5.5.4 Die POP-Instruktion.- 5.5.5 Der Registerring und das Stacksegment.- 6. Datenstrukturen.- 6.1 Bit.- 6.1.1 Elementare logische Verknüpfungen.- 6.1.2 Schiebebefehle.- 6.1.3 Logische Verknüpfungen mit 16-Bit-Direktoperanden.- 6.1.4 Erweiterte Bitoperationen.- 6.2 Adressen und Zeiger.- 6.3 Gleitkommazahlen.- 6.3.1 Gebrochene Zahlen.- 6.3.2 Codierung gebrochener Zahlen.- 6.3.3 Rechnen mit 64-Bit-Gleitkommazahlen.- 6.3.4 32-Bit-Gleitkommazahlen.- 6.4 Zusammengesetzte Datentypen.- 6.4.1 Verbunde oder Records.- 6.4.2 Felder oder Arrays.- 6.5 Abstrakte Datentypen.- 6.6 Anwendung: Bitmap-Grafiken erzeugen und bearbeiten.- 6.6.1 Erzeugung von zweifarbigen Bitmaps.- 6.6.2 Bearbeiten von Bitmaps mit 256 Graustufen.- 7. Ablaufsteuerung.- 7.1 Steuerwerk und Befehlszyklus.- 7.2 Adressierungsarten.- 7.3 RISC und CISC.- 7.4 Pipelining.- 7.5 Interrupts.- 7.5.1 Interruptursachen.- 7.5.2 Ausführung eines Trips.- 7.5.3 Ausführung eines Traps.- 7.5.4 Rückkehr aus dem Interrupt.- 7.5.5 Beispiele.- 8. Betriebssystem.- 8.1 Speicherverwaltung.- 8.1.1 Speicherhierarchie.- 8.1.2 Virtuelle Adressen.- 8.1.3 Reale Adressen.- 8.1.4 Paging.- 8.2 Betriebssystemaufrufe.- 8.3 Prozesse.- 8.3.1 Tasks.- 8.3.2 Synchronisation und Kommunikation.- A. Liste der Befehle.- B. Liste der Programme.- c. Programmieren mit MMIX.- C. 1 Die Programmierumgebung zum Laufen bringen.- C. 1.1 Die ausführbaren Dateien herunterladen.- C. 1.2 Die Programmierumgebung selbst übersetzen.- C. 2 Versuche.- D. Meldungen von mmixal und mmix.- D. 1 Warnungen von mmixal.- D. 2 Fehlermeldungen von mmixal.- D. 3 Meldungen von mmix.- E. Zusammenfassung der Assemblersprache MMIXAL.- E. 1 Einfache Elemente.- E. 2 Ausdrücke.- E. 3 Instruktionen.- F. Lösung ausgewählter Übungsaufgaben.Klappentext
Dieses Lehrbuch gibt eine praxisnahe Einführung in die Informatik.Zunächst werden die Grundlagen der Kodierung und der Informationsdarstellung abgehandelt und Kontroll- und Datenstrukturen vorgestellt. Anschließend werden Architekturmerkmale von Prozessoren (RISC und CISC) sowie Mechanismen der Systemsteuerung wie Pipelining und Interrupts erläutert. Es folgt eine Beschreibung der wichtigsten Funktionen eines Betriebssystems wie die Organisation von Prozessen und die Speicherverwaltung.
Die Darstellung erfolgt mittels des Modellprozessors MMIX, der von Donald E. Knuth in seinem Standardwerk "The Art of Computer Programming" entwickelt wurde. Die Funktionsweise dieses Prozessors wird in einem eigenen Kapitel ausführlich beschrieben. Ferner werden die Programmierumgebung des MMIX und seine Assemblersprache MMIXAL in ergänzenden Anhängen zusammengestellt.
Biografie (Martin Ruckert)
Prof. Dr Martin Ruckert, Munich University of Applied Sciences, Dept. of Mathematics and Computer Science, is an Educator and Software Engineer, who makes reasoning about Mathematics and Computer Programs an enjoyable experience.Anmerkungen:
Bitte beachten Sie, dass auch wir der Preisbindung unterliegen und kurzfristige Preiserhöhungen oder -senkungen an Sie weitergeben müssen.