转:CRC校验之模2除法

模2除法
它有三个原则:
1、除数与被除数最高几位(与除数位数相同)做异或,商1。(除数首位必须为1)
2、余数先去掉首位,若此时余数最高位为1,商1,并对以它为除数继续模2除。
若最高位为0,则商0,重复步骤2。
3、直到余数位数小于除数位数时,运算结束。
举个栗子:
1111000 模2除1101
(1) 除数: 1111000
被除数: 1101
商: 1(除数首位为1)
余数: 0010000

余数右移一位做除数:
(2) 除数: 010000
被除数: 1101
商: 0(除数首位为0)
余数: 无

余数右移一位做除数:(没余数就把除数右移一位)
(3) 除数: 10000
被除数: 1101
商: 1
余数: 01010

余数右移一位做除数:
(4) 除数: 1010
被除数: 1101
商: 1
余数: 0111
最终结果:商1011 余数0111
---------------------
作者:tjd10061
来源:CSDN
原文:https://blog.csdn.net/tjd10061/article/details/48808633
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自www.cnblogs.com/blogforvi/p/10313179.html