ibit_reversal_ccs.c

来自「用dsp解压mp3程序的算法」· C语言 代码 · 共 34 行

C
34
字号
/********************************************************************
* ibit_reversal_ccs.c - Arrange input samples in bit-reverse order
*                       the index j is the bit reverse of i     
*  
********************************************************************/

#include "def_complex_fixpt.h"    /* integer complex.h header file */

void ibit_reversal_ccs(complex *X, unsigned int EXP)
{
  unsigned int i,j,k;
  unsigned int N=1<<EXP;         /* Number of points for FFT       */
  unsigned int N2=N>>1;
  complex temp;       /* temporary storage of int complex variable */	
	
  for (j=0,i=1;i<N-1;i++)
  {
    k=N2;
    while(k<=j)
    {
      j-=k;
      k>>=1;
    }
    j+=k;

    if (i<j)
    {
      temp = X[j];
      X[j] = X[i];
      X[i] = temp;
    }
  }  
}

⌨️ 快捷键说明

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