On a parfois à manipuler l'écriture binaire d'un entier. On utilise alors les opérateurs suivants:
&. Effectue un et sur
chacun des bits de ses deux opérandes. Ainsi 6&3 vaut 2
puisque
|. Effectue un ou sur
chacun des bits de ses deux opérandes. Ainsi 6|3 vaut 7
puisque
^. Effectue un
ou exclusif sur chacun des bits de ses deux opérandes. Ainsi
6^3 vaut 5 puisque
>>n. Effectue un
décalage à droite de n crans de tous les bits (ceux le
plus à droite << tombent dans le vide >>, des zéros rentrent par la
gauche). Ainsi 14>>2 vaut 3 puisque
<<n. Effectue un
décalage à gauche de n crans de tous les bits (ceux le
plus à gauche << tombent dans le vide >>, des zéros rentrent par la
droite). Ainsi 3<<2 vaut 12 puisque
~. Effectue un
complément de tous les bits (les zéros deviennent des 1 et
réciproquement). Ainsi ~5 vaut -6 puisque
i |= (1<<n)i &= ~(1<<n)i ^= (1<<n)if (i&(1<<n)) ...j = i>>1 et plus
généralement pour calculer le quotient de la division par une
puissance de 2 : j = i>>6
équivaut à j = i/64; j = i<<1 et plus
généralement pour toute multiplication par une puissance de 2 :
j = i<<6 équivaut à j = i*64;.
1<<n pour obtenir