opérateur ~ opérateur NON bit-à-bit
opérateur & opérateur ET bit-à-bit
opérateur | opérateur OU bit-à-bit
opérateur ^ opérateur OU exclusif bit-à-bit
Syntaxe:
~ E1
E1 & E2
E1 | E2
E1 ^ E2
Description:
Pour les opérateurs binaires, les opérandes E1 et E2 doivent être de type entier, le résultat est un entier de même type.
Le bit de rang h du résultat est obtenu à partir des bits de même rang, respectivement dans E1 et E2, en utilisant la table de vérité ci-après.
Voir aussi:
Exemple:
/* Les tables de vérité:
Opérandes Résultat
----------I-----------------------------------------
E1 E2 I ~E1 E1 & E2 E1 | E2 E1 ^ E2
----------I-----------------------------------------
0 0 I 1 0 0 0
1 0 I 0 0 1 1
0 1 I 0 1 1
1 1 I 1 1 0
*/
#include
int main(void) {
short int ii=9, /* en binaire: 0 ... 0 1001 */
jj=7; /* en binaire: 0 ... 0 0111 */
printf("~ 1001 : %d\n", ~ii );
printf("1001 & 0111 : %d\n", ii & jj);
printf("1001 | 0111 : %d\n", ii | jj);
printf("1001 ^ 0111 : %d\n", ii ^ jj);
return 0;
}