Zitat von
himitsu:
Wer sagt, daß Result immer (wärend der Laufzeit der Prozedur) in EAX liegt?
Luckie
Dumm ist nur, dass das nicht stimmt. Ganz im Gegenteil, wenn man eine weitere lokale Variable einführt, kann es passieren, dass der Compiler unter einen zusätzlichen CPU Register-Druck gerät und verbannt die Variable auf den Stack, was zu mehr Speicherzugriffen führt. Bei kleinen/engen Schleifen kann dass dann schon mal Auswirkungen auf die Geschwindigkeit haben.
Übrigens zu TurboPascal 7.0 und Delphi 1 Zeiten war Luckies Aussage richtig. Aber ab Delphi 5 (die anderen Delphi Versionen habe ich jetzt gerade nicht zur Hand) ist die Optimierung schlau genug.