exponenta event banner

Создание данных с фиксированной точкой в MATLAB

В следующих примерах показано, как создавать данные с фиксированной точкой с помощью Designer™ Fixed-Point fi объект.

Пример 1. Создание номера фиксированной точки со свойствами по умолчанию

Запрос fi для числа создает число с фиксированной точкой со значением по умолчанию signedness и значениями длины слов и дробей по умолчанию.

 fi(pi)
ans =
 
    3.1416

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 13

Пример 2. Создание числа с фиксированной точкой с указанными значением signedness, длиной слова и длиной дроби

Можно указать значение signedness (1 для signed, 0 для unsigned) и длину слова и дроби.

fi(pi,1,15,12)
ans =
 
    3.1416

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 15
        FractionLength: 12

 fi и numerictype Объекты

Пример 3. Создание целочисленных значений с фиксированной точкой

Чтобы создать целочисленные значения с фиксированной точкой, укажите длину дроби, равную 0.

fi(1:25,0,8,0)
ans =
 
  Columns 1 through 13
     1   2   3   4   5   6   7   8   9  10  11  12  13
  Columns 14 through 25
    14  15  16  17  18  19  20  21  22  23  24  25

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 8
        FractionLength: 0

Пример 4. Создание массива случайных значений с фиксированной точкой

fi(rand(4),0,12,8)
ans =
 
    0.1484    0.8125    0.1953    0.3516
    0.2578    0.2422    0.2500    0.8320
    0.8398    0.9297    0.6172    0.5859
    0.2539    0.3516    0.4727    0.5508

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 12
        FractionLength: 8

Пример 5. Создание массива нулей

При написании кода иногда требуется проверить различные типы данных для переменных. Разделение типов данных переменных и алгоритма значительно упрощает тестирование. Создание таблицы определений типов данных позволяет программно переключать функции между типами данных с плавающей и фиксированной точками. В следующем примере показано, как использовать этот метод и создать массив нулей.

 T.z = fi([],1,16,0);

z = zeros(2,3,'like',T.z)
z = 

     0     0     0
     0     0     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 0