Avec la syntaxe AT&T, lorsqu'il y a 2 opérandes, la première représente la source et la deuxième représente la destination .
Voyons maintenant l'évolution de la mémoire interne et externe au fur et à mesure que notre programme est exécuté ligne après ligne :
Le code assembleur que nous venons d'écrire est donc susceptible d'être produit par la compilation d'une instruction simple en langage C ou C++ : « short int nb1=1, res=0; res=nb1+5; ».
En assembleur, il n'y a pas de notion de « variable », les notions d'adresse symbolique, de registre, de taille, etc. sont très primitives comparées aux notions de variables (typées, structurées, de portée définie, etc.) telles qu'on peut les trouver dans les langages évolués.