Suiv.: 3.3 Utilitaires de gestion des tableaux
Sup.: 3 Tableaux dynamiques
Préc.: 3.1 Exemple
Index
Table des matières
Rappelons que c'est à l'utilisateur d'estimer la taille LM du super-tableau (section 1.5). Les systèmes à mémoire virtuelle admettent généralement des tableaux de plusieurs millions de mots, et il est courant d'écrire :
PARAMETER (LM = 2 000 000)
Il est possible que le super-tableau ne contienne que des tableaux de type entier ou réel simple précision. De telles variables occupent toutes des éléments de mémoire de tailles identiques, à savoir un mot. En principe, il suffirait donc d'écrire (en choisissant arbitrairement le type entier) :
INTEGER M(LM)
Cependant, le super-tableau peut aussi contenir des tableaux dynamiques en double précision. Chaque élément de tableau occupe alors deux mots-mémoire, toujours cadrés sur une adresse de même parité. Pour que ce cadrage soit assuré par le compilateur, une solution est d'écrire :
DOUBLE PRECISION M(LM/2)
Mais, en pratique, quelques sous-programmes ne disposent pas du super-tableau en paramètre, et considèrent alors que celui-ci est dans le COMMON blanc. Le cadrage du COMMON pour les variables en double précision est normalement assuré par le compilateur. L'écriture recommandée est donc la suivante :
COMMON M(LM)
ou encore, pour être certain du cadrage en double précision :
DOUBLE PRESISION M
COMMON M(LM/2)
Il est à noter, toutefois, que la grande majorité des sous-programmes dispose du super-tableau en paramètre. Certaines applications particulières peuvent ainsi utiliser plusieurs super-tableaux, mais ceci doit être réalisé avec précaution.