num2fixpt

Преобразуйте номер в самое близкое значение, представимое заданным типом данных с фиксированной точкой

Синтаксис

outValue = num2fixpt(OrigValue, FixPtDataType, FixPtScaling,
    RndMeth, DoSatur)

Описание

num2fixpt(OrigValue, FixPtDataType, FixPtScaling, RndMeth, DoSatur) возвращает результат преобразования OrigValue к самому близкому значению, представимому типом данных с фиксированной точкой FixPtDataType. И OrigValue и outValue имеют тип данных double. Как проиллюстрировано в примере, который следует, можно использовать num2fixpt, чтобы исследовать ошибку квантования, которая может следовать из преобразования номера к типу данных с фиксированной точкой. Аргументы num2fixpt включают:

OrigValue

Значение, которое будет преобразовано в представление фиксированной точки. Должен быть задан с помощью типа данных double.

FixPtDataType

Тип данных с фиксированной точкой раньше преобразовывал OrigValue.

FixPtScaling

Масштабирование вывода или в Наклоне или в [Наклонное Смещение] формат. Если FixPtDataType не задает обобщенный тип данных с фиксированной точкой с помощью sfix или команды ufix, FixPtScaling проигнорирован.

RndMeth

Округление метода, используемого, если тип данных с фиксированной точкой испытывает недостаток в точности, чтобы представлять OrigValue. Если FixPtDataType задает тип данных с плавающей точкой с помощью команды float, RndMeth проигнорирован. Допустимыми значениями является Zero, Nearest, Ceiling или Floor (значение по умолчанию).

DoSatur

Указывает, должен ли вывод насыщаться к минимальному или максимальному представимому значению на потерю значимости или переполнение. Если FixPtDataType задает тип данных с плавающей точкой с помощью команды float, DoSatur проигнорирован. Допустимыми значениями является on или off (значение по умолчанию).

Примеры

Предположим, что вы хотите исследовать эффект квантования, сопоставленный с представлением реального значения 9.875 как 8-битный номер фиксированной точки со знаком. Команда

num2fixpt(9.875, sfix(8), 2^-1)

ans =

   9.50000000000000

показывает, что наклон 2^-1 приводит к ошибке квантования 0,375. Команда

num2fixpt(9.875, sfix(8), 2^-2)

ans =

   9.75000000000000

демонстрирует, что наклон 2^-2 уменьшает ошибку квантования до 0,125. Но наклон 2^-3, как используется в команде

num2fixpt(9.875, sfix(8), 2^-3)

ans =

   9.87500000000000

устраняет ошибку квантования полностью.

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

|

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