When the logical left shift is performed, the highest bit is lost and the lowest bit is filled with 0; When the logical right shift is performed, the highest bit is filled with 0 and the lowest bit is lost; When the arithmetic left shift is performed, the bits are shifted left one by one, the tail is filled with 0, and the highest sign bit remains unchanged; When the arithmetic right shift is performed, the bits are shifted right one by one, the tail is lost, and after the sign bit is shifted right, a sign bit is copied to the original position; When the circular left shift is performed, the highest bit is replaced to the lowest bit; When the circular right shift is performed, the lowest bit is replaced to the highest bit; One purpose of using the circular operation is to place each bit continuously to the leftmost to determine the sign of the data. If you want to swap the high and low bits of a number, it is very convenient and fast to use a one-bit operation.