资源简介
通信系统综合实验内数字基带仿真实验的编程部分,在VS2010环境下编译通过,结果准确
代码片段和文件信息
// 23FEC.cpp : 定义控制台应用程序的入口点。
//
#include “stdafx.h“
extern int gx[10][15];
extern int h[15][5];
/*
*输入参数:num
*
*/
void channel(int *cout)
{
int loc=0;
int mark=1;
while(mark)
{
printf(“输入位置输入-1结束:\n“);
scanf_s(“%d“&loc);
if(loc==-1)
{
mark=0;
}
else
{
cout[loc-1]=cout[loc-1]+1;
cout[loc-1]%=2;
}
for(int i=0;i<15;i++)
{
printf(“ %d“cout[i]);
}
printf(“\n“);
}
}
/*
*输入参数:cout,s
*得出s与h校验矩阵比较其行号就是出错位置
*/
int decode(int *coutint *s)
{
int mark=0;//标记是否出错,0没出错。
int weizhi=0;//标记位置
for(int i=0;i<5;i++)
{
if(s[i]==0)
{
mark=0;
}
else
{
mark=1;
break;
}
}
if(mark)
{
int j=0i=0;
for(i=0;i<15;i++)
{
for(j=0;j<5;j++)
{
if(s[j]!=h[i][j])
{
break;
}
}
if(j>=5)
return i;
}
}
return 0;
}
/*
*输入参数:num,da
*
*/
void hex_to_bin(int *daint num)
{
for(int i=0;i<10;i++)
{
da[i]=(num)&0x01;
num=num>>1;
}
}
/*
*输入参数:cout,da
*
*/
void encode(int *coutint *da)
{
for(int i=0;i<15;i++)
{
for(int j=0;j<10;j++)
{
cout[i]=cout[i]+da[j]*gx[j][i];
}
cout[i]=cout[i]%2;
}
printf(“\n“);
for(int i=0;i<2;i++)
{
int tem=0;
tem=cout[4-i];
cout[4-i]=cout[i];
cout[i]=tem;
}
/*for(int i=5;i<10;i++)
{
int tem=0;
tem=cout[14+5-i];
cout[14+5-i]=cout[i];
cout[i]=tem;
}*/
}
int _tmain(int argc _TCHAR* argv[])
{
int da[10]={0000000001};
int cout[15]={0};
int num=0;
while(1)
{
printf(“输入16进制数据(0-0x3FF) da:\n“);
scanf_s(“%x“&num);
while(num>0x3FF)
{
printf(“输入数据有误请重新输入:\n“);
printf(“输入16进制数据(0-0x3FF) da:\n“);
scanf_s(“%x“&num);
}
switch(num)
{
case 0:return 0;
default:
hex_to_bin(danum);
for(int i=0;i<15;i++)
{
cout[i]=0;
}
encode(coutda);
printf(“cout:\n“);
printf(“编码前的二进制信息序列为(MSB-->LSB):“);
for(int i=5;i<10;i++)
{
int tem=0;
tem=cout[14+5-i];
cout[14+5-i]=cout[i];
cout[i]=tem;
}
for(int i =5;i<15;i++)
{
printf(“ %d“cout[i]);
}
printf(“\n“);
printf(“经2/3FEC编码后的二进制信息序列为(MSB-->LSB):“);
for(int i =0;i<5;i++)
{
printf(“ %d“cout[i]);
}
printf(“ “);
for(int i =5;i<15;i++)
{
printf(“ %d“cout[i]);
}
printf(“\n“);
for(int i=5;i<10;i++)
{
int tem=0;
tem=cout[14+5-i];
cout[14+5-i]=cout[i];
cout[i]=tem;
}
channel(cout);
//校验
int s[5]={0};
for(int i=0;i<5;i++)
{
s[i]=0;
}
for(int i=0;i<5;i++)
{
for(int j=14k=0;j>=0;j--k++)
{
s[i]+=cout[j]*h[j][i];
}
s[i]%=2;
}
printf(“s:\n“);
for(int i=0;i<5;i++)
{
printf(“%d“s[i]);
}
printf(“\n“);
int num=decode(couts);
if(num>=5)
{
printf(“出现奇数个错误:\n“);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-12-10 15:22 23FEC\
目录 0 2012-12-09 11:25 23FEC\23FEC\
文件 2445312 2012-12-10 15:22 23FEC\23FEC.sdf
文件 882 2012-12-07 11:35 23FEC\23FEC.sln
文件 14848 2012-12-10 15:22 23FEC\23FEC.suo
文件 3647 2012-12-10 14:49 23FEC\23FEC\23FEC.cpp
文件 4364 2012-12-07 11:35 23FEC\23FEC\23FEC.vcxproj
文件 1309 2012-12-07 11:35 23FEC\23FEC\23FEC.vcxproj.filters
文件 143 2012-12-07 11:35 23FEC\23FEC\23FEC.vcxproj.user
目录 0 2012-12-10 15:02 23FEC\23FEC\Debug\
文件 406 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.exe.em
文件 472 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.exe.em
文件 381 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.exe.intermediate.manifest
文件 55 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.lastbuildstate
文件 3337 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.log
文件 16700 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.obj
文件 1179648 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC.pch
文件 200 2012-12-10 15:02 23FEC\23FEC\Debug\23FEC_manifest.rc
文件 1394 2012-12-10 15:02 23FEC\23FEC\Debug\cl.command.1.tlog
文件 2200 2012-12-10 15:02 23FEC\23FEC\Debug\CL.read.1.tlog
文件 700 2012-12-10 15:02 23FEC\23FEC\Debug\CL.write.1.tlog
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 1534 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 2950 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 762 2012-12-10 15:02 23FEC\23FEC\Debug\li
文件 358 2012-12-10 15:02 23FEC\23FEC\Debug\mt.command.1.tlog
............此处省略40个文件信息
相关资源
- 精简版黑白棋demo-Qt
- 线性表的基本操作vs2017
- 基于Qt5的俄罗斯方块游戏
- WS2812库 arduino测试通过
- VC全景图拼接算法源码毕业设计+论文
- 超市信息管理系统课程设计.docx
- zlib动态链接库x86&64;
- vc做的小游戏 —— 彩色泡泡
- linux+QT下基于RTP协议的实时视频传输客
- cmake-3.17.2-win64-x64.zip
- C用Easyx图形库编写贪吃蛇.zip
- 图像细化算法
- 北斗模块GPS定位显示
- 西电-面向对象课件褚华老师所著
- gsl-2.6.7z
- 《编译原理第二版》完整版
- vim配置成强大的IDE
- K66_逐飞.zip
- mingw-w64压缩包
- ImageFusion.zip
- STM32Cube_fw_F4_V1.24.1 CubeMX的F4系列的封装
- 未来教育考试系统.zip
- 西安科技大学 程序设计大赛总决赛原
- 矩阵乘法及两种求逆方法
- 华南农业大学数据结构上机题目答案
- Proteus8.9 仿真STM32407ZGT6系列基础模板
- 经典的背包问题九讲,必看
- 最新的libssh2库源码
- 信息学奥赛一本通课后练习答案汇总
- 操作系统实验生产者与消费者实验报
评论
共有 条评论