$ALIGN |
Alignement |
---|---|
Free Pascal |
Syntaxe
{$ALIGN taille} |
Paramètres
Nom | Description | |
---|---|---|
taille | Ce paramètre permet d'indiquer la taille de l'alignement des champs en octets : 1, 2, 4, 8, 16 ou 32. | |
MAC68K | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement m68K ABI. | |
ON | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement à 4 octets. | |
OFF | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement à 1 octets. | |
POWER | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement PowerPC ABI. | |
POWERPC | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement PowerPC ABI. | |
RESET | Ce paramètre, uniquement disponible en mode MACPAS, permet d'indiquer l'alignement par défaut. |
Description
Cette directive permet d'indiquer la taille de l'alignement des champs.
Remarques
- Cette directive est un alias de la directive «$A». A l'origine, le Turbo Pascal et de nombreux autres compilateur Pascal, n'utilisaient qu'une lettre comme directive de compilation, mais devant l'augmentation du nombre de directives, les concepteurs de compilateurs adoptèrent une approche textuelle plutôt qu'une seule lettre.
- Cette possibilité a été développée pour accélérer la vitesse d'exécution des microprocesseurs à faible cadence, comme les 8088 et 8086 à 4,77 Mhz, ainsi depuis l'arrivée des microprocesseurs de la classe Pentium par Intel, fournissant de nombreux algorithmes d'optimisation directement dans le microprocesseur, cette possibilité ne peut s'avérer utile quand dans des situations critiques, dans les jeux et des calculs fort intensifs de recherche artificielle.
- Lorsque vous effectuez des alignements avec des valeurs de 1, 2, 4, 8, 16 ou 32 octets, vous obtenez le même résultat que la directive de compilation $PACKRECORDS.
- Le langage de programmation de Free Pascal offre également une fonction appelé «Align» contenu dans l'unité SYSTEM offrant la possibilité de calculer les adresses de pointeurs en fonction de l'alignement choisis.
Dernière mise à jour : Samedi, le 30 août 2014