二进制除法(规律)

二进制除法(规律)
二进制除法(规律)

模2除法

编辑

模2除法与算术除法类似,但每一位除的结果不影响其它位,即不向上一位借位,所以实际上就是异或。在循环冗余校验码(CRC)的计算中有应用到模2除法。

【例1】:1111000除以1101:

【例2】被校验的数据M(x)=1000,其选择生成多项式为G(x)=x^3+x+1,该数据的循环冗余校验和应为多少?

G(x)=x^3+x+1对应的二进制数为1011,且G(x)中含3个项式,生成多项式为4位二进制,由CRC规则应该取(4-1)=3位(校验和),所以可以预加上3位得到1000B*2^3=1000 000B; 1000 000B(被除数)对1011(除数)做模2除法,得到的余数便是101B(即CRC校验和),所以该数据的循环冗余校验后的数据应为1000 000B+101B=1000101B。

想知道模2除法,只需要知道什么是异或运算就很容易算出。

计算机中,异或逻辑表示为:(记忆方法:同为0异为1)

真^假=真

假^真=真

假^假=假

真^真=假

或者

1^1=0

0^0=0

1^0=1

0^1=1

计算机语言用1表示真,用0表示假,所以两个字节按位异或如下

例如

00000000 ⊕00000000 = 00000000 11111111 ⊕00000000 = 11111111 00000000 ⊕11111111 = 11111111 11111111 ⊕11111111 = 00000000 00001111 ⊕11111111 = 11110000

相关主题
相关文档
最新文档