Транспозиция входа в обратный порядок чисел
y = digitrevorder(x,r)
[y,i] = digitrevorder(x,r)
digitrevorder
полезен для предварительного упорядочивания вектора коэффициентов фильтра для использования в алгоритмах фильтрации частотного диапазона, в которых fft
и ifft
вычисляют преобразования без обратной цифры упорядоченного расположения для повышения эффективности во время выполнения.
y = digitrevorder(x,r)
возвращает входные данные в обратный порядок чисел в векторе или матрице y
. Сторнирование цифр вычисляется с помощью основы системы чисел (radix основы) r
, которое может быть любым целым числом от 2 до 36. Длина x
должно быть целочисленной степенью r
. Если x
является матрицей, сторнирование цифр происходит на первой размерности x
с размером больше 1. y
- тот же размер, что и x
.
[y,i] = digitrevorder(x,r)
возвращает преобразуемый цифрой вектор или матрицу y
и индексы, обращенные цифрами i
, таким образом y = x(i)
. Напомним, что MATLAB® матрицы используют индексацию на основе 1, поэтому первый индекс y
будет равен 1, а не 0.
В следующей таблице показаны цифры от 0 до 15, соответствующие цифры и цифры, реверсированные цифрами, с помощью базы radix-4. Также показаны соответствующие биты базы-2 и индексы, обращенные к битам.
Линейный индекс | Base-4 цифры | Цифровая прерывистая | Цифровой - обратный индекс | Base-2 биты | Base-2 Назад (bitrevorder) | Бит- сторнированный индекс |
---|---|---|---|---|---|---|
0 | 00 | 00 | 0 | 0000 | 0000 | 0 |
1 | 01 | 10 | 4 | 0001 | 1000 | 8 |
2 | 02 | 20 | 8 | 0010 | 0100 | 4 |
3 | 03 | 30 | 12 | 0011 | 1100 | 12 |
4 | 10 | 01 | 1 | 0100 | 0010 | 2 |
5 | 11 | 11 | 5 | 0101 | 1010 | 10 |
6 | 12 | 21 | 9 | 0110 | 0110 | 6 |
7 | 13 | 31 | 13 | 0111 | 1110 | 14 |
8 | 20 | 02 | 2 | 1000 | 0001 | 1 |
9 | 21 | 12 | 6 | 1001 | 1001 | 9 |
10 | 22 | 22 | 10 | 1010 | 0101 | 5 |
11 | 23 | 32 | 14 | 1011 | 1101 | 13 |
12 | 30 | 03 | 3 | 1100 | 0011 | 3 |
13 | 31 | 13 | 7 | 1101 | 1011 | 11 |
14 | 32 | 23 | 11 | 1110 | 0111 | 7 |
15 | 33 | 33 | 15 | 1111 | 1111 | 15 |
bitrevorder
| fft
| ifft