Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
484 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [gcc] que veut dire __aligned__ ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[gcc] que veut dire __aligned__ ??

n°484077
slvn
Posté le 11-08-2003 à 20:39:47  profilanswer
 

que veut dire la declaration suivante ??
je pense que c est asser lie a l aspect de la memoire de la machine, mais j ai pas trouve ce la signification :(
 

Code :
  1. char  PrevHalfField_Lu[1920*14] __attribute__( (aligned( 8 )) ); /* half field reserve for lu */


Message édité par slvn le 11-08-2003 à 21:10:35
mood
Publicité
Posté le 11-08-2003 à 20:39:47  profilanswer
 

n°484083
Taz
bisounours-codeur
Posté le 11-08-2003 à 20:43:29  profilanswer
 
n°484104
slvn
Posté le 11-08-2003 à 21:02:10  profilanswer
 

mince, je pensais pas a chercher dans gcc.
thx.
 
donc voici l explication :
ca permet de specifier la taille dans la memoire en octet.
 
ex :

Code :
  1. char x __attribute__( (aligned( 8 )) );
  2. char y;


 
le compilateur declare la variable x. et y est definie a &x + 8 octects.
 
utilisation : pour mapper la memoire.

n°484108
Taz
bisounours-codeur
Posté le 11-08-2003 à 21:04:29  profilanswer
 

voilà. et y a tout un tas de réglage possible et d'application

n°484112
slvn
Posté le 11-08-2003 à 21:08:02  profilanswer
 

yep, je connaissais pas du tout, y a enormement d autre fonctionnalite.
 
par contre je capte pas un truc : dans l exemple que j ai donne :

Code :
  1. char  PrevHalfField_Lu[1920*14] __attribute__( (aligned( 8 )) ); /* half field reserve for lu */


 
le tableau est enorment  (1920*14 octet) ..et le aligned vaux 8 seulement.
donc ce aligned sert a rien ??

n°484208
Carbon_14
Posté le 11-08-2003 à 22:04:35  profilanswer
 

Si ca oblige" le compilateur à positionner le début du tableau à une adresse mémoire multiple de 8, ça a quand même de l'"effet"....

n°484212
Taz
bisounours-codeur
Posté le 11-08-2003 à 22:06:22  profilanswer
 

CARBON_14 a écrit :

Si ca oblige" le compilateur à positionner le début du tableau à une adresse mémoire multiple de 8, ça a quand même de l'"effet"....

justement par ce que le tableau est énorme, un positionnement optimale permet une meilleure manipulation

n°484220
slvn
Posté le 11-08-2003 à 22:12:51  profilanswer
 

j admet que si le debut du tableau est a une adresse multiple de 8, le traitement est optimise.
 
par contre, c est pas ce que j entendais par l utilisation de aligned.
 
je pensais que pour  

Code :
  1. char x __attribute__( (aligned( 8 )) );
  2. char y;

 
 
 l adresse de x (&x) etait quelconque. mais que y etait place 8 octet exactement apres l adresse de x   :??: (ie:  &x + 8octect == &y )


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [gcc] que veut dire __aligned__ ??

 

Sujets relatifs
[HTML] Adapter la hauteur de ce qu'on veut afficherQue veulent dire ces lignes ?
[C++/VC++] ôh bouton reste enfoncé je le veut !![PHP] LA question que personne il y repond > Upload veut pas
positionnement du curseur où l'on veut dans un IFRAME[C]pouvez vous me dire ca correspond a koi
[Javascript] window.print() et choix de ce qu'on veut imprimer[PHP] Unserialize trop cher pour php ? paske la, ca veut pas
[HTML] (Comment dire au navigateur de) Télécharger les images en cacheDire qu'un PC est "hors-ligne" en retournant un FALSE.
Plus de sujets relatifs à : [gcc] que veut dire __aligned__ ??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR