|
Accueil Démo Exercices formatifs Travaux pratiques Simulation libre ❯
Sessions sauvegardées
|
CorrectionSoit la fonction
SECTION INTVEC
B main
SECTION CODE
main
LDR SP, =maPile ; on charge la pile
ADD SP, SP, #40
BL MauvaiseFonction
B fin
; Fonction qui incrémente R0 de 1.
MauvaiseFonction
; Notre fonction modifie le registre R1, il faut sauvegarder sa valeur...
PUSH {R1}
MOV R1, #0x01
ADD R0, R0, R1
; ... et ensuite la restaurer comme si de rien n'était...
POP {R1}
BX LR
fin
B fin
SECTION DATA
; variable pour la pile
maPile ALLOC32 10;
|