Left and right shift operators (<< and >>) are already available in C++. However, I couldn\'t find out how I could perform circular shift or rotate operations.
#define ROTATE_RIGHT(x) ( (x>>1) | (x&1?0x8000:0) )