Arduino - Opérateurs au niveau du bit
Supposons que la variable A vaut 60 et la variable B vaut 13 alors -
Nom de l'opérateur | Opérateur simple | La description | Exemple |
---|---|---|---|
et | & | L'opérateur binaire AND copie un peu le résultat s'il existe dans les deux opérandes. | (A & B) donnera 12 qui est 0000 1100 |
ou | | | L'opérateur OR binaire copie un bit s'il existe dans l'un ou l'autre des opérandes | (A | B) donnera 61 qui est 0011 1101 |
xor | ^ | L'opérateur XOR binaire copie le bit s'il est défini dans un opérande mais pas dans les deux. | (A ^ B) donnera 49 qui est 0011 0001 |
ne pas | ~ | L'opérateur de complément Binary Ones est unaire et a pour effet de «retourner» les bits. | (~ A) donnera -60 qui est 1100 0011 |
décaler vers la gauche | << | Opérateur de décalage binaire gauche. La valeur des opérandes de gauche est déplacée vers la gauche du nombre de bits spécifié par l'opérande de droite. | Un << 2 donnera 240, soit 1111 0000 |
déplacer à droite | >> | Opérateur de décalage binaire vers la droite. La valeur des opérandes de gauche est déplacée vers la droite du nombre de bits spécifié par l'opérande de droite. | Un >> 2 donnera 15, soit 0000 1111 |
Exemple
void loop () {
int a = 10,b = 20
int c = 0;
c = a & b ;
c = a | b ;
c = a ^ b ;
c = a ~ b ;
c = a << b ;
c = a >> b ;
}
Résultat
c = 12
c = 61
c = 49
c = -60
c = 240
c = 15