数据压缩的重要组成部分(3)

/*将缓冲区向左轮转指定位数*/
    if(size > 0)
    {
        for(j=0; j<count; j++)
        {
            for(i=0; i<=((size-1)/8); i++)
            {
                /*获得要从当前字节偏移的位*/
                lbit = bit_get(&bit[i],0);
                if(i==0)
                {
                    /*保存要从首字节移动到后面的位*/
                    fbit = lbit;
                }
                else
                {
                    /*将前一字节最右边的位设置为当前字节最左边的位*/
                    bit_set(&bits[i-1],7,lbit);
                }

/*将当前字节向左移动*/
                bits[i] = bits[i] << 1;
            }
            /*将缓冲区最右边的位设置为从第一个字节偏移的位*/
            bit_set(bits,size-1,fbit);
        }
    }
    return;
}

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2f807c93ec89e2e108fe6eb9570a63d3.html