Преобразуйте биты в целые числа
Задайте вектор-столбец битов.
X = [1 0 1 0 1 0 1 0]';
Задайте для четырех постолбцовых битных элементов входного вектора, который будет преобразован в целочисленные значения. Затем преобразуйте биты в целые числа.
n = 4; Y = bit2int(X,n)
Y = 2×1
10
10
Задайте матрицу битов.
X = int8([1 1 0; 0 1 1]')
X = 3x2 int8 matrix
1 0
1 1
0 1
Укажите, что первый бит в каждом наборе трех постолбцовых битных элементов является LSB. Затем преобразуйте биты в целые числа.
n = 3; msbfirst = false; Y = bit2int(X,n,msbfirst)
Y = 1x2 int8 row vector
3 6
Задайте массив битов.
X = randi([0,1],8,2,2,'uint8')
X = 8x2x2 uint8 array
X(:,:,1) =
1 1
1 1
0 0
1 1
1 1
0 0
0 1
1 0
X(:,:,2) =
0 1
1 1
1 1
1 0
1 1
0 0
1 1
1 0
Укажите, что первый бит в каждом наборе четырех постолбцовых битных элементов является MSB. Затем преобразуйте биты в целые числа.
n = 4; msbfirst = true; Y = bit2int(X,n,msbfirst)
Y = 2x2x2 uint8 array
Y(:,:,1) =
13 13
9 10
Y(:,:,2) =
7 14
11 10
X
— БитыБиты в виде вектор-столбца, матрицы или трехмерного массива числового или логического 0
s и 1
s.
Пример: [1 0 1 0 1 0 1 0]'
задает входной вектор-столбец размера 8 1.
Примечание
Количество строк в X
должен быть кратным входу n
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
n
— Количество битов, которые будут преобразованыКоличество битов, которые будут преобразованы в целые числа в виде положительного целого числа.
Типы данных: double
msbfirst
— Спецификация MSB сначалаtrue
или 1
| false
или 0
Y
— Целочисленное представление входных битовЦелочисленное представление входных битов, возвращенных как скаляр, вектор-столбец, матрица или трехмерный массив. Функция возвращает целочисленную эквивалентную стоимость для каждого набора n
постолбцовые биты в X
. Выведите Y
имеет те же размерности как вход X
за исключением того, что количество строк в Y
n
времена меньше, чем количество строк в X
.
Тип данных Y
зависит от типа данных X
.
Если X
имеет тип данных double
или logical
, затем Y
имеет тип данных double
.
Если X
имеет тип данных single
, затем Y
имеет тип данных single
.
Если X
целочисленный тип данных и значение Y
может содержаться в том же целочисленном типе данных, затем Y
имеет совпадающий тип данных и со знаком как X
. Если значение Y
не может содержаться в том же целочисленном типе данных как X
, затем функция устанавливает тип данных Y
к целочисленному типу данных, который является достаточно большим, чтобы содержать его значение.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.