H3/3

Benutzeravatar
Ronny
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 133
Registriert: 18. Nov 2005 14:33
Wohnort: IGD

Re: H3/3

Beitrag von Ronny »

Das ist natuerlich erlaubt. Extrapunkte gibt es dafuer aber nicht.

downsampling
Mausschubser
Mausschubser
Beiträge: 95
Registriert: 28. Mär 2011 22:58

Re: H3/3

Beitrag von downsampling »

Extrapunkte erwarte ich dafür auch nicht. :)
Obwohl man bei der Konsoleneingabe beachten muss den Stackpointer nach jeder Eingabe wiederherzustellen.

thalane
Windoof-User
Windoof-User
Beiträge: 31
Registriert: 17. Jan 2010 21:04

Re: H3/3

Beitrag von thalane »

Weiß jemand zufällig, wieso ich einen Speicherzugriffsfehler erhalte, wenn ich zb %eax in meinem Unterprogramm vor dem nächsten Unterprogrammaufruf auf den Stack schreiben möchte?
Habe alle "Zeilen getestet" und sobald ich dort dieses "pushl %eax" einfüge bekomme ich den Fehler?!

Benutzeravatar
Ronny
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 133
Registriert: 18. Nov 2005 14:33
Wohnort: IGD

Re: H3/3

Beitrag von Ronny »

Ich vermute, dass du eine Endlosrekursion erzeugt hast und der Stack irgendwann volllaeuft.

JulM
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 1. Okt 2009 19:25

Re: H3/3

Beitrag von JulM »

Dürfen wir uns auch gleich zu Anfang ein Array definieren, in dem die Werte gespeichert werden oder wie sollen die Ergebnisse gespeichert werden?
Oder reicht es schon sie einfach zur Laufzeit auszugeben?

downsampling
Mausschubser
Mausschubser
Beiträge: 95
Registriert: 28. Mär 2011 22:58

Re: H3/3

Beitrag von downsampling »

Die Zwischenergebnisse selber kannst du ja auch in einem Register speichern. Es ist lediglich erforderlich die Spalte und Zeile auf den Stack zu pushen um zu wissen wo man ist.(immerhin terminiert der Algorithmus ja nicht wegen dem Wert des Endergebnisses)

Benutzeravatar
Ronny
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 133
Registriert: 18. Nov 2005 14:33
Wohnort: IGD

Re: H3/3

Beitrag von Ronny »

Ich zitiere auch nochmal die Aufgabenstellung.
Schreiben Sie ein Assemblerprogramm, das zu Beginn in den Variablen z und s die Zeile und die Spalte eines Elements
enthält und mit Hilfe der obigen Formel rekursiv den Wert p(z, s) berechnet.

Das heist, Eingabe sind Spalte(s) und Zeile(z) eines Elements. Ausgabe ist nur der Wert von p(z,s). Also eine einzige Zahl.

JulM
Mausschubser
Mausschubser
Beiträge: 47
Registriert: 1. Okt 2009 19:25

Re: H3/3

Beitrag von JulM »

Ronny hat geschrieben:Ich zitiere auch nochmal die Aufgabenstellung.
Schreiben Sie ein Assemblerprogramm, das zu Beginn in den Variablen z und s die Zeile und die Spalte eines Elements
enthält und mit Hilfe der obigen Formel rekursiv den Wert p(z, s) berechnet.

Das heist, Eingabe sind Spalte(s) und Zeile(z) eines Elements. Ausgabe ist nur der Wert von p(z,s). Also eine einzige Zahl.
Ach Mensch ok, jetzt habe ich die Aufgabenstellung erst richtig verstanden, danke :D
Dabei gebe ich gerade so schöne Dreiecke auf der Konsole aus 8)

Antworten

Zurück zu „Archiv“