Le code de Folco est un joli hack, pas très propre, mais qui économise effectivement 2 octets. Cela dit, ce genre de hacks rendent le débogage moins pratique.
Pen^2 Le 29/08/2012 à 16:35 Pourquoi pas propre ? bsr n'est pas un outil pour brancher et revenir, c'est un outil qui empile PC et saute à une adresse, ce n'est pas pareil. C'est comme ça qu'il faut penser quand on code en assembleur. Sinon autant faire du C.
Je connais depuis longtemps l'astuce du bsr pour empiler une constante. Je ne l'ai pas utilisée ici parce que les chaînes de caractères n'ont rien à faire au plein milieu d'une fonction. Normalement, elles sont censées être dans des sections mergeables, pour pouvoir unifier les chaînes de caractères identiques si elles apparaissent plusieurs fois dans le programme; je ne l'ai pas fait dans mon exemple par souci de simplicité (mais GCC fait ça très bien).
PS: Regarde le code source de TitaniK pour voir que je suis tout à fait capable d'écrire du code assembleur tordu quand c'est nécessaire. (Dans TitaniK, c'est nécessaire surtout pour respecter les contraintes de ne détruire strictement rien, l'optimisation n'est que secondaire.) Le problème, c'est que ce genre de code est illisible. Tu remarqueras d'ailleurs que j'ai mis des commentaires toutes les quelques lignes des stubs de TitaniK pour rappeler le contenu de la pile à cet endroit. Sans ça, j'étais totalement perdu dans mon propre code.
Et sinon, l'astuce de Folco a 50% de chances (ça dépend de la chaîne de caractères en question) de n'économiser qu'un octet plutôt que 2, parce que le code ne peut pas continuer à une adresse impaire.
Faut mettre un .even après la chaîne effectivement, pour éviter de mauvaises surprises.
vince Le 31/08/2012 à 23:24 (Folco a un joli tatouage en "Courrier New" taille 8 sur le bas des hanches, le tout est est en asm 68k roar)
vince Le 31/08/2012 à 23:34 Et j'anticipe tout de suite la question : c'est sa femme qui l'a dit à son beau frère (le frère de Folco, donc), et celui ci ayant un compte sur yn...
vince Le 31/08/2012 à 23:39 sisi, je t'assure, même que sont pseudo c'est surcouf