当前位置: 代码迷 >> 汇编语言 >> 循环冗余校验:CRC-16如何会是0x8005
  详细解决方案

循环冗余校验:CRC-16如何会是0x8005

热度:1040   发布时间:2013-02-26 00:00:00.0
循环冗余校验:CRC-16怎么会是0x8005?
CRC-16:x^16+x^15+x^2+1,应该是0x18005吧?(0001 1000 0000 0000 0101)。为什么有的地方写成0x8005呢?还有CRC-CCITT:x^16+x^12+x^5+1,我算的是0x11021,为啥书上是0x1201?

------解决方案--------------------------------------------------------
他可能只比较效验值的低16位,这是一种不完整比较,不过某些时候速度会更快。
比如NT在注册表中只保存用户密码hash的一半,这已经能识别了。
  相关解决方案