Bitwise Operators

1. Bitwise Operators are used for operating numbers at the bit level.
2. There are following Bitwise operators supported by C language:



OperatorsWhat They Do ..Precedence
~ This operator gives the NOT for every bit of the character. Also , this is followed : ~x = -x - 1.1
<< It shifts the bits to the left , accordingly.2
>>Similar operation , but to the right.2
& This operator performs the AND logical operation on every corresponding bit of characters , and gives cumulative result of each bit as the result.3
|Similar , but performs OR operation on each bit.4
^Similar , but performs XOR operation on each bit.5



Syntax for Bitwise NOT (~):

~[variable\constant]
Example:~5 



Syntax for all other Bitwise Operators:

[variable\constant] [Bitwise Operator] [variable\constant]
Example:(A ^ B) 



C Example


#include<stdio.h>

int main() {

	int a,b,c,d,e,f,g,h;

	a=10;

	b=11;

	c=~a;

	// Bitwise NOT

	d=b<<2;

	// Bitwise LEFT SHIFT

	e=a>>2;

	// Bitwise RIGHT SHIFT

	f=a&b;

	// Bitwise AND

	g=a|b;

	// Bitwise OR

	h=a^b;

	// Bitwise XOR

	printf("a=%d,b= %d",a,b);

	printf("c=%d,d= %d,e=%d,f= %d,g=%d,h=%d,",c,d,e,f,g,h);

	return 0;

}