unsigned char num(unsigned char dat)
{
unsigned char val;
val = ((dat & 0x01) << 7) | ((dat & 0x02) << 5) | ((dat & 0x04) << 3) | ((dat & 0x08) << 1) |
((dat & 0x10) >> 1) | ((dat & 0x20) >> 3) | ((dat & 0x40) >> 5) | ((dat & 0x80) >> 7);
return val;
}
在函數中,即實現了把dat中的第7位和第0位交換、第6位和第1位交換、第5位和第2位交換、第4位和第3位交換。
這個函數就可以解決問題。