Logical Operations on Bit Patterns

I'm reading a book I got from the library to learn C++ and I don't understand this.

Quote:

~ This is the **bitwise complement operator.** This is a unary operator that will invert the bits in its operand, so 1 becomes 0 and 0 becomes 1.

& This is the **bitwise AND operator**, which will AND the corresponding bits in its ioerands. If the corresponding bits are both 1, then the result bit is 1. Otherwise it is 0.

^ This is the **bitwise exclusive OR operator**, which will exclusive-OR the corresponding bits in its operands. If the corresponding bits are different, i.e. one is 1 and the other is 0, then the resulting bit is 1. If the corresponding bits are the same, the resulting bit is 0.

| This is the **bitwise OR operator**, which will OR the corresponding bits in its operands. If either of the two corresponding bits is 1, then the result is 1. If both bits are 0, then the result is 0.

That is the exact quote from the book and I don't understand when you would use them and why you would need too and really what they do. Someone please explain it for a beginner.