Транспозиция данных в обратный по битам порядок
Создайте вектор-столбец и получите его битовую версию. Проверьте путем явного отображения двоичного представления.
x = (0:15)'; v = bitrevorder(x); x_bin = dec2bin(x); v_bin = dec2bin(v); T = table(x,x_bin,v,v_bin)
T=16×4 table
x x_bin v v_bin
__ _____ __ _____
0 0000 0 0000
1 0001 8 1000
2 0010 4 0100
3 0011 12 1100
4 0100 2 0010
5 0101 10 1010
6 0110 6 0110
7 0111 14 1110
8 1000 1 0001
9 1001 9 1001
10 1010 5 0101
11 1011 13 1101
12 1100 3 0011
13 1101 11 1011
14 1110 7 0111
15 1111 15 1111
x
- Входные данныеВходные данные, заданные как вектор или матрица. Длина или количество строк x
должно быть целочисленной степенью 2. Если x
является матрицей, обращение битов происходит на первой размерности x
с размером больше 1.
Типы данных: single
| double
Поддержка комплексного числа: Да
y
- Данные с обращенным битомРеверсированные по битам данные, возвращенные как вектор или матрица. y
- тот же размер, что и x
.
i
- Обратные по битам индексыРеверсированные по битам индексы, возвращенные как вектор или матрица, такие что y = x(i)
. MATLAB® матрицы используют индексацию на основе 1, поэтому первый индекс y
равен 1, а не 0.
bitrevorder
полезно для предварительной настройки коэффициентов фильтра, так что обратное по битам упорядоченное расположение не должно выполняться как часть fft
или ifft
расчет.
Реверсированное по битам упорядоченное расположение может улучшить эффективность выполнения для внешних приложений или для Simulink® модели blockset. Оба MATLAB fft
и ifft
функции обрабатывают линейный вход и выход.
Примечание
Использование bitrevorder
эквивалентно использованию digitrevorder
с основанием радиуса 2.
В этой таблице показаны числа от 0 до 7, соответствующие биты и реверсированные по битам числа.
Линейный индекс | Биты | Bit-Reversed | Обращенный к битам индекс |
---|---|---|---|
0 | 000 | 000 | 0 |
1 | 001 | 100 | 4 |
2 | 010 | 010 | 2 |
3 | 011 | 110 | 6 |
4 | 100 | 001 | 1 |
5 | 101 | 101 | 5 |
6 | 110 | 011 | 3 |
7 | 111 | 111 | 7 |
Эта функция полностью поддерживает массивы GPU. Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
digitrevorder
| fft
| ifft
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.