资源简介
可实现BCH编码,采用C语言实现,简单易懂。
代码片段和文件信息
#include
#include
#include
#include
using namespace std;
#define n 15 //码长
#define k 5 //信息位长度
#define t 7 //纠错个数
double r=1.0*k/n; //码率
int g[]={11101100101}; //生成多项式
#include“encode.h“ //编码函数,包括BPSK调制及AWGN信道
#include“decode.h“ //BCH解码函数
void main()
{
int Num=20000;
int u[k]={0};
int encode[n];
double awgn_data[n]bpsk_m[n];
int bpsk_de[n];
double EbN0[10]={12345678910}; //设置信噪比
double N0sigma;
double err_rate[10]={0};
int error;
srand((unsigned)time(NULL));
for (int i=0;i<10;i++)
{
N0=pow(10-1*EbN0[i]/10)/r; //信道高斯白噪声功率
sigma=sqrt(N0/2); //噪声均方差
error=0; //初始化差错个数
for (int run=0;run {
for (int m=0;m u[m]=rand()%2; //产生随机数
//cout< bch_encode(uencode); //调用BCH编码函数
//cout< bpsk_mod(encodebpsk_m); //调用BPSK调制函数
//cout< awgn(bpsk_mawgn_datasigma); //调用AWGN信道
bpsk_demod(awgn_databpsk_de); //调用BPSK解调函数
//cout< decode(bpsk_de); //调用BCH译码函数
//cout<
for (int j=0;j if (encode[j]!=bpsk_de[j])
error++;
}
err_rate[i]=1.0*error/Num/n;
}
ofstream out(“ber_bch.txt“); //将误码率存放在“ber_bch.txt”文件中并输出
for (i=0;i<10;i++)
{
cout<<“BER=“< out< }
out.close();
system(“pause“);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5787648 2012-05-23 09:05 BCH_C\BCH.sdf
文件 877 2012-05-22 08:42 BCH_C\BCH.sln
..A..H. 15872 2012-05-23 09:05 BCH_C\BCH.suo
文件 4013 2012-05-22 11:05 BCH_C\BCH.vcxproj
文件 1142 2012-05-22 11:05 BCH_C\BCH.vcxproj.filters
文件 143 2012-05-22 08:42 BCH_C\BCH.vcxproj.user
文件 102 2012-06-06 19:45 BCH_C\ber.txt
文件 103 2012-06-06 19:45 BCH_C\ber_bch.txt
文件 89088 2012-05-23 09:03 BCH_C\Debug\BCH.exe
文件 406 2012-05-22 18:36 BCH_C\Debug\BCH.exe.em
文件 472 2012-05-22 18:51 BCH_C\Debug\BCH.exe.em
文件 381 2012-05-23 09:03 BCH_C\Debug\BCH.exe.intermediate.manifest
文件 862704 2012-05-23 09:03 BCH_C\Debug\BCH.ilk
文件 53 2012-05-23 09:03 BCH_C\Debug\BCH.lastbuildstate
文件 2109 2012-05-23 09:03 BCH_C\Debug\BCH.log
文件 1100800 2012-05-23 09:03 BCH_C\Debug\BCH.pdb
文件 196 2012-05-22 18:36 BCH_C\Debug\BCH_manifest.rc
文件 1142 2012-05-23 09:03 BCH_C\Debug\cl.command.1.tlog
文件 18648 2012-05-23 09:03 BCH_C\Debug\CL.read.1.tlog
文件 436 2012-05-23 09:03 BCH_C\Debug\CL.write.1.tlog
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
文件 2 2012-05-23 09:03 BCH_C\Debug\li
............此处省略58个文件信息
- 上一篇:学生成绩管理系统~ado mfc vc6.0
- 下一篇:C++课程设计报告及源代码
评论
共有 条评论