奇偶校验

奇偶校验有两种校验规则:

  • 奇校验:使完整编码(有效位和校验位)中的"1"的个数为奇数个;
  • 偶校验:使完整编码(有效位和校验位)中的"1"的个数为偶数个

直接举例:

待编有效信息 奇校验码 偶校验码
10111010 101110100 101110101
11010010 110100101 110100100

因此,如果是奇校验,当待编有效信息的"1"为奇数个,在最后添0,偶数个添1,偶校验相反。

1.奇偶校验实际上就是对我们DnDn-1...D0进行异或运算(两两相同为0,不同为1),最后偶校验生成0,奇校验生成1,正确,反之错误。

上面表格,第一个我们使用奇校验,第二个使用偶校验

第一个奇校验:1⊕0⊕1⊕1⊕1⊕0⊕1⊕0⊕0=1(正确)

第二个偶校验:1⊕1⊕0⊕1⊕0⊕0⊕1⊕0⊕0=0(正确)

2.如果第一个数据传输过去,变成111110100,很明显地D7变成了1,这时候再进行奇偶校验

1⊕1⊕1⊕1⊕1⊕0⊕1⊕0⊕0=0(错误)

这样我们就能判断数据中出现了错误。

原文地址:https://www.cnblogs.com/Mayfly-nymph/p/11098007.html