模2除法(CRC检验码)

关于一个二进制数 1111000 除以 1101,模 2 除法的商为 1011,余数为 111.这个结果不同于十进制除法。所以特记下。

方法一:

具体步骤如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#第一步
1111000
1101
0010000 ----余数,商为1,只要第一位非0商就是1
#第二步,每步移一位,当起始位为0时,除以0;为1时除以除数。
010000
0000
010000 ----余数,商为0,只要第一位是0商就是0
#第三步
10000
1101
01010 -----余数,商为1,这里的余数你猜出,其实就是对应位异或
#第四步
1010
1101
0111 ------余数,商为1,如果位数比除数还小,不再继续运算
#最终余数为111,商为1011

模 2 除法可以用在 CRC 冗余校验上。K,H 均为 2 进制数,K 向左移 R,然后 K 除以 H。模 2 除得到的余数在放到 R 位中。例如:K=1111,H=1101,R=3,移位之后得 1111000,最后 CRC=1111111。

方法二:

CRC 校验码的另一种方法:
例题:采用 CRC 进行差错校验,生成多项式为 G(X)=X4+X+1,信息码字为 10110,则计算出的 CRC 校验码是()
解析:G(x)=X4+X+1 对应的二进制序列为 10011,下面进行“按位异或”运算:
例题图

------ 本文结束------

本文标题:模2除法(CRC检验码)

文章作者:jklf5

发布时间:2020年02月18日 - 21:59

最后更新:2020年02月19日 - 21:00

原始链接:https://jklf5.xyz/2020/02/18/模2除法(CRC检验码)/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。