当前位置: 首页 > 知识库问答 >
问题:

CRC程序-有效检查

卞琨
2023-03-14

让我们得到一个m位消息,其中最后n位是CRC位。据我所知,为了检查接收是否正确,我们应该用特定CRC算法的多项式对所有m位进行异或。如果结果是全零,我们可以说没有错误。

共有1个答案

唐繁
2023-03-14

您对如何检查CRC的描述并没有真正解析。但是无论如何,是的,CRC检查通常是计算预CRC位的CRC,然后将其与发送的CRC进行比较。这样效率稍微高一点。更重要的是,它更容易验证是否正确,因为这是CRC生成和附加到另一端的方式。

该方法扩展到任何样式的检查值,其中,如果在前面的数据之后通过算法运行CRC,则其他检查值不具有获得零的数学属性。此外,具有前置和后置条件的CRCs(大多数)也不会有这种属性。您需要取消后置条件,然后将结果与前置条件值进行比较。

 类似资料:
  • 我需要帮助试图验证CRC-16值(也需要帮助与CRC-32值)。我试图坐下来了解CRC是如何工作的,但我一片空白。 更多信息如下: --编辑-- 我已经包括了更多的信息。我引用的文档是TIA-102.BAAA-A(来自TIA标准)。以下是文档陈述的内容(试图尽可能避免侵犯版权): FM(x)的系数被放置在CRC字段中,其中CRC的第0个八位元组的MSB对应于x^31,而CRC的第3个八位元组的LS

  • 我目前正在创建一个项目,检查给定的9x9数独表是否遵循数独规则。该表存储在一个多维数组中(board[9][9]),我一直在研究如何正确检查每个3x3子网格中是否有重复的数字。我已经建立了0(空白)和9(最大值)之外的数字检查,以及每行和每列中重复的检查。我已经管理了两个create 4 nested for循环,成功地循环了每个3x3框,但我不确定如何检查框中的值是否重复。我对重复的定义是两个包

  • http://www.lammertbies.nl/comm/info/crc-calculation.html http://www.codeproject.com/articles/19059/c-ccitt-crc-algorithm 在上面与字节数组{0xee,0x01,0x13,0x00,0x06,0x1c,0x00,0x20,0x1d,0x00,0x00}的链接中,它使用CRC8(po

  • 问题内容: 如何检查shell脚本中IP地址的有效性,该范围在to 的范围内? 问题答案: 如果您使用的是bash,则可以对模式进行简单的正则表达式匹配,而无需验证四边形: 如果您坚持使用POSIX Shell,则可以使用BRE而不是ERE来做基本相同的事情: 请注意,假设您的正则表达式锚定在字符串的左侧,因此不需要缩写。 如果确认每个四边形小于256很重要,那么显然您将需要更多代码: 甚至更少的

  • 问题内容: 我很好奇,用Java 创建对象的最明显的方法已被弃用,并且似乎已被使用宽大日历的不太明显的方法“替代”。 如何检查以日,月和年的组合形式给出的日期是否为有效日期? 例如,2008-02-31(如yyyy-mm-dd)将是无效日期。 问题答案: 当前的方法是使用日历类。它具有setLenient方法,该方法将验证日期和引发异常,如果超出示例,则抛出异常。 忘记添加:如果您获得日历实例并使

  • 以下是场景: 我有一个日期和一个不同的日期格式。示例: 日期:2016-10-19 日期格式:“DD-MM-YYYY”。 我需要检查这个日期是否有效。 我尝试过跟踪事情 d.isValid()每次返回false。Moment.js解析给定格式的日期吗? 然后我尝试先在中格式化日期,然后将其传递给矩。js: 现在<代码>日期。isValid()给了我想要的结果,但现在是时候了。js日期对象创建两次。