14. Manipuler - &
¶
La manipulation de bits consiste à agir sur des données au niveau d’un bit à l’aide d’opérations booléennes. Cette technique est utilisée pour des opérations de bas niveau comme le contrôle des périphériques, la détection et la correction d’erreur, le chiffrement, ainsi que pour l’optimisation.
Dans ce chapitre nous allons explorer des opérateurs qui manipulent un nombre au niveau de ses bits (bitwise operation). Nous allons voir que :
l’opérateur
&
effectue une opération and par bit,l’opérateur
|
effectue une opération or par bit,l’opérateur
^
effectue une opération xor par bit.
Bitwise and (&
)¶
Bitwise or (|
)¶
Bitwise xor (^
)¶
Bitwise inversion (~
)¶
Pixels noir et blanc¶
Par la suite nous affichons les pixels comme une image noir est blanc:
0 = pixel blanc
1 = pixel noir
Code binaire et hex¶
Bitwise and¶
L’opérateur &
effectue l’opération logique and
pour chaque bit d’un nombre.
Dans une image noir et blanc, ceci correspond à l’intersection des pixels des deux images.
Bitwise ou¶
L’opérateur |
effectue l’opération logique or
pour chaque bit d’un nombre.
Dans une image noir et blanc, ceci correspond à l’union des pixels des deux images.
Bitwise exclusive-or¶
L’opérateur ^
effectue l’opération ou exclusif pour chaque bit du nombre.
Dans une image noir et blanc, ceci correspond à inverser les pixels de la première image qui sont indiqué par la deuxième image.
Quiz¶
AND logique¶
Rappel
0 & 0 = 0
0 & 1 = 0
1 & 0 = 0
1 & 1 = 1
OR logique¶
Rappel
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1
XOR logique¶
Rappel
0 ^ 0 = 0
0 ^ 1 = 1
1 ^ 0 = 1
1 ^ 1 = 0