>> (Décalage des bits vers la droite)
Description
l'opérateur de décalage à droite >> entraîne le décalage des bits vers la droite de l'expression entière située à gauche de l'opérateur d'un nombre de positions spécifié par l'expression numérique entière de droite.
Davantage d'information sur les math binaires peuvent être trouvés ici : Tutoriel sur les math binaires du "terrain de jeux".
Syntaxe
Paramètres
- variable: une variable de type entier (byte, int, long)
- nombre_de_bits: nombre entier ≤ 32, correspondant au nombre de bits à décaler.
Exemple
※ Remarque:
Quand vous décalez x de y bits vers la droite (x>>y), et que le bit le plus fort de x est 1, le comportement dépend du type exact de donnée de x. Si x est de type int, le bit le plus fort est le bit de signe, déterminant si x est négative ou non, comme discuté auparavant. Dans ce cas, le bit de signe est copié (sans être lui-même modifié) dans les bits de poids inférieurs, pour des raisons historiques mystérieuses :
Ce comportement, appelé "extension du signe", n'est souvent pas le comportement que vous souhaitez. Au lieu de cela, vous voudriez plutôt que des 0 soient décalés depuis la gauche. En considérant que le fonctionnement du décalage vers la droite est différent pour les expressions de type int non signées, vous pouvez utiliser un type de donnée qui supprime les bits copiés depuis la gauche :
Si vous faîtes attention d'éviter le mécanisme "d'extension de signe", vous pouvez utiliser l'opérateur de décalage vers la droite >> comme une façon de diviser par des puissances de 2. Par exemple :
※ ARDUINO BUY RECOMMENDATION
Arduino UNO R3 | |
Arduino Starter Kit |