Diskussion:Codeoptimierung

Aus Lowlevel
Wechseln zu:Navigation,

PUSHA/POPA

"Ist es schneller jedes Register einzeln zu pushen, oder besser pusha?" – ich denke schon, dass pusha/popa schneller sind, die Frage ist für mich eher, ob es schneller ist, sieben Register (eax, ebx, ecx, edx, esi, edi, ebp) zu pushen/popen statt acht (also mit esp) mit pusha/popa auf einmal... --XanClic 18:02, 19. Feb. 2010 (CET)

Stimmt, daran habe ich noch gar nicht gedacht. Ich selbst nehme immer pusha/popa, aber eher aus Faulheit, weil ich nicht jedes Register einzeln hinschreiben will :) --Bjork 18:35, 19. Feb. 2010 (CET)
Laut AMD braucht ein pusha gerade einmal doppelt solange wie ein einfaches push, pusha ist daher wohl um einiges schneller(das Gleich gilt für pop)--MNemo 18:47, 19. Feb. 2010 (CET)
Deshalb ist es ja noch "die Frage" und keine Tatsache. ;-) --XanClic 20:42, 19. Feb. 2010 (CET)


Es sind nicht 7 Register, sondern 8 Register die auf den Stack (PUSHA) gebracht bzw. vom Stack (POPA) geholt werden.

Siehe: http://www.coding-wiki.de/wiki/index.php?title=ASM/PUSHA --ScollPi 18:41, 19. Feb. 2010 (CET)