Its not very often that I have to shift bits left and right in my day to day job. Right now I am doing codec integration , VOIP stuff that requires data transfer to be in real time . Its some really old ANSI C where you do stuff like making comparisons through bit wise operators. The silliest example ; to check if a number is negative by checking if its leading bits are '1'. I had forgotton most of the bitwise stuff and needed a brush up.