什么是 CRC?它对错误检测有何帮助?
Priya
问问题
15997 次
3 回答
7
CRC 是一种非安全哈希函数,旨在检测原始计算机数据的意外更改,通常用于数字网络和硬盘驱动器等存储设备。
启用 CRC 的设备为每个数据块计算一个短的、固定长度的二进制序列,称为 CRC 码,并将它们一起发送或存储。当读取或接收到一个块时,设备会重复计算;如果新的 CRC 码与之前计算的不匹配,则该块包含数据错误,设备可能会采取纠正措施,例如请求再次发送该块。
资料来源:维基百科
于 2009-12-24T10:32:02.877 回答
3
CRC 代表循环冗余校验。它有助于错误检测。它包括以下内容
b(x)-> transmitted code word
q(x)-> quotient
i(x)-> information polynomial
r(x)-> remainder polynomial
g(x)-> generated polynomial
step 1: x^(n-k) * i(x)
step 2: r(x) = (x^(n-k) * i(x))%g(x)
step 3: b(x) = (x^(n-k) * i(x)) XOR with r(x)
which results in a transmitted code word.
this b(x) is send to the reciever end from the sender and if u divide the
transmitted code word i.e. b(x) with g(x) and if the remainder
i.e. r(x) is equal to 0 at the reciever end then there is no error
otherwise there is an error in the transmitted code word during the
transmission from sender to reciever.
In this way it is helpful in error detection.
于 2009-12-24T10:39:05.077 回答
0
循环冗余检查是一个哈希函数,它允许您计算给定某些输入的唯一值,该值保证对于相同的输入始终相同。如果输入以某种方式与原始输入发生变化,则会生成不同的 CRC 校验和。因此,如果您有一个输入和一个校验和,您可以从输入计算一个新的校验和并比较两个校验和。如果它们相同,则表示输入没有改变。
于 2009-12-24T10:33:23.713 回答