C语言中的模2除法:
模2除做法与算术除法类似,但每一位除(减)的结果不影响其它位,即不向上一位借位。所以实际上就是异或。然后再移位移位做下一位的模2减。
步骤如下:
a、用除数对被除数最高n位做模2减,没有借位。
(模2减规则:-= -= -= -=) b、除数右移一位,若余数最高位为1,商为1,并对余数做模2减。若余数最高位为0,商为0,除数继续右移一位。 c、一直做到余数的位数小于除数时,该余数就是最终余数。
举例:
. ÷ = ..... ————————
| ———— ———— ———— . ÷ = ..... ————————
| ———— ———— ———— ————

用于实现CRC校验算法。

05-07 15:18