Lorsque l'on est amené à interagir assez directement avec le matériel, ou que l'on doit conserver des attributs pour de grandes quantités de données dans un espace mémoire limité, il est fréquent de stocker dans des registres ou des zones mémoire des ensembles de valeurs structurées au niveau du bit – ce que l'on nomme usuellement des champs de bits (bit fields). Par exemple, dans le cadre d'une application 3D affichant des modèles triangulés comme Blender [1] ou MeshLab [2], chaque triangle peut être qualifié par des options, comme est-il affiché ou masqué, est-il sélectionné ou non, etc. Comme de telles applications peuvent devoir rapidement manipuler des millions de triangles, il est préférable d'éviter que ces attributs n'occupent trop de place en mémoire. Rappelons qu'un booléen occupe au minimum 1 octet en mémoire, voire bien davantage du fait de l'alignement appliqué aux champs d'une structure pour des raisons de performances. Ainsi, si on se donne...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première