Interface MaschinenModel


public interface MaschinenModel

Das Modell einer Registermaschine.

Version:
2015-01-18
Author:
Bernd Gramlich

Method Summary
 void brichAb()
          Brich das Programm ab.
 int gibAkkumulatorinhalt()
          Nenne den Inhalt des Akkumulators.
 java.util.ArrayList<java.lang.Integer> gibArgumente()
          Nenne die Argumente der Programmbefehle.
 int gibBefehlsnummer()
          Nenne die Nummer des aktuellen Befehls.
 int gibBefehlszaehlerinhalt()
          Nenne den Inhalt des Befehlszaehlers.
 java.util.ArrayList<Befehl> gibProgramm()
          Nenne die Programmbefehle.
 java.util.ArrayList<java.lang.Integer> gibSpeicherbelegung()
          Nenne die Speicherbelegung.
 int gibZelleninhalt()
          Nenne den Inhalt der aktuellen Speicherzelle.
 int gibZellennummer()
          Nenne die Nummer der aktuellen Speicherzelle.
 void ladeProgramm(java.io.File programmDatei)
          Lade das Programm aus der Programmdatei.
 void laufe()
          Lass das Programm laufen.
 void laufeSchrittweise()
          Lass das Programm schrittweise laufen.
 void loescheAlsBeobachter(MaschinenBeobachter b)
          Loesche einen Positionsbeobachter.
 void neu()
          Beginne ein neues Programm.
 boolean setzeArgument(int zeile, int argument)
          Schreibe ein Argument in eine Programmzeile.
 void setzeBefehl(int zeile, Befehl kommando)
          Schreibe einen Befehl in eine Programmzeile.
 void setzeFort()
          Setze das Programm fort.
 boolean setzeZelle(int zelle, int zahl)
          Schreibe eine Zahl in eine Speicherzelle.
 void speichereAlsBeobachter(MaschinenBeobachter b)
          Speichere einen Maschinenbeobachter.
 boolean speichereProgramm(java.io.File programmDatei)
          Speichere das Programm in die Programmdatei.
 void unterbrich()
          Unterbrich das Programm.
 

Method Detail

brichAb

void brichAb()
Brich das Programm ab.


gibAkkumulatorinhalt

int gibAkkumulatorinhalt()
Nenne den Inhalt des Akkumulators.

Returns:
Der Inhalt des Akkumulators.

gibArgumente

java.util.ArrayList<java.lang.Integer> gibArgumente()
Nenne die Argumente der Programmbefehle.

Returns:
Die Liste der Argumente der Programmbefehle.

gibBefehlsnummer

int gibBefehlsnummer()
Nenne die Nummer des aktuellen Befehls.

Returns:
Die Nummer des aktuellen Befehls.

gibBefehlszaehlerinhalt

int gibBefehlszaehlerinhalt()
Nenne den Inhalt des Befehlszaehlers.

Returns:
Der Inhalt des Befehlszaehlers.

gibProgramm

java.util.ArrayList<Befehl> gibProgramm()
Nenne die Programmbefehle.

Returns:
Die Liste der Programmbefehle.

gibSpeicherbelegung

java.util.ArrayList<java.lang.Integer> gibSpeicherbelegung()
Nenne die Speicherbelegung.

Returns:
Die Liste der Zelleninhalte.

gibZelleninhalt

int gibZelleninhalt()
Nenne den Inhalt der aktuellen Speicherzelle.

Returns:
Der Inhalt der aktuellen Speicherzelle.

gibZellennummer

int gibZellennummer()
Nenne die Nummer der aktuellen Speicherzelle.

Returns:
Die Nummer der aktuellen Speicherzelle.

ladeProgramm

void ladeProgramm(java.io.File programmDatei)
Lade das Programm aus der Programmdatei.

Parameters:
programmDatei - Die Datei, aus der das Programm geladen werden soll.

laufe

void laufe()
Lass das Programm laufen.


laufeSchrittweise

void laufeSchrittweise()
Lass das Programm schrittweise laufen.


loescheAlsBeobachter

void loescheAlsBeobachter(MaschinenBeobachter b)
Loesche einen Positionsbeobachter.

Parameters:
b - Der Positionsbeobachter.

neu

void neu()
Beginne ein neues Programm.


setzeArgument

boolean setzeArgument(int zeile,
                      int argument)
Schreibe ein Argument in eine Programmzeile.

Parameters:
zeile - Die Programmzeile, in die das Argument geschrieben werden soll.
argument - Das Argument, das in die Programmzeile geschrieben werden soll.
Returns:
True genau dann, wenn das Argument korrekt war.

setzeBefehl

void setzeBefehl(int zeile,
                 Befehl kommando)
Schreibe einen Befehl in eine Programmzeile.

Parameters:
zeile - Die Programmzeile, in die der Befehl geschrieben werden soll.
kommando - Der Befehl, der in die Programmzeile geschrieben werden soll.

setzeFort

void setzeFort()
Setze das Programm fort.


setzeZelle

boolean setzeZelle(int zelle,
                   int zahl)
Schreibe eine Zahl in eine Speicherzelle.

Parameters:
zelle - Die Speicherzelle, in die die Zahl geschrieben werden soll.
zahl - Die Zahl, die in die Speicherzelle geschrieben werden soll.
Returns:
True genau dann, wenn die Zahl korrekt war.

speichereAlsBeobachter

void speichereAlsBeobachter(MaschinenBeobachter b)
Speichere einen Maschinenbeobachter.

Parameters:
b - Der Maschinenbeobachter.

speichereProgramm

boolean speichereProgramm(java.io.File programmDatei)
Speichere das Programm in die Programmdatei.

Parameters:
programmDatei - Die Datei, in die das Programm gespeichert werden soll.

unterbrich

void unterbrich()
Unterbrich das Programm.