bin2num

Преобразуйте двоичную строку двух комплементов в число с помощью quantizer объект

Синтаксис

Описание

пример

y = bin2num(q,b) преобразует двоичный вектор символов b в числовой массив y использование свойств quantizer q объекта.

Если b - массив ячеек, содержащий двоичные строки, затем y будет массив ячеек той же размерности, содержащий числовые массивы.

[y1, y2, …] = bin2num (q, b1, b2,...) преобразует двоичные векторы символов b1, b2, … в числовые массивы y1, y2, ….

Примеры

свернуть все

Преобразуйте между двоичным вектором символов и числовым массивом с помощью свойств, заданных в quantizer объект.

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

Создайте quantizer объект, задающий размер слова 4 бита и длину дроби 3 бита. Другие свойства quantizer объект принимает значения по умолчанию для задания знака, типа данных с фиксированной точкой, округления к отрицательной бесконечности и насыщается при переполнении.

q = quantizer([4 3])
q =


        DataMode = fixed
       RoundMode = floor
    OverflowMode = saturate
          Format = [4  3]

Создайте массив числовых значений.

[a,b] = range(q);
x = (b:-eps(q):a)
x = 1×16

    0.8750    0.7500    0.6250    0.5000    0.3750    0.2500    0.1250         0   -0.1250   -0.2500   -0.3750   -0.5000   -0.6250   -0.7500   -0.8750   -1.0000

Преобразуйте числовой вектор x в двоичное представление с использованием свойств, заданных quantizer q объекта. Обратите внимание, что num2bin всегда возвращает двоичные представления в столбце.

b = num2bin(q,x)
b = 16x4 char array
    '0111'
    '0110'
    '0101'
    '0100'
    '0011'
    '0010'
    '0001'
    '0000'
    '1111'
    '1110'
    '1101'
    '1100'
    '1011'
    '1010'
    '1001'
    '1000'

Использование bin2num для выполнения обратной операции.

y = bin2num(q,b)
y = 16×1

    0.8750
    0.7500
    0.6250
    0.5000
    0.3750
    0.2500
    0.1250
         0
   -0.1250
   -0.2500
      ⋮

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

Все 3-битные числа дополнения с фиксированной точкой в дробной форме заданы:

q = quantizer([3 2]);
b = ['011  111'
     '010  110'
     '001  101'
     '000  100'];

Использование bin2num чтобы просмотреть числовые эквиваленты этих значений.

x = bin2num(q,b)
x = 4×2

    0.7500   -0.2500
    0.5000   -0.5000
    0.2500   -0.7500
         0   -1.0000

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

свернуть все

Свойства типа данных для преобразования, заданные как quantizer объект.

Пример: q = quantizer([16 15]);

Двоичная строка для преобразования, заданная как вектор символов, символьный массив или массив ячеек, содержащий двоичные строки.

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

Совет

  • bin2num и num2bin являются обратными друг другу. Обратите внимание, что num2bin всегда возвращает двоичные представления в столбце.

Алгоритмы

  • Двоичное представление с фиксированной точкой является дополнением двух.

  • Двоичное представление с плавающей точкой находится в IEEE® Стандартный стиль 754.

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

См. также

| | | |

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