Beispielprogramm Rechner

Neue Frage »

Auf diesen Beitrag antworten »
Dr.Java Beispielprogramm Rechner

Hallo. Die Bilder stellen eine ungefähre Erklärung dar für ein Programm das für einen fiktiven Rechner erstellt wurde und wie der Rechner grob funktioniert .Meine Frage holt jetzt etwas weiter aus, aber ich verstehe trotz oder wegen der gegeben Daten (s. unten) das Programm mit S(0) (=x) und S(1) (=y) einfach nicht. Kann mir vielleicht jemand erklären wie das funktioniert ?




(Weil nicht alles in den Anhang gepasst hat,habe ich zwei Bilder separat hochgeladen)

Danke im voraus und lg
 
Auf diesen Beitrag antworten »
eulerscheZahl

Speicherinhalt zu Beginn:
S(0) = x, S(1) = y, S(2) = ?, ACC = ?
jetzt wird S(0) geladen:
S(0) = x, S(1) = y, S(2) = ?, ACC = x
und in S(2) geschrieben:
S(0) = x, S(1) = y, S(2) = x, ACC = x
x ist in S(2) gespeichert. Also kann S(0) überschrieben werden, ohne x zu verlieren.
Lade y von S(1), schreibe nach S(0):
S(0) = y, S(1) = y, S(2) = x, ACC = y
Jetzt noch x zurück auf S(1):
S(0) = y, S(1) = x, S(2) = x, ACC = x
und die Variablen sind getauscht.
Auf diesen Beitrag antworten »
Dr.Java

Erstmal danke ,für deine schnelle Antwort .Das Programm ergibt jetzt auch schon mehr Sinn, so ganz folgen kann ich dir aber nicht.

Zitat:
Original von eulerscheZahl
Speicherinhalt zu Beginn:
S(0) = x, S(1) = y, S(2) = ?, ACC = ?

Okay,klingt logisch,aber warum ACC=? ,in der Liste steht doch ACC:=S(0)=x?

Zitat:
Original von eulerscheZahl
jetzt wird S(0) geladen:
S(0) = x, S(1) = y, S(2) = ?, ACC = x
und in S(2) geschrieben:
S(0) = x, S(1) = y, S(2) = x, ACC = x

Ach so das ist dann erst jetzt der Inhalt der Tabelle übertragen ,oder?S(1)=y ,per Definition?

Zitat:
Original von eulerscheZahl
x ist in S(2) gespeichert. Also kann S(0) überschrieben werden, ohne x zu verlieren.

Warum gerade bei S(2) und nicht S(3) oder S(1)?

Zitat:
Original von eulerscheZahl
Lade y von S(1), schreibe nach S(0):
S(0) = y, S(1) = y, S(2) = x, ACC = y
Jetzt noch x zurück auf S(1):
S(0) = y, S(1) = x, S(2) = x, ACC = x
und die Variablen sind getauscht.

Das Ziel war also nur das gilt S(0)=y und S(1)=x .

Mir fällt auf das ich nicht ganz verstehe wie das Load und Store hier funktioniert ,beziehungsweise gemeint ist.Ich meine ich kenne ja die Definition und so,aber woher weiß man dann was man tun muss ,wenn da Store 2 oder Load 0 steht?

lg
Auf diesen Beitrag antworten »
eulerscheZahl

Zitat:
Okay,klingt logisch,aber warum ACC=? ,in der Liste steht doch ACC:=S(0)=x?

Und bevor das ausgeführt wird, kennen wir den Inhalt nicht (ist aber auch egal, da er sowieso gleich überschrieben wird)

Zitat:
Ach so das ist dann erst jetzt der Inhalt der Tabelle übertragen ,oder?S(1)=y ,per Definition?

ich verstehe die Frage nicht.

Zitat:
Warum gerade bei S(2) und nicht S(3) oder S(1)?

wegen STORE 2

LOAD 0 lädt einfach den Inhalt von S(0) in ACC.
STORE 2 schreibt den Inhalt von ACC in S(2) rein.
 
Auf diesen Beitrag antworten »
Dr.Java

Zitat:
Original von eulerscheZahl
Zitat:
Okay,klingt logisch,aber warum ACC=? ,in der Liste steht doch ACC:=S(0)=x?

Und bevor das ausgeführt wird, kennen wir den Inhalt nicht (ist aber auch egal, da er sowieso gleich überschrieben wird)

Ach so okay.

Zitat:
Original von eulerscheZahl
Zitat:
Ach so das ist dann erst jetzt der Inhalt der Tabelle übertragen ,oder?S(1)=y ,per Definition?

ich verstehe die Frage nicht.

Ich fragte mich nur woher du weiß das S(1)=y ist und hab dann vermutet das du das geschrieben hast ,weil es ja so definiert wurde.Und ich habe vermutet das
" S(0) = x, S(1) = y, S(2) = ?, ACC = x..." einfach dem Inhalt der Tabelle,der ersten Spalte entspricht.

Zitat:
Original von eulerscheZahl
Zitat:
Warum gerade bei S(2) und nicht S(3) oder S(1)?

wegen STORE 2

LOAD 0 lädt einfach den Inhalt von S(0) in ACC.
STORE 2 schreibt den Inhalt von ACC in S(2) rein.


Ah okay, und wenn da steht Store 1 schreibt es ebenfalls den Inhalt in S(1) rein?

lg
Auf diesen Beitrag antworten »
eulerscheZahl

" S(0) = x, S(1) = y, S(2) = ?, ACC = x..." ist die Speicherbelegung nach LOAD 0

Zitat:
Ah okay, und wenn da steht Store 1 schreibt es ebenfalls den Inhalt in S(1) rein?

Dann wird der Inhalt ausschließlich nach S(1) geschrieben smile
Auf diesen Beitrag antworten »
Dr.Java

Zitat:
Original von eulerscheZahl
" S(0) = x, S(1) = y, S(2) = ?, ACC = x..." ist die Speicherbelegung nach LOAD 0

Das meinte ich.

Zitat:
Original von eulerscheZahl
Zitat:
Ah okay, und wenn da steht Store 1 schreibt es ebenfalls den Inhalt in S(1) rein?

Dann wird der Inhalt ausschließlich nach S(1) geschrieben smile

Hehe genau.So langsam verstehe ich das ganze ,bin noch nicht ganz dahinter gekommen ,ich schaue mir das nochmal in Ruhe an.

Danke dir und lg
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »