Académique Documents
Professionnel Documents
Culture Documents
03 :
Introduction à
l’architecture des
ordinateurs
CM3 : Appel de procédures
LP – BUT INFORMATIQUE
R 1.03 PILE 1
Zone de rangement de données
◦ Zone mémoire spécialisée
◦ Fonctionnement LIFO Last In First Out
R 1.04 PILE 2
Instructions pour accéder à la pile
◦ PUSH <registre> : Empile le contenu du registre sur le sommet de
la pile
◦ POP <registre> : dépile le contenu du sommet de la pile dans le
registre
R 1.03 PILE 3
Réservation de la pile :
◦ PILE SEGMENT STACK
◦ DW 256 DUP(?)
◦ Base:
◦ PILE ENDS
Instructions :
Registres MOV AX, 1234 AX=1234
PUSH AX BX= ?
POP BX BX=1234
R 1.03 PILE 4
Un sous-programme est un bout de code qui
◦ est appelé par un programme principal
◦ se situe en mémoire à une adresse qui est souvent dans une
autre zone de code que le programme appelant
Sous-
Programmes
R 1.04 PILE 5
Avant appel
CS = Segment code
IP = @CALL SousProg
Etat de la pile
call SousProgramme
CS = Segment code
IP = @ SousProg
Etat de la pile
Rôle de la pile
ret
CS = Segment code
IP = @ retourappelant
Etat de la pile
R 1.04 PILE 6
2 méthodes de passage de paramètres :
◦ Par registres
◦ Paramètres déposés avant l’appel
◦ Paramètres de sortie rangés dans des registres
R 1.03 PILE 7
Programme Principal
Exemple par
registres
Sous-Programme
R 1.03 PILE 8
Programme Principal
Sous-Programme
Exemple par la pile
R 1.03 PILE 9