📄 main.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 + -