天天看点

网络数据传递校验码

  1. 奇偶码

    在传过来的数据末位增加一位校验码用来表示1的奇偶性,如果有偶数个数据位错误则结果也是正确,比较简单高效,校验结果不太靠谱

    python拟算法奇偶码

  2. 海明码(汉明码)

    弥补奇偶码的缺点,增加k位奇偶校验码,n位数据满足 2k -1 >= n+k,即校验码的位置下标在海明码中满足2i-1,每一位校验位的值由数据位下标之和等于校验位下标的奇偶性决定。校验较慢,对每个字符进行校验

    python拟算法海明码

  3. 循环冗余校验码(CRC)

    根据给定多项式,得到数据总长度k+r-1,将信息码左移r-1位对给定的生成多项式进行模2除运算得到r-1位校验码,信息码和校验码组合得到最终数据,常用于存储系统中 校验结果快,对整个块做一次校验

    python拟算法循环冗余码

继续阅读