[quote=« Fukyvin, post:1, topic: 25888 »]Voila, par accident, j’ai louper quelques cours de j’aurais du suivre. Les cours portaient sur le langage de l’assembleur (plate forme x86). Du coup, je n’y comprends rien à ce langage. Hors, en toute logique, je suis censé comprendre et être capable de l’utiliser.
Quelqu’un aurait-il un petit lien pour apprendre l’assembleur ? (sur google, je n’ai trouvé que des trucs bien avancée et difficile)[/quote]
Je te conseille de prendre l’instruction reference de chez Intel afin d’avoir une doc claire précise et exhaustive sur toutes les mnemoniques de l’assembleur x86. Ce sera pratique quand tu auras une question sur telle ou telle instruction.
Sinon l’assembleur x86 n’est pas trop difficile à apprendre. La FPU est assez chiante car elle travaille sur la pile, c’est assez chiant à débugger. Sinon les instructions sont executées dans l’ordre dans lequel tu les rentres et tu n’as pas d’impératifs sur les boucles (si tu te fous des performances). C’est pas le cas de tous !
Il est little endian, ce qui veut dire que l’ordre est du type dest ← source et les données sont « inversées » en mémoire. Je suppose que tu te fous du MMX et autre SSE.
Il y a deux syntaxes, AT&T (utilisée par les compilateurs GNU) et Intel qui est la plus courante et la plus claire. Comme assembleur gratuit je te suggère nasm qui utilise la syntaxe Intel et qui est très bien. Ca te permettra de travailler sur ton PC. C’est le meilleur moyen d’apprendre. Tu as un désassembleur donné avec, ça te permettra de regarder comment sont fait les autres programmes.
Il faut aussi que tu distingues les problèmes de format d’exécutables et d’assembleur pur. Pour écrire un programme assembleur tu dois respecter une norme qui est imposée par l’OS : c’est le format d’exécutable; mais tu dois aussi apprendre la syntaxe de l’assembleur proprement dite. Tu peux faire des programmes ASM Win32, c’est rigolo, 4 ko et une interface graphique, ça claque. 
Ah petite larme à l’oeil, ça me rappelle quand je débutais en assembleur… 