Delphi optimiert die Schleife. Und wenn es günstiger ist runterzuzählen statt hoch und es keinen unterschied macht, dann läßt der Compiler die Schleife anders rum laufen.
Es ist nämlich in
ASM einfacher ein Register auf 0 zu prüfen, als zwei Werte miteinander zu vergleichen.