CRC校验实验报告.doc

CRC校验实验报告.doc

ID:55788654

大小:142.50 KB

页数:8页

时间:2020-06-02

CRC校验实验报告.doc_第1页
CRC校验实验报告.doc_第2页
CRC校验实验报告.doc_第3页
CRC校验实验报告.doc_第4页
CRC校验实验报告.doc_第5页
资源描述:

《CRC校验实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验三CRC校验一、CRC校验码的基本原理编码过程:CRC校验码的编码方法是用待发送的二进制数据t(x)除以生成多项式g(x),将最后的余数作为CRC校验码。其实现步骤如下:1设待发送的数据块是m位的二进制多项式t(x),生成多项式为r阶的g(x)。在数据块的末尾添加r个0,数据块的长度增加到m+r位。2用生成多项式g(x)去除,求得余数为阶数为r-1的二进制多项式y(x)。此二进制多项式y(x)就是t(x)经过生成多项式g(x)编码的CRC校验码。3将y(x)的尾部加上校验码,得到二进制多项式。就是包含了CRC校验码的待发送字符串。解码过程:从CRC的编码规则可以看出

2、,CRC编码实际上是将代发送的m位二进制多项式t(x)转换成了可以被g(x)除尽的m+r位二进制多项式所以解码时可以用接收到的数据去除g(x),如果余数位零,则表示传输过程没有错误;如果余数不为零,则在传输过程中肯定存在错误。许多CRC的硬件解码电路就是按这种方式进行检错的。同时,可以看做是由t(x)和CRC校验码的组合,所以解码时将接收到的二进制数据去掉尾部的r位数据,得到的就是原始数据。解码过程示例:运行结果:附录(实现代码):usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespace

3、CRC{publicabstractclassChange{///

///字节数组转进制//////字节数组///字节数组长度publicstaticstringByteToHex(byte[]bytes,intb1){stringreturnStr="";if(bytes!=null){for(inti=0;i

4、returnStr;}///

///16进制转字节数组//////16进制数publicstaticbyte[]HexToByte(stringhexStr){hexStr=hexStr.Replace("","");if((hexStr.Length%2)!=0)hexStr+="";//空格byte[]bytes=newbyte[hexStr.Length/2];for(inti=0;i

5、xStr.Substring(i*2,2),16);}returnbytes;}///

///字符串转进制//////字符串///publicstaticstringStrToHex(stringstr){if(str=="")return"";byte[]bTemp=System.Text.Encoding.Default.GetBytes(str);returnByteToHex(bTemp,bTemp.Length);}///

6、>///16进制转字符串//////16进制///publicstaticstringHexToStr(stringstr){byte[]bytes=newbyte[str.Length];bytes=HexToByte(str);returnEncoding.Default.GetString(bytes);}}}namespaceCRC{//哈夫曼树150//结点类Node的定义如下:publicclassNode{privateintweight;//结点权

7、值privateintlChild;//左孩子结点privateintrChild;//右孩子结点privateintparent;//父结点//结点权值属性publicintWeight{get{returnweight;}set{weight=value;}}//左孩子结点属性publicintLChild{get{returnlChild;}set{lChild=value;}}//右孩子结点属性publicintRChild{get{returnrChild;}set{rChild=value;}}//父结点属性publicint

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。