|
发表于 2010-2-4 15:00:11
|
显示全部楼层
假如 要移位的 8位宽的 TEMP ;
char A,B;
TEMP=0x55; // 0x01010101
while(1)
{
A=TEMP; // A=0x55
B=TEMP; // B=0x55;
A>>=6; // 高2位 循环到低2位 0x000000[ 01 ] A=0x01
B<<=2; // 左移 两位 0x010101 [00] B=0x54
B|=A; // 整合起来; 0x010101 [01] B=B|A 0x54|0x01 =0x55;
TEMP=B; // 回写 TEMP=0x55;
} |
|