Consider a variable unsigned int a; in C.
unsigned int a;
Now say I want to set any i\'th bit in this variable to \'1\'.
Note that the variable has some value.
The most common way to do this is:
a |= (1 << i);
This is only two operations - a shift and an OR. It's hard to see how this might be improved upon.