| HOME | NEWS | AWARDS | ABOUT ME | TEXTE | REFERATE | PROJEKTE |
|
MUSIK | CHAT | SPECIAL | LINKS |

2. Die Programmierung der Oberfläche

2.1 Desktopgestaltung

Um den Anwender eine möglichst hohes Verständnis der Registermaschine zu vermitteln, haben wir die graphische Simulation in den Vordergrund gestellt. In einem 80 Spalten mal 25 Zeilen großen Textmodus wird der kontinuierliche Ablauf der Registermaschine mit Hilfe der ASCII-Codes aufgezeigt und durch farbliche Abstufungen sowie bestimmten Fenstern sinnvoll unterteilt.

Diese Fenster kennzeichnen die einzelnen Module einer Registermaschine.

Der Prozessor, als Kernstück eines jeden (endlichen) Automaten, wird, in

Leit- und Rechenwerk unterteilt, im Zentrum des Bildschirms sichtbar.

Da dieser mit dem Programmspeicher (links) in Verbindung steht und mit dem Datenspeicher (rechts) interagiert, sind Datenleitungen entsprechend gekennzeichnet. Die "Informationsbox" unter dem Prozessor verspricht jederzeit ausführliche Informationen und Hilfestellungen dem Anwender zu geben.

Um den Simulationsablauf interaktiv zu beeinflussen, wurden Hotkeys integriert, die in einem kleineren Fenster am linken oberen Bildrand aufgelistet sind. Da uns eine möglichst benutzerfreundliche Gestaltung dieser Simulation am Herzen lag, fügten wir eine Maussteuerung hinzu. Die Ein- und Ausgabeverwirklichung ist in einem Extrafenster rechts oben angeordnet und stellt in einer realen Registermaschine den tatsächlichen Bildschirm dar.

2.2 Verwirklichung in Turbo Pascal

In dem Quelltext des Hauptprogramms erkennt man im Deklarationsteil die Konstante "cFrames" - die notwendigen Informationen der Fenster,

Hotkeys, Monitor, Prozessor, Hilfe\Information, Programmspeicher, Datenspeicher und des Hauptfensters beinhaltet. So werden die folgenden Daten benannt:

- framset: Name des Fensters,

- x: linke obere X-Position des Fensters,

- y: linke obere Y-Position des Fensters,

- l: Breite des Fensters,

- h: Höhe des Fensters,

- c1: Textfarbe und

- c2: Hintergrundfarbe.

In der Prozedur "Showdesktop" wird der Hauptbildschirm gezeichnet, wobei als erstes die einzelnen Fenster mit Rahmen und Fensternamen über die Prozedur "frame" verwirklicht werden.

Die Anwahl einzelner Fenster wurde dann sehr komfortabel durch die Prozedur "SETWINDOW" realisiert.

Im Folgenden kommen dann nur noch triviale Befehle zum Einsatz, die keiner Erklärung Wert sind.

2.3 Modulanordnung und Prozessoraufbau

Die graphische Darstellung, des aus Leit- und Rechenwerk bestehenden endlichen Automaten, war in ihrer Entstehung mit einigen Problemen behaftet. Da der verwendete Textmodus nur wenig Spielraum für graphische Extras bietet, ergab sich eine Anordnung von Befehlszähler, Befehlsregister, Akkumulator und arithmetisch-logische-Recheneinheit, die der der Kopie sehr ähnlich sieht.

Die notwendigen Datenleitungen waren schwierig zu organisieren und könnten die vorherrschende Übersichtlichkeit etwas trüben.

Da das Prozessorfenster ungünstig viel Raum beansprucht, sowie Daten- und Programmspeicher listenförmig mehr hoch denn breit sind und die "Hilfe\Informationsbox" dem Anwender viele Informationen bieten sollte, resultierte diese achsensymmetrische Anordnung.

2.4 Die erstellten Prozeduren/Funktionen

Prozedurname

Aufgabe

setwindow

aktiviert ein Fenster

frame

zeichnet einen Rahmen um ein Fenster

showdesktop

zeichnet den Bildschirm

printbyte

richtet eine Byte-Zahl rechtsbündig aus

showprogmem

zeigt den Programmspeicher an

showdatamem

zeigt den Datenspeicher an

showall

gibt alle Daten auf dem Bildschirm aus

ZURÜCK

| HOME | NEWS | AWARDS | ABOUT ME | TEXTE | REFERATE | PROJEKTE |
|
MUSIK | CHAT | SPECIAL | LINKS |