Description :
L’opérateur NOT au niveau du bit en C++ est le caractère tilde ~
. Contrairement à & et |, l’opérateur NOT au niveau du bit est appliqué à un seul opérande à sa droite. Au niveau du bit, PAS change chaque bit en son opposé : 0 devient 1 et 1 devient 0.
En d’autres termes:
Exemple de code :
Remarques et avertissements
Vous pourriez être surpris de voir un nombre négatif comme -104 à la suite de cette opération. En effet, le bit le plus élevé d’une variable int est le bit de signe. Si le bit le plus élevé est 1, le nombre est interprété comme négatif. Ce codage de nombres positifs et négatifs est appelé complément à deux. Pour plus d’informations, consultez l’article de Wikipédia sur le complément à deux .
En passant, il est intéressant de noter que pour tout entier x, ~x est le même que -x – 1.
Parfois, le bit de signe dans une expression entière signée peut provoquer des surprises indésirables.
Source : https://www.arduino.cc/reference/en/language/structure/bitwise-operators/bitwisenot/