#include <stdio.h>
int main(int argc, char *argv[])
{
unsigned char a = 254;
/* 11111110 */
/* a & 126(01111110) 取a中间六位值 */
/* (a & 1) << 7 取a最低位并移动到最高位 */
/* a >> 7 取a最高位 */
a = (unsigned char)(a & 126) |
((unsigned char)(a & 1) << 7) | (a >> 7);
printf("a = %d\n", a);
/* 01111111 */
return 0;
}