exponenta event banner

de2bi

Преобразование десятичных чисел в двоичные векторы

Описание

пример

b = de2bi(d) преобразует неотрицательное десятичное целое число d к двоичному вектору строки. Если d - вектор, выход b - матрица, в которой каждая строка является двоичной формой соответствующего элемента в d.

b = de2bi(d,n) имеет вывод с n столбцы.

пример

b = de2bi(d,n,p) преобразует неотрицательное десятичное целое число d к базе -p вектор строки.

b = de2bi(d,[],p) задает основание, p .

пример

b = de2bi(d,___,flg) использование flg чтобы определить, является ли первый столбец b содержит цифры самого низкого или самого высокого порядка.

Примеры

свернуть все

Преобразуйте десятичные разряды с 1 по 10 в эквивалентные двоичные представления.

d = (1:10)';
b = de2bi(d);
[d b]
ans = 10×5

     1     1     0     0     0
     2     0     1     0     0
     3     1     1     0     0
     4     0     0     1     0
     5     1     0     1     0
     6     0     1     1     0
     7     1     1     1     0
     8     0     0     0     1
     9     1     0     0     1
    10     0     1     0     1

Преобразуйте 3 и 9 в двоичные числа. Каждое значение представлено четырехэлементной строкой.

b = de2bi([3 9])
b = 2×4

     1     1     0     0
     1     0     0     1

Повторите преобразование с числом столбцов, равным 5. Теперь выходные данные заполняются нулями в пятом столбце.

bb = de2bi([3 9],5)
bb = 2×5

     1     1     0     0     0
     1     0     0     1     0

Преобразуйте десятичные разряды 1- 6 в их базовые-3 эквивалента. Установите крайний левый бит в качестве самой значащей цифры.

d = (1:6)';
t = de2bi(d,[],3,'left-msb');
[d t]
ans = 6×3

     1     0     1
     2     0     2
     3     1     0
     4     1     1
     5     1     2
     6     2     0

В этом примере показано, как преобразовать десятичные числа в двоичные числа в их эквивалентах base-2.

d_array = [1 2 3 4];

Преобразование десятичного массива в двоичный с помощью de2bi функция. Укажите, что самая значащая цифра является самым левым элементом, и установите число требуемых столбцов равным 5. Выходной сигнал становится матрицей 4 на 5, где каждая строка соответствует десятичному значению входного сигнала. Потому что наибольшее десятичное значение в d_array может быть выражено в 3 колонках, de2bi помещает матрицу с двумя дополнительными нулевыми столбцами на указанной стороне старшего разряда. Если указано слишком мало столбцов, преобразование не будет выполнено.

b_array = de2bi(d_array,5,'left-msb')
b_array = 4×5

     0     0     0     0     1
     0     0     0     1     0
     0     0     0     1     1
     0     0     1     0     0

b_array = de2bi(d_array,5,'right-msb')
b_array = 4×5

     1     0     0     0     0
     0     1     0     0     0
     1     1     0     0     0
     0     0     1     0     0

Если количество столбцов не указано, количество столбцов точно соответствует количеству, необходимому для выражения наибольшего числа после запятой.

b_array = de2bi(d_array,'left-msb')
b_array = 4×3

     0     0     1
     0     1     0
     0     1     1
     1     0     0

Выходные строки для указания самого левого значащего бита соответствуют:

1=0(22)+0(21)+1(20)

2=0(22)+1(21)+0(20)

3=0(22)+1(21)+1(20)

4=1(22)+0(21)+0(20)

b_array = de2bi(d_array,'right-msb')
b_array = 4×3

     1     0     0
     0     1     0
     1     1     0
     0     0     1

Выходные строки для указания самого правого значащего бита соответствуют:

1=1(20)+0(21)+0(22)

2=0(20)+1(21)+0(22)

3=1(20)+1(21)+0(22)

4=0(20)+0(21)+1(22)

Входные аргументы

свернуть все

Десятичный ввод, заданный как неотрицательное целое число, вектор или матрица. Если d является матрицей, она обрабатывается как вектор-столбец d(:).

Примечание

Для обеспечения точного преобразования, d должно быть меньше или равно 252.

Типы данных: double | single | integer | fi

Число выходных столбцов, указанных как положительный скаляр. При необходимости двоичное представление d заполняется дополнительными нулями.

Типы данных: double | single

База выходного сигнала b, указано как целое число, большее или равное 2.

  • Если d - вектор, выход b - матрица, в которой каждая строка является базовой -p форма соответствующего элемента в d.

  • Если d является матрицей, de2bi относится к нему как к вектору d(:).

Типы данных: double | single

Флаг MSB, указанный как 'right-msb' или 'left-msb'.

  • 'right-msb' -- Указывает правый (или последний) столбец двоичного выхода, b, как старший бит (или цифра самого высокого порядка).

  • 'left-msb' -- указывает левый (или первый) столбец двоичного выхода, b, как старший бит (или цифра самого высокого порядка).

Типы данных: char | string

Выходные аргументы

свернуть все

Двоичное представление d, возвращается в виде вектора строки или матрицы. Выходные данные имеют тот же тип данных, что и входные данные.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

См. также

Представлен до R2006a