Section courante

A propos

Section administrative du site

ALIGN

Aligné
Free Pascal System

Syntaxe

Function Align(Addr,Alignment:PtrUInt):PtrUInt;
Function Align(Addr:Pointer;Alignment:PtrUInt):Pointer;

Paramètres

Nom Description
Addr Ce paramètre permet d'indiquer l'adresse à aligné
Alignment Ce paramètre permet d'indiquer le nombre d'octets d'alignement

Retour

Valeur Description
adresse Ces valeurs permettent d'indiquer une adresse correspondant à l'alignement demandé.

Description

Cette fonction permet d'effectuer l'alignement d'adresse.

Remarques

Exemple

Voici un exemple d'alignement d'une adresse mémoire avec Align :

  1. Program AlignExemple;
  2.  
  3. Var
  4.  UnalignedAddr, AlignedAddr: PtrUInt;
  5.  Alignment: PtrUInt;
  6.  
  7. BEGIN
  8.  UnalignedAddr:=PtrUInt(@UnalignedAddr) + 3; { Simule une adresse non alignée }
  9.  Alignment:=16; { Alignement à 16 octets }
  10.  AlignedAddr := Align(UnalignedAddr, Alignment);
  11.  WriteLn('Adresse non alignée  : ', HexStr(UnalignedAddr, 8));
  12.  WriteLn('Adresse alignée      : ', HexStr(AlignedAddr, 8));
  13. END.


Dernière mise à jour : Samedi, le 18 juillet 2015