前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言 模2除法

C语言 模2除法

作者头像
jianghaibobo
发布2019-09-11 16:37:11
2K0
发布2019-09-11 16:37:11
举报
代码语言:javascript
复制
C语言中的模2除法:
模2除做法与算术除法类似,但每一位除(减)的结果不影响其它位,即不向上一位借位。所以实际上就是异或。然后再移位移位做下一位的模2减。
步骤如下:
a、用除数对被除数最高n位做模2减,没有借位。
    (模2减规则:0-0=0 0-1=1 1-0=1 1-1=0)

b、除数右移一位,若余数最高位为1,商为1,并对余数做模2减。若余数最高位为0,商为0,除数继续右移一位。

c、一直做到余数的位数小于除数时,该余数就是最终余数。
举例:
1.  1100100÷1011 = 1110.....110
         1011
         ————————
    1011|1100100
         1011
         ————
         01111
          1011
          ————
          01000
           1011
           ————
           00110
           
2.  1111000÷1101 = 1011.....111
         1011
         ————————
    1101|1111000
         1101
         ————
         00100
          0000
          ————
          01000
           1101
           ————
           01010
            1101
            ————
            0111

用于实现CRC校验算法。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-08-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档