请帮看看这段程序是什么原理,实现什么功能,很短
//原始数据350个存放在数据组AD_CompressionBuffer【】 中
//新的数据存放在数据组AD_Filte_Buffer【】中
//AD_COMPRESS_NUM=340
//number =8或者7或者6
void Sub_calculation_Coording_3DEA(unsigned char number)
{
unsigned char number_value;
unsigned char temp,temp1,temp2;
unsigned char cha_num;
unsigned char shan_value;
int sum_value=0;
int i,j,k;
number_value = pow(2, number);
for(i=0; i<number_value; i++)
{
sum_value = sum_value + AD_CompressionBuffer[i];
}
k= number_value/2;
cha_num = AD_COMPRESS_NUM-number_value;
temp1 = number_value;
j=0;
for(i=0;i<cha_num;i++)
{
shan_value = sum_value / number_value;
AD_Filte_Buffer[k] = shan_value;
k++;
sum_value = sum_value - AD_CompressionBuffer[j] + AD_CompressionBuffer[number_value + j];
j++;
}
k = k -1;
temp1=number_value/2;
for(int m = 0; m<temp1; m++)
{
AD_Filte_Buffer[(AD_COMPRESS_NUM-temp1)+ m] = AD_Filte_Buffer[k];
}
}