⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 conv_encode.h

📁 软判决功率归一viterbi约束长度9
💻 H
字号:
/*
*             viterbi译码9约束长度软判决 功率归一化
*
************************************************************************************************
* MODULE NAME:  conv_encode.h
*************************************************************************************************
* DESCRIPTION   9约束长度编码
* FUNCTION     conv_encode_m9()                 
*                                                   
*************************************************************************************************
*/

#include<iostream>
#include<math.h>
using namespace std;
unsigned b1[200]; //每个信息位产生的码元第1位
unsigned b2[200]; //每个信息位产生的码元第2位
unsigned l;       //信息位长度
unsigned m;       //归零信息位长度

//9约束长度编码器 
void conv_encode_m9(unsigned *input,int len)//input输入信息 len总长度
{   unsigned reg[9]; //9位寄存器
	int i, j;
    for(i=0;i<9;i++) 
		reg[i]=0;

	for(i=0;i<len;i++)             //9位寄存器右移 0位读入新信息位
    {
	    for( j=8;j>=1;j--) 
		 reg[j]=reg[j-1];
         reg[0]=input[i];  
	     b1[i]=(reg[0]+reg[2]+reg[3]+reg[4]+reg[8])%2;   //根据生成多项式产生码元
	     b2[i]=(reg[0]+reg[1]+reg[2]+reg[3]+reg[5]+reg[7]+reg[8])%2;
	}
/*	cout<<"     编码:";  //输出编码
	for(i=0;i<m+l;i++)
	cout<<b1[i]<<b2[i]<<',';
	cout<<endl;  */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -