Seite 1 von 1

Hausübung 13: Aufgabe 2 - LR Postorder - RL-Postorder

Verfasst: 7. Feb 2012 14:18
von TBA
Hallo,

ich sitze gerade an der Aufgabe 2 und beim Teil a) wurde eine Left-Right Postorder gefordert. Wenn ich nun eher stupide von dieser Postorder den Assembler Code schreiben möchte, braucht man aber eine Right-Left Postorder - da ja Befehle wie fsubp => %ST(1) := %ST(0) - %ST(1); fpop
ausführen.
Habe ich gerade ein Denkfehler, oder hängen die beiden Aufgabenteile nicht so stark zusammen?! Falls nicht, ist das didaktisch nicht sehr geschickt gewählt.

Grüße
Thomas

Re: Hausübung 13: Aufgabe 2 - LR Postorder - RL-Postorder

Verfasst: 7. Feb 2012 17:06
von studypad
Ich denke dieses Problem mit der Subtraktion darf durch die Umstellung von g und (e+f) gelöst werden.. .sonst wäre es echt nicht so einfach machbar..

Re: Hausübung 13: Aufgabe 2 - LR Postorder - RL-Postorder

Verfasst: 7. Feb 2012 18:33
von arne.lottmann
Müssen ernsthaft beide Operanden auf den Stack gepusht werden, bevor man die entsprechenden Operationen ausführt? Es gibt doch z.B. fsub (ohne p), sodass man einfach den ersten Operanden pusht und danach mit fsub <xyz> den zweiten abziehen kann…

Re: Hausübung 13: Aufgabe 2 - LR Postorder - RL-Postorder

Verfasst: 7. Feb 2012 20:48
von mw1039
Solange ihr die Zahlen als float behandelt (also die FPU nehmt) duerft ihr alles benutzen was der Prozessor hergibt und sinnvoll ist.