这或许是一个简单的问题,但是我早就忘记咋解了。
关于一个二进制数1111000 除以1101,模2除法的商为1011,余数为111.这个结果不同于十进制除法。所以特记下。具体步骤如下:
#第一步
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除法,参考了下网络资源。最后得到的结论。不知道是正确与否。
模2除法可以用在CRC冗余校验上。K,H均为2进制数,K向左移R,然后K除以H。模2除得到的余数在放到R位中。例如:K=1111,H=1101,R=3,移位之后得1111000,最后CRC=1111111。