Compte-rendu du code Arduino – Opérations binaires et masques de bits 1.
Valeurs binaires
demandées Les nombres suivants ont été convertis en binaire sur 8 bits : • 5 = 00000101 • 9 =
00001001 • 42 = 00101010 • 128 = 10000000 2. Explication des opérations bit à bit Le programme
utilise les opérateurs suivants : • a & b : ET logique. Retourne un bit à 1 seulement si les deux bits sont
à 1. • a | b : OU logique. Retourne un bit à 1 si au moins un des bits vaut 1. • a ^ b : OU exclusif.
Retourne 1 si les bits sont différents. • ~a : Négation binaire. Inverse chaque bit. • b << 1 : Décalage à
gauche. Multiplie par 2 et décale tous les bits vers la gauche. • b >> 1 : Décalage à droite. Divise par 2
(approx.) et décale les bits vers la droite. 3. Explication des masques de bits Un masque sert à
sélectionner, activer ou désactiver un bit précis dans un octet. Dans le code : • Tester le bit 3 : mask3 =
1 << 3 Cela crée un masque 00001000. On vérifie si ce bit est actif en faisant : x & mask3. • Activer le
bit 1 : mask1 = 1 << 1 → 00000010 On active ce bit avec : x = x | mask1. • Désactiver le bit 5 : mask5 =
1 << 5 → 00100000 On désactive ce bit avec : x = x & ~mask5. 4. Menu interactif Le programme gère
un octet de configuration (config) et permet : • aX : activer le bit X • dX : désactiver le bit X • vX : vérifier
si le bit X est actif • b : afficher config en binaire Chaque opération agit sur l’octet en utilisant des
masques construits avec 1 << X.