Die Registermaschine (auch RAM = Random Access Machine) ist ein Rechnermodell, das einem realen Rechner (PC) sehr ähnlich ist. Ein realer Rechner kann alles, was auch eine Registermaschine kann. Da man auch beweisen kann, daß sich die Registermaschine und die Turingmaschine gegenseitig mit polynomieller Laufzeit simulieren können, gelten Aussagen, die man für die Turingmaschine beweisen kann, auch für die Registermaschine und damit auch für reale Rechner. Dies ist in der Theoretischen Informatik von Vorteil, da man viele Aussagen an Hand der Turingmaschine leichter beweisen kann.
Eine Registermaschine arbeitet mit natürlichen Zahlen. Alle ab jetzt vorkommenden Zahlen sollten in diesem Kontext betrachtet werden.
Eine Registermaschine besteht aus
ein Befehlszeiger b
einem Input-Wert m
einem Output-Wert n
und einem unendlich großen Speicher aus durchnummerierten Speicherzellen (Register) r(1), r(2), r(3),._..
Ein Registermaschinenprogramm besteht aus
einer Menge von Befehlen mit jeweils eindeutiger Nummer
und einer Startmarke
Ein Befehl kann folgendermaßen aussehen (i > 0):
Befehl
Wirkung
then p
r(i):=r(i)+1
b:=p
then p
Wenn r(i) > 0 dann r(i):=r(i)-1
b:=p
if then p else q
Wenn r(i)=0 dann b:=p ansonsten b:=q
Zum Starten des Programmes sollte zusätzlich ein Eingebedatensatz bestehend aus m geordneten Werten vorhanden sein.
Zu Beginn wird der Befehlszeiger b auf den Wert der Startmarke des Programmes gesetzt. Die Speicherzellen von Nummer 1 bis m werden auf die entsprechenden Werte des Eingabedatensatzes gesetzt. Die restlichen Speicherzellen erhalten den Wert 0.
Die Registermaschine führt dann nacheinander die Befehle des Programms aus. Es wird immer der Befehl mit der Nummer b ausgeführt. Die Ausführung eines nichtexistenten Befehls terminiert das Programm.
Nach der Terminierung werden alle Werte von r(1) bis r(n) ausgegeben.
Dieser Beitrag ist aus der XML-Version der deutschen WikiPedia® entwickelt worden und unterliegt inhaltlich den GNU FDL-Lizenzbestimmungen. Linkziele außerhalb der wikipedia-Inhalte unterliegen den Urheberrechten der jeweiligen Anbieter
( DirectDownloads ) Kalenderblätter druckfertig aufbereitet für Schmuckblätter zum Selbstdrucken im Word DOC6/RTF Format, je Euro 5 über Click&BuyJAN | FEB | MÄRZ APRIL | MAI | JUNI JULI | AUG | SEPT OKT | NOV | DEZ
Das Geschenk für jeden Anlass, nicht nur bei 'runden' Jubiläen Andere Einzeltage oder Zahlungsarten bitte HIER bestellen
Diese Web Site verdient ihr Geld durch Produktverkäufe (CD-ROM, downloads) und in erster Linie durch Anzeigen. Wenn Sie als Webmaster zuverlässige Partner suchen für Ihr eigenes Anzeigenschäft, dürfen Sie sich gerne auf unsere Empfehlungen stützen:
z.B.: GigaCash & ProfiWin