Delphi, he he fallait préciser dans la question, j'aurais gagné du temps à passer mon chemin.
Dans tous les cas faudrait savoir ce qui va se passer dans tes boucles sinon impossible de savoir ce qui sera le mieux.
Commence deja par optimiser l'algo, c'est toujours la 1ere chose à faire:
for(v = 0; v < 10; v++)
n'est pas bon puisqu'il devrait tester 'v < 10' dès le début alors qu'on sait qu'on commence sur 0.
On remplacera par:
v = 0;
do {
// autres boucles (sur même principe) et codes ici
} while(++v < 10);
On saute déjà le 1er test inutile.
Ensuite encore mieux mais seulement si possible, à toi de le savoir. Commencer à la valeur haute et décrémenter le compteur vers 0, le code ASM généré est toujours plus court.
Exemple:
mov edi, 10
....
vLOOP:
;;; ton code ici
dec edi
jnz vLOOP
On gagne ainsi l'instruction "cmp edi, 10".
ciao...
[ Lien ]BruNews, MVP VC++