计算机通信网络课程实验报告循环冗余校验.doc_第1页
计算机通信网络课程实验报告循环冗余校验.doc_第2页
计算机通信网络课程实验报告循环冗余校验.doc_第3页
计算机通信网络课程实验报告循环冗余校验.doc_第4页
计算机通信网络课程实验报告循环冗余校验.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机通信网络课程实验报告实验三:循环冗余校验班级: 姓名: 学号:1 实验目的熟悉VC开发环境,学习VC编程的基本步骤。2. 写一个C程序,将实现CRC编码。此计画包含了两侧。第一个函数将会产生校验从原始数据和发电机。第二的会检查是否校验和是正确的。2 实验环境要求安装Window XP、Visual C+ 6.0、MSDN3 实验原理循环冗余校验(CRC)通常是用来编码错误检测。在CRC错误检查,传送设备的基础上计算出号码传送的数据。接收设备重复同一计算后传输。如果两个设备都得到同样的结果,故假定传播是无错误的。程序被称为冗余校验是因为每个传输不仅包括数据,另外,冗余值进行错误检查。假设数据传输过程中需要发送15位的二进制信息g=101001110100001,这串二进制码可表示为代数多项式g(x) = x14 + x12 + x9 + x8 + x7 + x5 + 1,其中g中第k位的值,对应g(x)中xk的系数。将g(x)乘以xm,既将g后加m个0,然后除以m阶多项式h(x),得到的(m-1)阶余项r(x)对应的二进制码r就是CRC编码。 h(x)可以自由选择或者使用国际通行标准,一般按照h(x)的阶数m,将CRC算法称为CRC-m,比如CRC-32、CRC-64等。 g(x)和h(x)的除运算,可以通过g和h做xor(异或)运算。比如将11001与10101做xor运算: 明白了xor运算法则后,举一个例子使用CRC-8算法求101001110100001的效验码。CRC-8标准的h(x) = x8 + x7 + x6 + x4 + x2 + 1,既h是9位的二进制串111010101。经过迭代运算后,最终得到的r是10001100,这就是CRC效验码。4.实验要求1编码在C(用VB或MFC或其他代码将被拒绝)。2输入数据填补数据域、编码或支票CRC码在现场总线控制系统领域。3所有的信息都需要输入“0”或“1”。4插座程序所需的传输。5 设计流程图6 调试及结果分析(1)实验分析:图中客户/服务器已建立连接,等待客户输入数据(2)分析:图中连接已建立,客户输入信息码(图中为10011101)和生成多项式(图中为1011),客户端自己计算出字节数(图中为11)(3)在服务器中输入生成多项式(图中为1011)如果服务器中的生成多项式与客户端的生成多项式一样,则系统提示为CRC is successful!如果不一样则系统提示为CRC is not successful!6 系统调试出现及解决的问题本次实验的问题就是关于CRC的编程出现困难,只能通过上网查找资料再经多次修改后才运行成功。7 实验小结通过本次实验我进一步熟悉了VC开发环境和VC编程的基本步骤。熟悉了CRC编码。附录:string crc_function(string m,string p)string r(m.begin (),m.begin ()+p.size (),q;m=m+string(p.size ()-1,0);string:size_type i=p.size(),N=m.size (),j,i1=p.size ();while(i=N)q=;if(p0=r0)for(j=0;ji1;j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论