Logical shift ------------- 1 << 0 = 0001 = 1 1 << 1 = 0010 = 2 1 << 2 = 0100 = 4 1 << 3 = 1000 = 8 Bitwise AND ----------- x = 25; /* 00011001 (16 + 8 + 1) */ y = 1 << 4; /* 00010000 (1 shifted left by 4 places = 16) */ z = x & y /* 00010000 */