Païou : Mandriva Linux depuis 2002. Aujourd'hui, c'est Mageia Linux
On se lasse de tout, sauf de comprendre.
Attribué à Virgile.
29 juillet 2010 : Création de cette page sur l'ancien site de Païou.
Pour : un esprit logique et curieux.
L'assembleur est le langage de programmation le plus proche du langage machine. C'est en fait un mnémonique des instructions machine.
Le programme (qui est constitué de lignes de texte) est ensuite assemblé pour donner le code exécutable. Ce n'est pas vraiment une compilation. Le terme de traduction mot à mot serait plus réel.
Il n'est pas utilisé pour faire de grands programmes, ce serait trop pénible.
Pour ma part, je m'y intéresse plutôt pour désassembler les petits programmes d'amorçage sur les disquettes et disques durs.
Vous ne trouverez pas, ici, un cours d'assembleur complet, mais quelques instructions dont j'ai eu besoin.
Une liste plus complète et plus détaillée ,
Il faut faire une distinction entre les instructions en code machine et les instructions en assembleur ou mnémonique. Prenons comme exemple le chargement du registre AH avec la valeur 0Dh.
Dans les deux cas, une instruction est composée d'un opérateur et d'un ou plusieurs opérandes :
en mnémonique :MOV AH,0Davec MOV = opérateur, AH et 0D = opérandes.
en code machine :B40DB4 = opérateur, 0D = opérande. Ici, l'opérateur intègre déjà la destination AH.
L'opérateur indique quelle opération il faut effectuer, ici, charger un registre.
Les opérandes indiquent, ici, une destination et une source. On parle d'adressage. Plusieurs formes d'adressage peuvent se présenter.
Ce paragraphe donne quelques exemples d'instructions qui utilisent différents modes d'adressage.
Vous pourrez voir le "opcode", le "mnémonique" et la décomposition du opcode en opérateur et opérande(s).
La signification des opérateurs sera donnée plus tard.
Dans tout programme, il faut pouvoir afficher : pour saisir des données, pour afficher des résultats ...
La gestion de l'affichage, en assembleur,
Dans pratiquement tous les programmes on utilise la pile, par exemple avant d'appeler une routine.
La gestion de la pile, en assembleur,