下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、循环冗余检验的纠错功能和代码实现CRC 循环冗余检验的纠错功能和代码实现写这篇章呢,主要是想聊下CRC的纠错功能,虽然我们谈到CRC很少说到它的纠错功能,但不代表没有,因此写以记录下它的纠错功能以及如何java代码实现。给出java代码如下public static void main(String args) TestSystem.out.print( +i + +mistakeCRC);System.out.println( : +calculate(Integer.parseInt(mistakeCRC, 2),Integer .parseInt(gxStr, 2) dataStr.le
2、ngth() - 1,dataStr.length(),gxStr.length();/* param 信息进制data 成多项式gx 信息位长度dataStrLen 校验位长度gxStrLen* author wxc* return 余数* Description: 计算余数*/public String calculate(int data, int gx, int dataStrLen, int gxStrLen) /算出原始数据补零后的总位数int sum =dataStrLen +gxStrLen - 1;/计算2sum-1次幂BigInteger bi =new BigIntege
3、r(2);/2sum-1次幂转换为int型int flag =bi.pow(sum - 1).intValue();/循环dataStrLen次/关于为什么是dataStrLen,假设信息位位,成多项式是位,那么就是(K+R-1) - R + 1 = K,也就是信息位位数for (int i =0; i 1;/flag最位的1右移,较下位/解决Java输出进制时略去位零的问题如成多项式1011,那么需要补20,也就是的长度= 4-1while (.length() (gxStrLen - 1) while (.length() (gxStrLen - 1) /*public String ge
4、tCRC(String dataStr, String gxStr) /获取进制信息位的位数int dataStrLen =dataStr.length();/获取成多项式位数/将进制的字符串变为整型int data =Integer.parseInt(dataStr, 2);/将多项式的字符串变为整型int gx =Integer.parseInt(gxStr, 2);/算出原始数据补零后的总位数int sum =dataStrLen +gxStrLen - 1;/信息码低位补零/成多项式低位补零,使其与补零后的位数致,以便异或gx =gx (dataStrLen - 1);String C
5、RC =calculate(data, gx, dataStrLen, gxStrLen);CRC =dataStr +;/* param 循环冗余效验码CRC要更改的下标index* author wxc* return 更改某个位后的冗余码* Description:更改正确冗余码的某个位,得到错误的冗余码,也就是循环冗余码在传输过程中发位特的差错*/public String mistakeCRC(String CRC, int index) BigInteger bi =new BigInteger(2);/2sum-1次幂转换为int型int flag =bi.pow(index -
6、 1).intValue();int data =Integer.parseInt(, 2);int result =flag data;/解决Java输出进制时略去位零的问题String resultStr =Integer.toBinaryString(result);while (resultStr.length() = K+R的时候,CRC才具有纠错功能。且我们可以发现余数是每7个个循环,出错位1和出错位8的余数是样的,出错位2和出错位9的余数是样的,所以这也是为什么叫做循环冗余码的原因接下来我们再来说说为什么般我们不提及CRC的纠错功能,因为CRC般在计算机络中,在以太的MAC帧中,通常4字节的效验码(FCS)不但来检验MAC帧的数据部分,还来检验的地址、原地址和类型字段(601514)字节,信息位远远于校验位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阅读教育理论心得体会
- 酒店三月个人工作总结
- 概率论公式总结30347
- 最美家风事迹材料7篇
- 福建省南安市2024−2025学年高二上学期第1次阶段考试(10月)数学试题含答案
- 我的理想是医生演讲稿5篇
- 2023年植物促生菌剂资金申请报告
- DB11T 1491-2017 街道(乡镇)、社区(村)人力资源和社会保障平台服务规范
- 2024基于GIS的测绘数据管理平台技术规范
- 上海市县(2024年-2025年小学五年级语文)统编版能力评测((上下)学期)试卷及答案
- 道德与法治学科成绩提升计划
- 2022-2023学年北京市西城区德胜中学八年级(上)期中数学试卷【含解析】
- 病历书写基本规范细则
- 高校廉政课件
- 装修工人简历范文
- 工作任务委托书
- 知道网课智慧树《文化考察(西安工程大学)》章节测试答案
- 上海无障碍设施设计标准
- 大数据处理和分析服务合同
- 生物制剂在肾病综合征中的应用和思考
- 2024年支部书记廉洁谈话记录内容篇
评论
0/150
提交评论