COURS : STRUCTURE D’UN PROGRAMME EN ASSEMBLEUR
LYCEE LA FAYETTE 3
III. DEFINITION DES VARIABLES ET DES CONSTANTES
Une variable est une donnée dont la valeur est enregistrée en mémoire RAM à une adresse
précise : l’exemple ci-dessous déclare une variable, nommée VARIABLE1, et dont l’adresse
en mémoire RAM est 0x20.
On peut donc écrire et lire une variable ; les données seront lues ou écrites en RAM.
Une constante est une valeur fixe, elle n’est pas enregistrée en mémoire RAM. Le logiciel
remplace juste le nom de la constante par sa valeur. Par exemple, la ligne ci-dessous déclare
une constante, nommée CONSTANTE1, dont la valeur est 3 :
Les deux programmes suivants sont strictement identiques si CONSTANTE1 a été définie
comme précédemment :
IV. IMPLEMENTATION DU VECTEUR RESET
Lors d’un RESET, le PIC commence à exécuter le programme à une adresse particulière
nommée « vecteur RESET ».
Par exemple, suite à un reset, le PIC 16C57C commence l’exécution du programme à
l’adresse 0x7FF (cette adresse peut changer en fonction de la référence du PIC utilisé).
L’adresse EPROM (c'est-à-dire l’adresse de la mémoire de données) à laquelle se trouvent
les instructions est définie par la fonction : ORG (adresse)
Le programme suivant permet donc, lors d’un RESET, de demander au PIC d’aller lire les
instructions sur programme situées à partir de l’étiquette PROGRAMME via l’instruction
GOTO.
DEBUT MOVLW 3
GOTO DEBUT
END
DEBUT MOVLW CONSTANTE1
GOTO DEBUT
END
ORG 0x7FF
GOTO PROGRAMME
…
…
…
ORG 0x200
PROGRAMME GOTO PROGRAMME
Le PIC exécute cette instruction
lors du RESET
Le début du programme se situe
en 0x200