Define Generic Bitwise Operations?
Bitwise operators only work on an incomplete number of types int and char. It turns out there's above one kind of int. In particular there's short int, there's unsigned int, there's long int, and then unsigned versions of those ints. The "C" language doesn't specify the difference between an int, a short int and a long int, except to state that:
sizeof( short int ) <= sizeof( int ) <= sizeof( long )
You will find that these sizes differ from compiler to compiler. The sizes don't have to be distinct. That signify all three sizes could be the same or two of three could be the same provided that the above restrictions are held.
The Bitwise operators fall into two categories unary bitwise operators and binary bitwise operators. The Binary operators take two arguments while unary operators only take one.