This is the arithmetic right shift operator (see pages 19-20 of the link). This is the opposite case from Java (Java >>is an arithmetic shift to the right, and >>>a logical shift to the right).
Arithmetic right shift - handle case when the number with right-side shift is positive / negative with this behavior:
Move the specified number of bits to the right, fill with the value of the sign bit, if the expression is signed, otherwise it is filled with zero
, signed , :
1000 1100
--------- >>> 2
1110 0011
unsigned:
1000 1100
--------- >>> 2
0010 0011
0.