微信搜索:编程笔记本。获取更多干货!
微信搜索:编程笔记本。获取更多干货!
点击上方蓝字关注我,我们一起学编程
欢迎小伙伴们分享、转载、私信、赞赏
循环冗余码(CRC)
微信搜索:编程笔记本。获取更多干货!
微信搜索:编程笔记本。获取更多干货!
文章目录
概念:
循环冗余码(CRC),又称为多项式码,是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。CRC 的工作方法是在发送端产生一个冗余码,附加在信息位后面一起发送到接收端,接收端收到的信息按发送端形成循冗余码同样的算法进行校验,如果发现错误,则通知发送端重发。
模 2 运算:
模 2 运算的加减乘除与常规二进制运算类似,不同的一点是:无进位、不借位。
一个例子:
1001
- 1100
-----------
0101
生成多项式:
比如,G(x) = x^4 + x^3 + 1 是一个生成多项式,那么该生成多项式对应的二进制比特串就是:11001 。即:G(x) = 1*x^4 + 1*x^3 + 0*x^2 + 0*x^1 + 1*x^0 ,取对应系数即可。
步骤:
-
- 假设生成多项式为 m 位,则在需要发送的数据帧后增加 m-1 个 0 。
-
- 将增广后的数
循环冗余码(CRC)是一种广泛用于数据通信领域的差错校验码,通过模2运算和生成多项式来校验信息的正确性。在发送端,信息字段与冗余码结合;在接收端,通过相同算法校验,判断数据是否出错。CRC通过多项式除法找到余数,若接收端校验得余数不为0,则表明数据错误。
最低0.47元/天 解锁文章
3357

被折叠的 条评论
为什么被折叠?



