在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2036|回复: 6

[求助] CRC除法的余数为什么跟普通除法产生的余数不一样

[复制链接]
发表于 2015-1-25 11:52:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 159357a001 于 2015-1-25 14:20 编辑

还是以本论坛一位盆友CRC计算的例子为基础

信息字段代码为: m(x)=x6+x4+x3+1    代码为:1011001       10进制89

生成多项式:    g(x)=x4+x3+1       代码为:11001         10进制25

普通计算方法  89/25  = 3  余数   14  即1110


而CRC计算过程及结果如下

m(x)x4=x10+x8+x7+x4 对应的代码记为:10110010000     即 左移4位

m(x)x4 在与 g(x)进行 模2的除法运算,相当于按位异或,计算过程如下:

1 0 1 1 0 0 1 0 0 0 0

1 1 0 0 1
-----------------------------

0 1 1 1 1 0 1 0 0 0 0

  1 1 0 0 1
-----------------------------

0 0 0 1 1 1 1 0 0 0 0

      1 1 0 0 1
-----------------------------

      0 0 1 1 1 0 0 0

          1 1 0 0 1
-----------------------------

          0 0 1 0 1 0             --------------> 余数     即 校验码   结果为十进制 10


请问我的计算过程哪里出现了问题?还是异或本身的计算特性

小弟问题很傻瓜,各位看官请轻拍

发表于 2015-1-25 15:51:13 | 显示全部楼层
顶一下
发表于 2015-1-25 20:39:36 | 显示全部楼层
你的问题是:
在做除法的过程中,我们是用被除数减去商乘以除数。你是直接用被除数减去除数。
正确的结果为:
                     x2             +x
                     ___________
  x4+x3+1   | x6+x4+x3+1
                      x6+x5+x2
                     ---------------
                            x5+x4+x3+x2 +1
                            x5+x4+x
                           -----------------------
                                        x3+x2+x+1
发表于 2015-1-25 21:39:18 | 显示全部楼层
回复 1# 159357a001


   赞!
发表于 2015-1-29 18:12:08 | 显示全部楼层
CRC计算不产生借位,
发表于 2015-1-29 18:35:03 | 显示全部楼层
这个不是普通除法,这个是模2除法,GF(2)。
 楼主| 发表于 2015-1-29 18:42:38 | 显示全部楼层
谢谢各位了,应该是模2除法的特性,谢谢各位帮忙指点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-9 18:45 , Processed in 0.033834 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表