打印
[C语言]

如何判断单字节高位连续1的个数

[复制链接]
1370|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
大头BB|  楼主 | 2014-8-4 15:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
Leeone| | 2014-8-4 15:22 | 只看该作者
收到一帧就判断一下高位然后计数不就行了

使用特权

评论回复
板凳
ayb_ice| | 2014-8-4 15:45 | 只看该作者
本帖最后由 ayb_ice 于 2014-8-4 15:46 编辑

CM3有个CLZ指令,轻松搞定这种需要

一般只能写函数了
U8 cl1(U8 d)
{
        U8 c = 0;
        for(U8 i=0; i<8; i++){
                if(d & 0x80){
                        c++;
                        d <<= 1;
                }else{
                        break;
                }
        }

        return c;
}

        U8 c = cl1(0xf0);        // c = 4;

使用特权

评论回复
地板
longmaodo| | 2014-8-4 17:00 | 只看该作者
楼上正解
只要稍加改动就符合要求了

使用特权

评论回复
5
lanmp| | 2014-8-4 20:57 | 只看该作者
查表

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

77

帖子

0

粉丝