Преобразуйте номер в самое близкое значение, представимое заданным типом данных с фиксированной точкой
outValue = num2fixpt(OrigValue, FixPtDataType, FixPtScaling, RndMeth, DoSatur)
num2fixpt(OrigValue, FixPtDataType, FixPtScaling,
RndMeth, DoSatur)
возвращает результат преобразования OrigValue
к самому близкому значению, представимому типом данных с фиксированной точкой FixPtDataType
. И OrigValue
и outValue
имеют тип данных double
. Как проиллюстрировано в примере, который следует, можно использовать num2fixpt
, чтобы исследовать ошибку квантования, которая может следовать из преобразования номера к типу данных с фиксированной точкой. Аргументы num2fixpt
включают:
| Значение, которое будет преобразовано в представление фиксированной точки. Должен быть задан с помощью типа данных |
| Тип данных с фиксированной точкой раньше преобразовывал |
| Масштабирование вывода или в Наклоне или в [Наклонное Смещение] формат. Если |
| Округление метода, используемого, если тип данных с фиксированной точкой испытывает недостаток в точности, чтобы представлять |
| Указывает, должен ли вывод насыщаться к минимальному или максимальному представимому значению на потерю значимости или переполнение. Если |
Предположим, что вы хотите исследовать эффект квантования, сопоставленный с представлением реального значения 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
устраняет ошибку квантования полностью.