C语言循环移位操做

C语言里有移位操做,但没有循环移位操做。spa 举例,对一位数为8的数a,进行循环左移与右移的操做以下:code unsigned char a,b; a = 0x0f; b = a>>(8-3); /* 补偿左移丢失的位 */ a = a<<3; a = a | b; /* 循环左移3位 */ 即循环左移3位操做为:a = (a<<3) | (a>>(8-3)); 右移3位为:a
相关文章
相关标签/搜索