首页 > 编程知识 正文

模2除法(CRC校验码计算),crc校验码模二除法详解

时间:2023-05-04 04:47:54 阅读:157784 作者:4791

二进制类型2除法不同于二进制除法。 模式2运算:加法运算不进位,减法运算不借位。

二进制除法:带借位的二进制除法是根据馀数的减数是否充分来决定商1还是商0,如果充分减数则为商1,否则为商0。

二进制模2除法:由于采用模2减法不带借位的二进制减法,考虑剩余是否充分减数是没有意义的。 实际上,CRC运算确保除数顶部始终为1,馀数顶部和除数顶部的模2除法结果决定模2除法的商。 因为除数的顶端总是1,所以根据类型2除法的法则,余数首位是1就商1,是0就商0

(1)一步步的计算方法:

型2除法与长除法相似,但具有不借用位数的特点。 说白了就是异或,相同的是0,不同的是1。

有三个原则:

1、除数和被除数的最高位数(与除数的位数相同)取异或,商1。 (除数的首位必须是1 ) )。

2、无聊的车摘下首位,此时,如果剩余的最高位为1,商1,则以此为除数继续进行模2的分配。

最高有效比特为0时,商为0,重复步骤2。

3、在馀数位数小于除数的位数之前,运算结束。

(2)熟悉规则之后,比较简洁的方法

1、当余数位数与除数位数相同时,进行异或运算。 馀数的顶是1,商是1,馀数的顶是0,商是0。

2、已去掉几位后,余数小于除数,商为0,余数向右补一位,按位数仍比除数少,则继续商0,当余数位数和除数位数一样时,商1进行异或运算,得到新余数作为被除数的最后一位。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。