找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1859|回复: 1
打印 上一主题 下一主题
收起左侧

单片机8位数据翻转函数

[复制链接]
跳转到指定楼层
楼主
ID:252527 发表于 2017-11-23 00:44 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
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)

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:248503 发表于 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;
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表