Преобразование числа в ближайшее значение, представляемое указанным типом данных с фиксированной точкой
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
полностью устраняет ошибку квантования.