Zitat von
Christian Seehase:
So gesehen könnte der Geschwindigkeitsvorteil sogar von der CPU abhängen.
Das hängt sie immer. Die Intel Chip Architekten haben den LOOP Befehl einfach vernachlässigt. Man kann es auch so sehen, dass Intel Prozesooren im Druchschnitt alle "höheren" (CISC) Befehle viel langsamer ausführen als mehrere/viele "niedrige" (RISC) Befehle.
Hier noch ein schnellere Variante der Test_DECJcc Funktion für den P4:
Code:
MOV ECX, EAX
RDTSC // Startzeit ermitteln (EDX:EAX)
@@Repeat:
SUB ECX, 1
JNZ @@Repeat
Ein "SUB ECX,1" ist auf einem P4 schneller als ein
DEC ECX. Man staune, aber es ist so.