Je pense que les champs de bits ont été inventés pour permettre aux développeurs de se coller exactement avec les composants électroniques.
Car les électroniciens eux sont (ou tout au moins étaient) avares de la mémoire.
Par exemple, sur le circuit de gestion du port parallèle, il y a 4 ou 5 flags qui remontent sur un seul registre de 8 bits. La notion de champs de bits permet dans ce cas d'accèder directement au flag voulu sans avoir à s'embêter avec des masques de bits.
L'autre possibilité, c'est justement d'utiliser les masque de bits mais bon.
if((value & 0x80) == 0x80) // par exemple
Partager