Number 2

Bitwise Operator

          


Bitwise Structures

What is Bitwise Structure?

  • The smallest type is of 8 bits (char).
  • Sometimes we need only a single bit.
  • For instance, storing the status of the lights in 8 rooms:
    • We need to define an array of at least 8 chars.
      If the light of room 3 is turned on the value of
      the third char is 1, otherwise 0.
    • Total array of 64 bits.
  • It is better to define only 8 bits since a bit can also store the values 0 or 1.
  • But the problem is that there is no C type which is
    1 bit long (char is the longer with 1 byte).
  • Solution: define a char (8 bits) but refer to each bit separately.
  • Bitwise operators, introduced by the C language, provide one of its more powerful tools for using and manipulating memory. They give the language the real power of a “low-level language”.
  • Accessing bits directly is fast and efficient, especially if you are writing a real-time application.
  • A single bit cannot be accessed directly,
    since it has no address of its own.
  • The language introduces the bitwise operators, which help in manipulating a
    single bit of a byte.
  • bitwise operators may be used on integral types only (unsigned types are preferable).
Bitwise Operators
Shift right
>> 
Shift left
<< 
1’s compliment
bitwise XOR
bitwise AND
bitwise OR
All these operators can be suffixed with =
For instance a &= b; is the same as a = a & b;