📄 rsenmain.c
字号:
/***************************************************************************
* File: RSEnmain.c
* Title: Encoder for RS codes main progrom in C
* Authors: lzg
* Date: 2003.5
* Fuction: RSEnmain()
* Paras:
*
* Indata-输入,未编码的数据。
* Outdata-输出,编码之后的数据。
*
* Return: 无。
*
* Note: 可在Gen_GF.c中设定参数。
*****************************************************************************/
#include "main.h"
#include <stdio.h>
#include <stdlib.h>
//#include "RS_En.c"
#ifndef Gen_GF
#define Gen_GF
//#include "Gen_GF.c"
#endif
#define nn_short 31 /*nn - nn_short = kk - kk_short*/
#define kk_short 19 /*必须保证nn_short - kk_short = 2 * tt*/
void RSEnmain(const unsigned char *Indata,unsigned char *Outdata)
{
int i;
int check_bit[nn-kk],data[kk];
for (i = 0;i < kk_short;i++) data[i] = (int) Indata[18 - i];
for (i = kk_short;i< kk;i++) data[i]= 0;
encode_rs(data,check_bit);
for(i = 0;i < kk_short;i++)
{
Outdata[i] = (unsigned char) data[i];
}
for (i = 0;i< nn - kk;i++)
{
Outdata[i + kk_short]= (unsigned char) check_bit[nn - kk - i - 1];
}
return;
}
/******************************test*****************************************
void main()
{
int i;
unsigned char Indata[19],Outdata[31];
for(i=0;i<19;i++) Indata[i]=i+19;
RSEnmain(Indata,Outdata);
for(i=0;i<31;i++) printf("%02x ",Outdata[i]);
}
*****************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -