关于一个二进制数 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 国际 转载请保留原文链接及作者。