算法CRC 循环冗余校验

Posted 九师兄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法CRC 循环冗余校验相关的知识,希望对你有一定的参考价值。

1.概述

循环冗余校验CRC (Cyclic Redundancy Check)是一种数据链路层的差错控制技术。

在数据的传输过程中可能会产生比特错误: 1可能变为0,0可能变为1。

在一段时间内,传输错误的比特所占传输比特总数的比率称为误码率BER(BitErrorRate)

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用相应的差错检测机制!

2.循环冗余校验CRC

循环冗余校验CRC (Cyclic Redundancy Check)

在数据链路层传送的帧中,广泛使用了CRC (循环冗余校验)技术。

在发送端,先把数据划分为组。假定每组k个比特

假设待传送的一组数据M = 101001 (现在k=6) 。我们在M后面再添加n位供差错检验用的冗余码一起发送。那么总共发送的数据是 6+n比特。

冗余码的计算方式:

  1. 用2进制的模2运算进行2的N词次乘M的运算,这相当于在M后面添加了n个0。
  2. 得到的(K+n) 位的数除以事

以上是关于算法CRC 循环冗余校验的主要内容,如果未能解决你的问题,请参考以下文章

CRC循环冗余校验码(Cyclic Redundancy Check,CRC)的理论与误码率matlab仿真和分析

软考网工难点分析之三 CRC循环冗余校验

CRC校验

奇偶校验码与循环冗余校验码CRC

循环冗余校验(CRC)算法入门

CRC(循环冗余校验)