奇偶校验实验报告.docx

奇偶校验实验报告.docx

ID:57323244

大小:17.27 KB

页数:14页

时间:2020-08-11

奇偶校验实验报告.docx_第1页
奇偶校验实验报告.docx_第2页
奇偶校验实验报告.docx_第3页
奇偶校验实验报告.docx_第4页
奇偶校验实验报告.docx_第5页
资源描述:

《奇偶校验实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、竭诚为您提供优质文档/双击可除奇偶校验实验报告  篇一:奇偶校验  实验项目四:数据的校验(2学时)  一、实验目的:  1.了解数据的校验机制。  *2.掌握海明码校验实施过程(选做)。  *3.掌握循环冗余码校验实施过程(选做)。  二、实验要求:  1.设计一个程序模拟奇偶校验实施过程(提示:主函数、发送函数、传输函数、校验函数)。  首先奇偶校验过程的基本过程:奇偶校验位有两种类型:偶校验位与奇校验位。如果一组给定数据位中1的个数是奇数,那么偶校验位就置为1,从而使得总的1的个数是偶数。如果给

2、定一组数据位中1的个数是偶数,那么奇校验位就置为1,使得总的1的个数是奇数。偶校验实际上是循环冗余校验的一个特例,通过多项式x+1得到1位cRc。  *2.设计一个程序模拟海明码校验实施过程(提示:主函数、发送函数、传输函数、校验函数、纠错函数)。  *3.设计一个程序模拟循环冗余码校验实施过程(提示:主函数、发送函数、传输函数、校验函数、纠错函数)。  三、实验报告:  1.给出源程序和执行结果。  #include  #include  #include  voidproduct();  void

3、trans();  voidpop();  intp1,p2;  inta[8]={0};  intmain()  {  product();//产生一个随机的八位二进制的数  trans();//设置传输出错一位或者没有出错的情况  pop();//判断有无出错的情况  return0;  }  voidproduct()  {  inti,data;intcount1=0;srand((unsigned)time(0));data=0+rand()%128;//产生0-127的随机数printf(

4、"随机的产生一个128以内的十进制数为%d",data);for(i=0;i  if(count1%2==0)//奇校验奇数个1校验位为0,偶数个1为1a[7]=1;}for(i=0;i  else  a[7]=0;  p1=a[7];  printf("初始二进制校验位放在最高位它为:%d",p1);  printf("产生随机二进制数为");  /*  while(i>=0)  printf("%d",a[--i]);*/  for(i=7;i>=0;--i)  {  printf("%d

5、",a[i]);  }  printf("");  }  voidtrans()  {  inti;  srand((unsigned)time(0));  i=0+rand()%9;//产生0-8的随机数  if(i==0)  printf("机器内部设置传输过程中没有出错");  else  {  a[i-1]=(a[i-1]==0)?1:0;  printf("传输过程将机器内部的数据进行了一位改动,改动位  为%d",i);  }  voidpop()  {  printf("接收

6、数据计算出的校验位为:%d",p2);if(p2!=a[7])printf("通过校验位p1与p2的比较得出传输过程中数据出错了。if(count2%2==0)p2=1;inti,count2=0;printf("接收数据为:");for(i=7;i>=0;i--){}printf("");//求接收数据的偶校验位for(i=6;i>=0;i--){}if(a[i]==1)count2++;printf("%d",a[i]);}elsep2=0;  ");  elseprintf("通过校

7、验位p1与p2的比较得出在传输的过程中数据没有出错!");  }  篇二:实验报告  实验一  1.ADs1.2下建立工程  (1)运行ADs1.2集成开发环境(codewarriorforARmDevelopersuite),点击File

8、new,在new对话框中,选择project栏,其中共有7项,ARmexecutableImage是ARm的通用模板。选中它即可生成ARm的执行文件。还要在,projectname栏中输入项目的名称,以及在Location中输入其存放的位置。按确定保存项目。 

9、 (2)在新建的工程中,选择Debug版本,如图,使用edit

10、Debugsettings菜单对Debug版本进行参数设置。  (3)在如图2-1-3中,点击Debugsetting按钮,  图2-1-3  (4)在如图2-1-5中,点击ARmAssembler,在Architectureorprocesser  图  2-1-5  栏中选ARm920T。这是要编译的cpu核。  (5)在如图2-1-6中,点击ARmccompliler,在Archite

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

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

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