【问题标题】:Error detection in binary messages using CRC/polynomial key使用 CRC/多项式密钥在二进制消息中检测错误
【发布时间】:2013-12-28 08:33:09
【问题描述】:

我是 CRC 和校验和的新手,我正在尝试以下查询:

我正在尝试使用生成多项式 P=x5+x4+x2 +1 来确定 CRC。

要发送的消息是=1010001101。

对于我的查询,我被要求:

  • 显示多项式键;
  • 计算CRC &
  • 要传输的消息。

我的尝试如下:

  1. 多项式生成器是P=x5+x4+x2+1。我把它计算为 110101(x 5=1 的幂;x 4=1 的幂;x 3=0 的幂;x 2=1 的幂;x 的幂1=0;1=1)。

    1. 然后我将其划分为要发送的消息:1010001101(msg) / 110101 (polyn) 结果 = 11010;余数:00011111。

对于要传输的消息,我已从原始消息中减去余数 (1010001101 - 00011111 = 101011111)。这是正确的吗?

消息除以多项式后剩下的(余数)数字是 CRC 吗?

对于错误检查.. 如果没有余数,那么在收到的消息中没有错误是否正确?或者如果没有,如何判断收到的消息是否有错误?

非常感谢任何帮助。

非常感谢。

【问题讨论】:

    标签: binary checksum crc error-detection


    【解决方案1】:

    由于 CRC 多项式是 5 次,余数有 5 位。因此,传输的消息在其末尾 附加 这 5 位(不像您那样从消息中减去)。在你的情况下,你的划分是正确的,并且CRC是11111(5位),所以要发送的消息是101000110111111。

    对于错误检查,当您将 CRC 附加的消息除以 CRC 多项式时,如果未检测到错误,则余数为 00000(请注意,detected 是此处的关键 - 在一般情况下,您可能会遇到导致相同零余数的错误,但概率非常低,在您的特定情况下,使用这样的短消息,您可能是安全的。

    【讨论】:

    • 非常感谢。这真的很有帮助。非常感谢。
    猜你喜欢
    • 2016-12-27
    • 2011-03-01
    • 2016-10-07
    • 1970-01-01
    • 2016-06-08
    • 2022-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多