Sasume (./84) :
-> D'où l'intérêt de laisser le compilateur réaliser lui-même les bonnes optimisations (puisque tu te trompes et que ton code est moins lisible)
Si je remplace les & 15 du moteur de collisions de mon Sonic par des % 16 ou pire les >> 4 par des / 16 je peux te jurer qu'il tourne *carrément* moins bien niveau vitesse, même si le résultat est exactement le même visuellement parce que je ne tombe jamais dans les cas limite...

Y'a des fois où t'as pas le choix...
Et pour te répondre Kevin non c'est pas évident, surtout si ton algorithme est déjà pas simple à comprendre, on sait pas vraiment ce que t'es en train de faire...
De la même manière un
ldrne pc, [r1, r0, lsl#2] est absolument évident (saut à r1[r0 * 4] si pas égal) autant sans commentaire ça m'est impossible de m'y retrouver moi-même dans mon code (qu'est-ce que j'ai foutu dans r1? ha j'ai fait aussi des calculs sur r0, c'est le résultat de quoi déjà? j'ai fait un adds avant, donc ça veut dire que ma condition c'est que le résultat d'avant soit pas nul...), alors j'imagine pas les autres qui n'ont pas l'algo en tête...
Le coup du ldr est un peu vicieux, mais le C peut être encore pire niveau lisibilité puisqu'on peut combiner ce genre d'opérations en une expression.