Architecture Logicielle et matérielle
Cours 6b : Programmation LC3, routines et assemblage
D’après les transparents de N. Louvet (univ Lyon1)
Laure Gonnord
Licence d’info - Université Lyon 1 - FST
Introduction
Dans le cours de programmation LC3-1 (Cours6a), on a vu :
Les instructions de calcul
Les instructions de contrôle
Les instructions d’accès et écriture mémoire
(chargement/déchargement)
IIl manque une façon de réaliser les appels de fonctions.
Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06b : Programmation LC3 2/2 2014 2 / 37
Les routines et la pile
1Les routines et la pile
Les routines
Un exemple de routine
Mise en place d’une pile d’exécution
Un exemple de routine récursive utilisant la pile
2Quelques notions sur l’assemblage
3Conclusion
Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06b : Programmation LC3 2/2 2014 3 / 37
Les routines et la pile Les routines
1Les routines et la pile
Les routines
Un exemple de routine
Mise en place d’une pile d’exécution
Un exemple de routine récursive utilisant la pile
2Quelques notions sur l’assemblage
Comment se déroule l’assemblage ?
Un exemple
3Conclusion
Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06b : Programmation LC3 2/2 2014 4 / 37
Les routines et la pile Les routines
Les routines
En assembleur, une routine est juste une portion de code
exécutable :
l’adresse de la première instruction de cette portion de
code est connue, et marquée par un label ;
on peut effectuer un saut vers cette portion de code
(instruction JSR), qui constitue un appel à la routine ;
à la fin de l’exécution de la routine, une instruction de
retour (RET) est exécutée pour que le PC passe à
l’adresse suivant l’appel de la routine.
Une routine correspond à une fonction dans un langage de
haut niveau.
Laure Gonnord (L2/FST/Univ Lyon1) ArchiL2 (LIF6) Cours 06b : Programmation LC3 2/2 2014 5 / 37
1 / 37 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !