exponenta event banner

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

Преобразование восьмеричного числа (base-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