首页 > 其他分享 >CRC校验计算

CRC校验计算

时间:2023-12-13 10:02:52浏览次数:33  
标签:预置 字节 校验 CRC 异或 按位 计算 余数

循环冗余校验(英语:Cyclic redundancy check,通称“CRC”)是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。

CRC算法参数模型解释:
NAME:参数模型名称。
WIDTH:宽度,即CRC比特数。
POLY:生成项的简写,以16进制表示。例如:CRC-8 (X8+X2+X+1)即是0x07,忽略了最高位的"1"(X8),即完整的生成项是0x107。
INIT:这是算法开始时寄存器(crc)的初始化预置值,十六进制表示。
REFIN:待测数据的每个字节是否按位反转,True或False。
REFOUT:在计算后之后,异或输出之前,整个数据是否按位反转,True或False。
XOROUT:计算结果与此参数异或后得到最终的CRC值。

Ps: PEFIN与PEFOUT需要数据按位反转,例如0x1C,二进制表示为 0001 1100,按位反转后0011 1000,即0x38;改变任一个参数都将使最终的CRC值变化。


CRC校验计算_字节数

模2除法求余数:

CRC校验计算_字节数_02

多字节数据CRC计算流程:

CRC校验计算_求余_03


Ps: 模2除法求余数,首先需要让输入值与预置值异或,再进行计算;多字节数据计算中,前一字节求得的余数将作为新的预置值与后一字节进行按位异或。如上例,0x1C求余数得0x54,如果后一字节为0xA1,则需要先0x54 XOR 0xA1,再求余数。

了解更多信息,请搜索广州智维电子科技联系;


标签:预置,字节,校验,CRC,异或,按位,计算,余数
From: https://blog.51cto.com/u_16421812/8798245

相关文章

  • 网络传输之带宽、网速和流量,及宽带的速率计算
    转载来自于:https://baijiahao.baidu.com/s?id=1762214753766275139&wfr=spider&for=pc网络传输中的三个基本概念,带宽、网速和流量,是我们日常使用网络时必须了解的重要概念。虽然它们都与网络传输相关,但它们之间有着不同的定义和关系。带宽是指网络传输中能够承载的最大数据量,通......
  • 高级计算机网络课程结课论文——《5G AKA协议安全性分析综述》
    AbstractInaneraofrapiddevelopmentofthenationaleconomy,variouselectronicproductsandmultimediatechnologieshaveemerged.Asaformofdigitalmedia,digitalvideohasbeenwidelyappliedinvariousfields,bringingjoyandconveniencetopeop......
  • CPU 受限率(CPU throttling rate)解释和计算方式
    目录什么是CPU受限率CPU受限率相关指标如何计算cpu受限率参考资料什么是CPU受限率CPU受限率用于衡量在特定时间段内,CPU被限制运行的程度(即毛刺)。0%表示CPU没有受到限制,100%表示容器的CPU受限率达到100%。CPU受限率相关指标CPU受限率可以通过计算在给定时间段内,CPU被限制的......
  • java计算二个经纬度间的距离(百度坐标)
    1:背景工作中遇到计算二个地点之间的距离,根据百度经纬度进行计算。2:maven依赖<dependency><groupId>org.gavaghan</groupId><artifactId>geodesy</artifactId><version>1.1.3</version></dependency>3:代码实现packagecom.pacific.transfe......
  • element-ui表单校验|标红提示
    elementUI表单校验1.表单上加rules{object}(常用)增加普通校验规则<el-form:model="form":rules="rules"ref="form"><el-form-itemlabel="姓名:":label-width="formLabelWidth"prop="uname"><el-in......
  • 论文精读:STMGCN利用时空多图卷积网络进行移动边缘计算驱动船舶轨迹预测(STMGCN: Mobile
    《STMGCN:MobileEdgeComputing-EmpoweredVesselTrajectoryPredictionUsingSpatio-TemporalMultigraphConvolutionalNetwork》论文链接:https://doi.org/10.1109/TII.2022.3165886摘要利用移动边缘计算MEC范例提出基于时空多图卷积网络(STMGCN)的轨迹预测框。STMGCN由三......
  • 计算机初级选手的成长历程——指针(5)
    进阶指针导言大家好,很高兴又和大家见面了!!!在上一个章节中,咱们深入探讨了一下指针与数组之间的联系,在探讨的过程中我们发现对于指针数组与二级指针来说,它们实质上就是一维数组和一级指针,它们之间的关系也是遵从指针与数组之间关系。为了更好的学习指针,在今天的内容中,我们将介绍指针的......
  • 养老金计算
    1、基础养老金计月基础养老金=退休当年养老金计发基数(退休时上年度社会平均工资)×(1+个人平均缴费指数)÷2×缴费年限×1%2020年北京的养老金计发基数11082元。缴费年限为20。把数据代入公式可以得到:月基础养老金=11082×(1+3)÷2×20×1%=4432元。2、个人账户养老金月个人账户养老......
  • js 传参到 vue + 计算属性使用
    场景js中存储xAxisData=[......]、yAxisData=[......],想在vue中使用,但要求使用前转化成data存有若干个(x,y)的形式在改变xAxisData或yAxisData的任意一值时,都会反馈更新到vue的每一个调用了data的地方方法一:js中Cannotreadpropertiesofundefine......
  • 计算机初级选手的成长历程——指针(4)
    进阶指针导言大家好,很高兴有和大家见面啦!经过前面的学习,大家现在对指针的内容应该有了一个初步的印象。为了帮助大家将指针的知识点好好的消化吸收,今天开始我们将对指针的内容进行深入的探讨。下面我们就开始今天的内容吧!九、二级指针与指针数组通过前面的介绍,我们知道,对于一维数组......