Hi! i want to clarify that how right shift and left shift operators process the negative numbers. eg. -65 >> 2 = -17 For this first get binary of 65 i.e 1000001 then apply >> 2 it'll be 0010000 now add 1 in this; Ans will be -17 thats correct. But when I apply the same process on -12 >> 2 and many other numbers then i dont get exact answer. (12'binary 1100 apply >> 2 its 0011 then add 1 Now Answer will be -4 whenever it should be -3).