bitrev.c

来自「FFT实现的标准C源码」· C语言 代码 · 共 18 行

C
18
字号
/* bitrev.c - bit reverse of a B-bit integer n */#define two(x)       (1 << (x))                  /* \(2\sp{x}\) by left-shifting */int bitrev(n, B)int n, B;{       int m, r;       for (r=0, m=B-1; m>=0; m--)          if ((n >> m) == 1) {                   /* if \(2\sp{m}\) term is present, then */             r += two(B-1-m);                    /* add \(2\sp{B-1-m}\) to \(r\), and */             n -= two(m);                        /* subtract \(2\sp{m}\) from \(n\) */             }       return(r);}

⌨️ 快捷键说明

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