bi2de

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

Описание

пример

d = bi2de(b) преобразует вектор строки двоичных знаков b до десятичного целого числа.

пример

d = bi2de(b,flg) преобразует вектор строки двоичных знаков в десятичное целое число, где flg определяет положение старшей значащей цифры.

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

пример

d = bi2de(b,p,flg) преобразует основу-p вектор-строка до десятичного целого числа, где flg определяет положение старшей значащей цифры.

Примеры

свернуть все

Сгенерируйте матрицу, которая содержит бинарные представления пяти случайных чисел между 0 и 15. Преобразуйте двоичные числа в десятичные целые числа.

b = randi([0 1],5,4);
d = bi2de(b)
d = 5×1

     1
     5
    14
    11
    15

В этом примере показано, как преобразовать двоичные числа в десятичные целые числа. Это подсвечивает различие между правом - и лево-старшим значащим расположением цифры.

b1 = [0 1 0 1 1];
b2 = [1 1 1 0];

Преобразуйте эти два двоичных массива в десятичное число при помощи bi2de функция. Присвоение старшая значащая цифра является крайним левым элементом. Выход преобразования b1 соответствует 0(24)+1(23)+0(22)+1(21)+1(20)=11, и b2 соответствует 1(23)+1(22)+1(21)+0(20)=14.

d1 = bi2de(b1,'left-msb')
d1 = 11
d2 = bi2de(b2,'left-msb')
d2 = 14

Присвоение старшая значащая цифра является самым правым элементом. Выход преобразования b1 соответствует 0(20)+1(21)+0(22)+1(23)+1(24)=26, и b2 соответствует 1(20)+1(21)+1(22)+0(23)=7.

d1 = bi2de(b1,'right-msb')
d1 = 26
d2 = bi2de(b2,'right-msb')
d2 = 7

Преобразуйте восьмеричное (базируйтесь 8), номер к его десятичному эквиваленту.

Присвойте старшую значащую цифру крайнему левому положению. Выход соответствует 4(83)+2(82)+7(81)+1(80)=2233.

d = bi2de([4 2 7 1],8,'left-msb')
d = 2233

Присвойте старшую значащую цифру самому правому положению. Выход соответствует 4(80)+2(81)+7(82)+1(83)=980.

d = bi2de([4 2 7 1],8,'right-msb')
d = 980

Входные параметры

свернуть все

Двоичный вход в виде вектора-строки или матрицы положительных целочисленных или логических значений.

Примечание

b должен представлять целое число, меньше чем или равное 252.

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

Флаг MSB в виде 'right-msb' или 'left-msb'.

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

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

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

Основа входа bВ виде целого числа, больше, чем или равный 2.

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

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

свернуть все

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

Если тип входных данных

  • Целочисленный тип данных и значение d может содержаться в том же целочисленном типе данных как вход, тип выходных данных использует совпадающий тип данных в качестве входа. В противном случае тип выходных данных выбран, чтобы быть достаточно большим, чтобы содержать десятичный выход.

  • дважды или логический тип данных, тип выходных данных является двойным.

  • один тип данных, тип выходных данных является одним.

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

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

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