Ein Jump zu viel!?!

Benutzeravatar
MaMö
Windoof-User
Windoof-User
Beiträge: 28
Registriert: 12. Okt 2011 19:16

Ein Jump zu viel!?!

Beitrag von MaMö » 12. Jan 2012 18:17

Hallo. Ich habe heute in der Vorlesung u.a. mit dem Thema Schleifen in MIPS bemerkt, dass man sich einen Sprung im Schleifenablauf sparen kann.
Bsp.:
for (int i = 0; i != 5; i++)
whatelse()...

-> Vorlesung:
for:
beq reg1, 5, done;
...
j for;

done:
...

wäre es nicht viel geschickter es folgendermaßen zu machen?

-> meine Idee:
for:
...
bne reg1, 5, for;

...


Damit hätten wir uns einen Jump gespart. Bitte um Kommentare! :D

Mfg
MaMö

Pflücker
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 129
Registriert: 21. Sep 2010 14:27

Re: Ein Jump zu viel!?!

Beitrag von Pflücker » 19. Jan 2012 17:49

Hey, ich besuche zwar nicht die Vorlesung (hab sie schon hinter mir), aber vielleicht kann ich dir ja einen Hinweis geben ;)

Du hast zwar insofern recht, als dass in diesem speziellen Fall es durchaus geschickter wäre, deinen Vorschlag zu nutzen, allerdings solltest du beachten, dass dein Vorschlag eher einer do-while-Schleife entspricht: In jedem Fall wird der Schleifenrumpf mindestens einmal ausgeführt. Das könnte zu Problemen führen, falls deine Laufvariable abhängig von anderen Faktoren ist.

Antworten

Zurück zu „Archiv“