TD 3 – Architecture des microcalculateurs : Assembleur
Exercice 1 :
La mémoire contient aux adresses 200 à 210 les entiers entre 0 et 10 :
adresse valeur
200 0
201 1
… …
210 10
LDR R1, 202
LDR R2, 203
ADD R3, R2, R1
STR R3, 200
LDR R1, 200
LDR R2, 204
SUB R3, R2, R1
STR R3, 203
Exécuter le programme ci-dessous et déterminer l’état final de la mémoire et des
registres.
Exercice 2 :
Traduire le programme suivant en langage naturel et le dérouler ligne par ligne.
MOV R1, #10
MOV R2, #12
ADD R3, R2, R1
CMP R1,R2
BNE Different
SUB R3, R2, R1
Different:
SUB R2, R1, R3
Exercice 3 :
Remplacer chaque instruction suivante par son mnémonique
Charger la valeur 2 dans le registre 3
Charger la valeur 5 dans le registre 1
Ajouter les registres 3 et 1 et enregistrer dans le registre 2
Soustraire 25 du registre 2 et enregistrer dans le registre 1
Comparer les registres 3 et 1
Si la comparaison est différente, sauter à FIN
Charger la valeur 1 dans le registre 2
FIN:
arrêter le programme