void fonction1(int arg1,int arg2, int arg3)
{
int var1;
int var2;
var1 = 1;
var2 = 2;
…
}
void main( )
{
int a;
int b;
int c;
a = 1;
b = 2;
c = 3;
fonction1(a, b, c);
printf (…);
…
}
registre1 := a
registre2 := b
registre3 := c
a
b
c
1
2
3
a
b
c
Pile de main
Déclaration
des variables
Afféctations
Appel de
fonction1
Addresses
croissantes
Initialisation
des paramétres
Call fonction1
2.
void fonction1(int arg1,int arg2, int arg3)
{
int var1;
int var2;
var1 = 1;
var2 = 2;
…
}
void main( )
{
int a;
int b;
int c;
a = 1;
b = 2;
c = 3;
fonction1(a, b, c);
printf (…);
…
}
1
2
3
@printf
arg1
arg2
arg3
@pile_main
1
2
var2
var2
Pile de fonction1
Récuperation
des paramétres
arg3 := registre3
arg2 := registre2
arg1 := registre1
Addresses
croissantes