@choose, deine Annahme das das Runterzählen schneller ist ist einfach falsch.
1.) Da du Result als Zählervariable benutzt verhinderst du das der Compiler den Code besser optimieren kann
2.) WENN der Compiler optimieren kann dann würde er schnelleren Code mit einer simplen for to Schleife erzeugen. In diesem Beispiel würde er Assemblercode erzeugen der auch gegen Null überprüft
3.) Eine BottomUp Schleife ist Cache-unfreundlich
besser ist folgender Code
Delphi-Quellcode:
var
I: Integer;
begin
for I := Low() to High() do
if Data[I] = XYZ then
begin
Result := I;
Exit;
end;
end;
Gruß Hagen