Information Technology Reference
In-Depth Information
6.11
Manipulation de la pile
La pile constitue une zone particulière de la mémoire centrale gérée selon une poli-
tique LIFO (
Last In, First Out
). Cette structure de données est caractérisée par :
- une base qui constitue le fond de la pile ;
- un sommet dont l'adresse est contenue dans un registre particulier du processeur,
le registre RSP (
Register Stack Pointer
).
Seul le sommet de la pile repéré par le registre RSP est accessible en lecture ou en
écriture par deux opérations spécifiques : PUSH et POP. Le registre RSP contient
l'adresse du prochain mot où écrire dans la pile.
Plus précisément, l'opération PUSH opérande écrit l'opérande à l'adresse mémoire
contenue dans le registre RSP puis incrémente le contenu du registre RSP pour que
celui-ci contienne l'adresse du prochain mot où l'écriture se fera dans la pile. L'opéra-
tion POP destination, où destination est un registre, décrémente le registre RSP pour
que celui-ci contienne l'adresse de la donnée présente au sommet de la pile, puis
retire cette donnée de la pile pour la placer dans destination.
La politique LIFO appliquée ici signifie que la dernière donnée enregistrée dans la
pile est la première à en sortir.
Ainsi la figure 6.2 illustre le principe de ces deux opérations avec une pile dont la
base est constituée par le mot d'adresse (0020)
16
. En reprenant le contexte mémoire
de l'exercice précédent et en considérant une pile dans l'état du dernier dessin de la
figure 6.2, représentez l'évolution de la pile et du registre RSP au fur et à mesure de
l'exécution des opérations suivantes :
POP Rg1 R1
POP Rg1 R3
STORE D R3 100
LOAD Im R2 7
ADD D R2 100
PUSH Rg1 R2
0034
16
0034
16
0034
16
0030
16
0030
16
0030
16
RSP
002C
16
RSP
002C
16
002C
16
002C
16
002C
16
RSP
0028
16
8
10
0028
16
0028
16
6
10
0028
16
5
10
0024
16
5
10
0024
16
5
10
0024
16
R
1
R
1
R
1
20
10
0020
16
20
10
0020
16
20
10
0020
16
8
10
8
10
R
2
R
2
R
2
PUSH Rg
1
R
2
POP Rg
1
R
1
6
10
6
10
6
10
Figure 6.2
Pile, opérations
PUSH
et
POP.
Search WWH ::
Custom Search