数据通信中,奇偶校验原理

     上大学《数字逻辑》这门课学过奇偶校验,工作后没用过,忘了具体是什么原理了,现在要写一个上位机,需要学习一下,查了一下,奇偶校验我的理解是这样的:

     1、奇偶校验是用来检查数据传输的正确性的方法。奇偶校验能检测出传输数据的部分错误(1位误码能检测出,2位及2位以上检测不出来),而且不能纠错,在发现错误后,只能要求重发。由于简单所以被广泛应用。


     2、这种方法是在每一字节中加上一个奇偶校验位,并被传输,即每个字节发送九位(8位+1位校验位)数据。1个字节(byte)=8位(bit)。


     3、数据传输以前通常会确定是奇校验还是偶校验,以保证发送端和接收端采用相同的校验方法进行数据校验。
假如校验位不符,则认为传输出错。


     4、奇校验:一个字节8位中“1”的个数,校验位,添加一位,使9位中“1”的个数为奇数;偶校验同理。

奇校验:就是让原有数据序列中(包括你要加上的一位)1的个数为奇数

1000110(0)你必须添0这样原来有3个1已经是奇数了所以你添上0之后1的个数还是奇数个。

偶校验:就是让原有数据序列中(包括你要加上的一位)1的个数为偶数

1000110(1)你就必须加1了这样原来有3个1要想1的个数为偶数就只能添1了。  

  

 5、校验的原理是:假如采用奇校验,发送端发送的一个字符编码(含校验位)中,“1”的个数一定为奇数个,在  接收端对接收字符二进制位中的“1”的个数进行统计,若统计出“1”的个数为偶数个,则意味着传输过程中有1位(或奇数位)发生差错。

事实上,在传输中偶尔—位出错的机会最多,故奇偶校验法常常采用。
*参考百度百科http://baike.baidu.com/link?url=MzMgna4IvXi-rCkBWjoYzae74aupmqDbFtaqdBxyffSJzySqnKVeGaEo53O8RVtEoFiF6c7Fyb3379gUxM292ZhpzSWxggFjaxJwv5qt9UzA6tdnrVf5RopDy3LaDHDa


你可能感兴趣的:(编程C#)