Rechnerarchitektur

Stand: 22.02.2011

Zeitrichtwert: 19 Unterrichtsstunden

Inhaltliche Schwerpunkte Bemerkungen

Übersicht über Rechnerkomponenten (1)

Einen ersten Einblick kann man sich verschaffen, indem man das Gehäuse eines Rechners öffnet. Einige Bestandteile lassen sich identifizieren, vieles bleibt aber eher im Unklaren. Die weitere Vorgehensweise wird besprochen. Es ist unmöglich, die Details eines hochkomplexen modernen Rechners auf die Schnelle zu verstehen. Vielversprechender ist der Ansatz, sich die prinzipielle Funktionsweise mit einfachen Rechnermodellen zu erarbeiten.

Einführung des "Murmelrechners" (2)

  • Komponenten eines Rechners
Als erstes Rechnermodell wird der "Murmelrechner" eingeführt. Es handelt sich bei diesem Rechner um eine Vergegenständlichung einer Registermaschine mit einem sehr einfachen Befehlssatz (hier: INC, DEC, JMP, TST). Register werden durch Tassen mit Murmeln dargestellt, die Arbeitsweise wird durch Aktivitäten von Personen veranschaulicht: Steuermann (Steuerwerk), Rechenkünstler (Rechenwerk), Läufer (Bus), (später kommt noch ein "Programmzähler" hinzu). Mehrere einfache (vorgegebene bzw. selbst entwickelte) Murmelrechnerprogramme werden mit diesem Rechnermodell durchgespielt. (vgl. Murmelrechner auf inf-schule.de)

Registermaschine (2)

  • Register
  • Assemblersprache / Registermaschinensprache
Zum Registermaschinenmodell gelangt man, indem man die beim Murmelrechner bereits informell benutzten Konzepte präzisiert (Register als Tassenersatz; Registermaschinenbefehle als Ersatz für die Anweisungen an den Murmelrechner). Mit Hilfe eines passenden Simulationsprogramms (z.B. Hades ) lässt sich die Abarbeitung von Registermaschinenprogrammen gut veranschaulichen. Zur ersten Verdeutlichung der Leistungsfähigkeit des sehr primitiven Rechnermodells werden Programme zur Durchführung elementarer Rechenoperationen entwickelt und getestet. Hierbei zeigt sich sehr schnell, dass man systematisch vorgehen sollte, um den Überblick bei der Programmentwicklung nicht zu verlieren.

Übersetzung einfacher Hochsprachenprogramme in Registermaschinenprogramme (4)

  • Durchführbarkeit und Automatisierbarkeit von Übersetzungen
Ziel ist es, sich exemplarisch zu vergewissern, dass beliebige Hochsprachenprogramme in äquivalente Registermaschinenprogramme übersetzt werden können. Im Unterricht werden hierzu Übersetzungsschablonen für einfache Programmstrukturen (wie Zuweisungen und Kontrollstrukturen) entwickelt und getestet. Vgl. inf-schule.de

Von Neumann-Konzept (4)

  • Vereinheitlichung von Daten- und Programmspeicher
  • Befehlszyklus
Zunächst wird der Murmelrechner zum programmierbaren Rechner erweitert: Die beim Murmelrechner benutzten Befehle werden durch (andersfarbige) Murmeln codiert. Der Befehlszyklus zur Abarbeitung der Befehle wird anhand der konkreten Handlungen geklärt und in Phasen aufgeteilt. Die beim Murmelrechner erzielten Ergebnisse werden dann auf die Registermaschinenebene übertragen. Wieder kommt das Simulationsprogramm (jetzt aber auf CPU-Ebene) zur Verdeutlichung der Vorgänge zum Einsatz.

Experimente mit einem realen Rechnermodell (6)

  • Maschinensprache
  • Binärdarstellung von Zahlen
  • Arbeitsgeschwindigkeit

Die bisher nur in einer Software-Simulation gewonnenen Erkenntnisse sollen abschließend an einem Hardware-Modell verdeutlicht werden ( z.B. Bonsai ). Hierzu müssen die bisher benutzten natürlichen Zahlen (als Registerinhalte) binär codiert werden. http://www.hsg-kl.de/faecher/inf/material/bonsai/

Es folgt ein Exkurs zur Behandlung von Zahlendarstellungen im Dual- und Hexadezimalsystem

Zudem müssen die Beschränkungen einer realen Maschine (wie endliche Zahl von Registern, Registerüberlauf) geklärt werden. Durch Experimente mit dem realen Modell werden die Grundlagen des von-Neumann-Konzepts wiederholt und weiter vertieft (z. B. durch Klärung der Parameter für die Arbeitsgeschwindigkeit).

Valid XHTML 1.0 Strict Valid XHTML 1.0