Comment définir ou effacer les 3 premiers bits en utilisant des opérations au niveau du bit?

Permet de dire que j'ai un certain nombre, comme 0x448. En binaire, c'est 0100 0100 1000.

Comment puis-je configurer les bits 1, 2 et 3 pour tous 0 ou tous les 1 à l'aide de bit-wise opérations? Quand je dis que les trois premiers, je compte le plus à droite un peu comme le bit zéro.

Ainsi, par exemple

De Bits à 1:

b12            b0 
  0100 0100 1110
            ^^^

Bits à 0:

b12            b0
  0100 0100 0000
            ^^^

Je devine que l'ensemble du 1 du I de l'utilisation de bit-wise OU avec un masque de 14 (0x000e)? Mais si c'est le cas, comment dois-je faire quelque chose de similaire pour la compensation de l'bits?


Connexes:

source d'informationauteur Mithrax