Перестановка данных в обратном порядке
Создайте вектор столбца и получите его инвертированную версию. Проверьте явное отображение двоичного представления.
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 вычисления.
Обратный заказ бит может повысить эффективность выполнения для внешних приложений или для моделей blockset Simulink ®. Оба MATLABfft и ifft функции обработки линейного ввода и вывода.
Примечание
Используя bitrevorder эквивалентно использованию digitrevorder с основанием radix 2.
В этой таблице представлены номера от 0 до 7, соответствующие биты и номера, обращенные к биту.
Линейный индекс | Биты | Бит-реверс | Индекс, реверсированный битами |
|---|---|---|---|
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 |
Эта функция полностью поддерживает массивы графических процессоров. Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
digitrevorder | fft | ifft
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.