Solar Planel Essay

4108 WordsMay 4, 201417 Pages
Génération de code-II Données composées, appels de fonctions 13 octobre 2011 1 Données composées Types produits Tableaux Compilation des appels de fonctions Exemple fonction récursive Paramètres dans les procédures et fonctions Tableau d’activation Appels de fonctions et assembleur Passage par référence Fonctions récursives Fonctions emboitées 2 C. Paulin (Université Paris Sud) Compilation 2011-2012 1 / 74 Données composées On peut vouloir représenter des données structurées (produits, structures, tableaux) Ces objets peuvent être manipulés comme expressions, passés en argument d’une fonction, renvoyés en résultat. Ils occupent une place de plus d’un mot en mémoire: stockés sur la pile (structures en C). une adresse d’un objet alloué dans le tas (ML, Java). Il faut préciser le mode de représentation des objets complexes. La taille de l’objet est-elle connue statiquement ? La taille du tableau apparait-elle dans le type ? La taille du tableau peut-elle être passée en argument d’une fonction ? Quand la taille du tableau n’est connue que dynamiquement, elle apparaît dans la représentation. C. Paulin (Université Paris Sud) Compilation 2011-2012 2 / 74 Sommaire 1 Données composées Types produits Tableaux 2 Compilation des appels de fonctions Exemple fonction récursive Paramètres dans les procédures et fonctions Tableau d’activation Appels de fonctions et assembleur Passage par référence Fonctions récursives Fonctions emboitées C. Paulin (Université Paris Sud) Compilation 2011-2012 3 / 74 Types structurés On suppose comme en Pascal des types tableaux où l’indice du début et de fin est donné. Un tableau Caml, C ou Java de taille n est un tableau d’indice 0 à n − 1. type t y p = Tbool | T i n t | Tprod of t y p ∗ t y p | T a r r of i n t ∗ i n t ∗ t y p A chaque type est associé la taille des

More about Solar Planel Essay

Open Document