ssGetDataTypeIsScalingPow2

Определите, имеет ли зарегистрированный тип данных масштабирование степени двойки

Синтаксис

extern int ssGetDataTypeIsScalingPow2 (SimStruct *S, DTypeId
                                       dataTypeId)

Аргументы

S

SimStruct, представляющий блок s-function.

dataTypeId

Идентификатор типа данных зарегистрированного типа данных, для которого необходимо знать, является ли масштабирование строгой степенью двойки.

Описание

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

real-world value = (slope  × <reservedrangesplaceholder1>  ) + bias,

где наклон может быть выражен как

slope = <reservedrangesplaceholder0> × 2  exponent.

Когда bias = 0 и fractional slope = 1 , единственный масштабный коэффициент, который остается, является степенью двойки:

real-world value = (2exponent × integer) = (2-fraction length × integer).

Тривиальное масштабирование рассматривается как случай масштабирования степени двойки, при этом экспонента равна нулю.

Примечание

Многие алгоритмы с фиксированной точкой разработаны, чтобы принять только масштабирование степени двойки. Для этих алгоритмов можно вызвать ssGetDataTypeIsScalingPow2 в mdlSetInputPortDataType и mdlSetOutputPortDataType, чтобы предотвратить принятие неподдерживаемых типов данных.

Эта функция ошибается, когда ssGetDataTypeIsFxpFltApiCompat возвращает FALSE.

Требование

Чтобы использовать эту функцию, вы должны включить fixedpoint.h и fixedpoint.c. Для получения дополнительной информации смотрите Структура S-функции.

Языки

C

Функции TLC

FixPt_DataTypeIsScalingPow2

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте