数据传输-奇偶校验

奇偶校验(Parity Check)是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。奇偶校验用于数据传输时,最后一位为奇偶校验位收发方事先已经约定好进行奇校验还是偶校验。

下面以奇校验为例:


例子一:

发送方:

发送数据:101101

1的个数:4(偶数个)

校验后的数据:1011011(末尾加1,使1的个数为5,奇数个)


传输无误,传输数据为:1011011


接收方:

接受的数据:1011011

校验1的个数:5(奇数个无误)

去掉校验位的数据:101101


例子二:

发送方:

发送数据:1011

1的个数:3(偶数个)

校验后的数据:10110(末尾加0,使1的个数为3,奇数个)


传输无误,传输数据为:10110


接收方:

接受的数据:10110

校验1的个数:3(奇数个无误)

去掉校验位的数据:1011


例子三:

发送方:

发送数据:101101

1的个数:4(偶数个)

校验后的数据:1011011(末尾加1,使1的个数为5,奇数个)


传输有误,传输过程中数据变为:1001011


接收方:

接受的数据:1001011

校验1的个数:4(偶数个1,数据出错)

丢弃该数据


例子四:

发送方:

发送数据:101101

1的个数:4(偶数个)

校验后的数据:1011011(末尾加1,使1的个数为5,奇数个)


传输有误,传输过程中数据变为:1001001


接收方:

接受的数据:1001001

校验1的个数:3(奇数个1,此时判断为数据传输“无误”,实际上除了查错,所以这种情况检测不出来

去掉校验位的数据:100100(错的数据)


总结:发收双方确定好奇校验还是偶校验。若为奇校验,则发送方发送的数据有奇数个1,若接收方接收的数据有奇数个1,则数据无误,否则接收的数据有误



你可能感兴趣的:(数据传输,计算机网络,奇偶校验)