zoukankan      html  css  js  c++  java
  • 差错控制

    两类差错

      在传输过程中,主要有两类操作:一种是信道固有的、持续存在的随机热噪声,可以通过提高信噪比来避免;另一种是外界特定的短暂原因造成的冲击噪声,这个时候我们需要差错控制。

    差错控制机制

      自动重传请求(ARQ) :接收端检测出错误时,通知发送端,只掉接受正确的码字为止。

      前向纠错(FEC):接收端不仅能检错,还能纠错,确定错误的位置,并加以改正。

    检错码

      检验码的原理是通过增加一些冗余码来纠错或者检错。

       奇偶校验码

      信息位加一个校验位。只能发现奇数个出错的情况。

      奇数+奇数=偶数;偶数+奇数=奇数;偶数+偶数=偶数;奇数+偶数=奇数;

      所以可以得知:一个数加上一个奇数可以改变其原有的奇偶行,然而偶数不可以。所以,只有出现了奇数个错误,才会改变整个数据中的1的个数,

      才可以被发现;而发生了偶数个错误,即使发生了也不能发现,因为奇偶校验不能时通过观察1个数的变化来发现错误的,而是通过奇偶行的变化来发现错误的。

      所以,只能发现数据代码中奇数位出错的情况。

      CRC校验码(循环冗余)

      信息码是 101001,生成多项式是 G(x)= x+ x2+ 1,对应的是 1101

      (1)信息码左移 R位,X3,故 101001000

      (2)相除:101001000 除 1101,余数是001。余数相加,故最终报文是 101100001

      (3)检错和纠错:接受端拿到后,用模2除法,若余数为0,则码字无错。

        若余数为010,说明倒数第二位出错,取反即可。

      海明码

      多重奇偶校验码

      

      

  • 相关阅读:
    memset使用技巧
    04.碰撞反应
    03.键盘状态跟踪与精灵删除
    02.基本动作
    01.基本图形
    00.入门
    03.交互--鼠标,键盘
    02.action--新增精灵知识点
    01.helloworld--标签
    05.声音
  • 原文地址:https://www.cnblogs.com/juanzhi/p/12745749.html
Copyright © 2011-2022 走看看