Description :
L’opérateur OU composé au niveau du bit |=
est souvent utilisé avec une variable et une constante pour « définir » (définir sur 1) des bits particuliers dans une variable.
Un examen de l’ |
opérateur OR au niveau du bit :
Exemple de code :
Les bits qui sont « OU au niveau du bit » avec 0 sont inchangés, donc si myByte est une variable d’octet,
myByte | 0b00000000 = myByte;
Les bits qui sont « OU au niveau du bit » avec 1 sont mis à 1, donc :
myByte | 0b11111111 = 0b11111111;
Remarques et avertissements :
Parce que nous avons affaire à des bits dans un opérateur au niveau du bit – il est pratique d’utiliser le formateur binaire avec des constantes. Les nombres ont toujours la même valeur dans d’autres représentations, ils ne sont tout simplement pas aussi faciles à comprendre. De plus, 0b00000000 est affiché pour plus de clarté, mais zéro dans n’importe quel format de nombre est zéro.
Par conséquent – pour définir les bits 0 et 1 d’une variable, tout en laissant le reste de la variable inchangé, utilisez l’opérateur OU composé au niveau du bit (|=) avec la constante 0b00000011
Voici la même représentation avec les bits variables remplacés par le symbole x
Donc si :
Source : https://www.arduino.cc/reference/en/language/structure/compound-operators/compoundbitwiseor/