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

📄 main.c

📁 此源码为在DSP上实现的卷积纠错编解码算法
💻 C
字号:



/*input[N1],*in分别为待编码数据数组和指针(N1为待编码数据的字节数)
enc[2*N1+1],*en分别为编码后的数据数组和指针;(由于使用截断译码,所以每编一段码后面要加
            m=2 个0,又由于(2,1,3)码为编码效率为1/2的码,所以编码后的字节数为(2*N1+1)。
            
              
data[N/2],*de,解码后的数据数组和指针,N为解码后的字节数*/
#include "vit.h"
#include "cross.h" 

   void main()
{
 unsigned int enc[2*N1+2],*en;
 unsigned int input[N1],*in;
 unsigned int *cro, cross[8*M] ;
 unsigned int *decro,decross[8*M];
 unsigned int j,i;
   
 unsigned int data[N/2],*de;
 int  test[50]	;
 
  for(i=0;i<N1;i++)
   {
        input[i]=0xff-i;
   }
  in=input;  
  en=enc;
  cro=cross;
  decro=decross;
  de=data;
 
  vit2en(in,en)   ;
  fcross(en,cro);
    
    
  
  fdecross(cro,decro);
 /* printf("\n ENCODE:\n");
  for(j=0;j<=2*N1;j++)
  {
   printf("%5x",*(en+j));
   
   }   
   printf("\n") ;  */
   
 /*加错码*/  
  /* printf("error:\n");  
   *en|=0xc0c0;                                                      
   for(i=0;i<N1;i++)
   {
   // *(en+i)|=0xc080;
    printf("%5x",*(en+i));
   }*/
   
   
  //printf("\nDECODE:\n")  ;      
   vitde(decro,de); 
  
   //  for(i=0;i<N/2;i++)
    //  printf("%2x ",*de++);
/*   	if((fp=fopen("dout.txt","w"))==NULL) 
	  {
	   printf("can't open this file\n");
	   exit(0);
	   }
	fprintf(fp,"deCode is:\n");
	for(i=0;i<(N/2);i++)
	{
	   fprintf(fp,"%02x ",data[i]); 
	}*/
  
 
}
 

⌨️ 快捷键说明

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