Envoyé par
jeroman
Exemple, si tu as une variable de 8 bits :
bits 7 (bit 7 étant tout à gauche) : information 1 (sur 1 bits)
bit 6 : information 2 (sur 1 bit)
bits 3,4 et 5 : information 3 (sur 3 bits)
bits 1 et 2 : information 4 (sur 2 bits)
bit 0 (bit 0 étant tout à droite) : information 5 (sur 1 bit).
Donc, si tu veux lire l'information 3, tu vas devoir isoler les bits 3, 4 et 5 en appliquant un masque sur la valeur, c'est-à-dire concrètement en faisant un ET binaire avec la valeur 00011100, afin de mettre à 0 les autres bits. Ensuite, il suffit de décaler de 2 rangs le résultat vers la droite pour lire cette information. Il faudra bien entendu auparavant copier la valeur de la variable dans une variable temporaire et effectuer les opérations binaires sur elle, sinon les informations originales seront perdues.