Programming Tutorials

The Bitwise Logical Operator

By: aathishankaran in Java Tutorials on 2007-02-05  

The Bitwise logical operators are &, |, ^, and ~. The following table shows the outcome of each operation. In the discussion that follows, keep in mind that the Bitwise operators are applied to each individual bit within each operand.

A	B	A|B	A&B	A^B	~A
0	0	0	0	0	1
1	0	1	0	1	0
0	1	1	0	1	1
1	1	1	1	0	0

The Bitwise NOT

Also called the Bitwise complement, the unary NOT operator, ~, inverts all of the bits of its operand. For example, the number 42, which has the following bit pattern.

00101010

becomes

11010101

after the NOT operator is applied.

The Bitwise AND

The AND operator, &, Produces a 1 bit if both operands are also 1. a zero is produced in al other cases. Here is an example:

00101010	42
&00001111	15
------------------
00001010	10

The Bitwise OR

The OR operator, | , combines bits such that if either of the bits in the operands is a 1, then the resultant bits is a 1, as shown here:

00101010	42
| 00001111	15    
------------------
00101111	47

The Bitwise XOR

The XOR operator, ^, combines bits such that if exactly one operand is 1, then the result is 1. Otherwise, the result is zero. The following example shows the effect of the ^. This example also demonstrates a useful attribute of the XOR operation. Notice how the bit pattern of 42 is inverted wherever the second operand has a 1 bit. Wherever the second operand has a 0 bit, the first operand is unchanged. You will find this property useful when performing some types of bit manipulations.

00101010	42
^ 00001111	15
------------------
00100101	37





Add Comment

* Required information
1000

Comments

No comments yet. Be the first!

Most Viewed Articles (in Java )

Latest Articles (in Java)