标题: 单片机8位数据翻转函数 [打印本页]

作者: zxiao2006    时间: 2017-11-23 00:44
标题: 单片机8位数据翻转函数
unsigned char swap(unsigned char data)
{
        unsigned char buffer;
        unsigned char a;
        buffer = 0;
        for(a=0;a<8;a++)
        {
                if(data&0x01)
                {
                        buffer = buffer | 0x01;
                        if(a<7)buffer = buffer << 1;
                        data = data >> 1;
                }
                else
                {
                        buffer = buffer & 0xfe;
                        if(a<7)buffer = buffer << 1;
                        data = data >> 1;
                }
        }
        return buffer;
}

例如数据
0101 0100   (0x54)

翻转
0010 1010    (0x2a)


作者: cccc8888    时间: 2017-11-23 11:49
unsigned char swap(unsigned char data)
{
        unsigned char a, buffer=0;

        for(a=0;a<8;a++)
        {
                if(data&0x01)
                {
                        buffer = buffer | 0x01<<(7-a);
                     
                        data = data >> 1;
                }
                else
                {
                        
                }
        }
        return buffer;
}




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1