La conversion d'Endianess sur un champ de bits de la structure

J'ai besoin de convertir un peu de champ de structure de little-endian à grand-endia architecture.
Quelle est la meilleure façon de le faire, comme il y aura des problèmes dans les limites d'octets, si j'ai simplement permuter les éléments de la structure.

Ex Structure:

struct {
    unsigned int    b1:1;
    unsigned int    b2:8;
    unsigned int    b3:7;
    unsigned int    b4:8;
    unsigned int    b5:7;
    unsigned int    b6:1;
}; 
Votre question était assez pour répondre à ma question au sujet de quelque chose de séparé - merci! 🙂

OriginalL'auteur foo | 2009-04-07