ssGetDataTypeIsScalingPow2

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

Синтаксис

extern int ssGetDataTypeIsScalingPow2 (SimStruct *S, DTypeId
                                       dataTypeId)

Аргументы

S

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

dataTypeId

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

Описание

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

real-world value = (slope × integer) + bias,

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

slope = fractional slope × 2exponent.

Когда 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

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

ssGetDataTypeIsScalingTrivial

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