Определите, является ли масштабирование зарегистрированного типа данных наклоном = 1, смещение = 0
extern int ssGetDataTypeIsScalingTrivial (SimStruct *S, DTypeId dataTypeId)
S
SimStruct, представляющий Блок s-function.
dataTypeId
ID типа данных зарегистрированного типа данных, для которого вы хотите знать, тривиально ли масштабирование.
Эта функция определяет, тривиально ли масштабирование зарегистрированного типа данных. В [Наклонное Смещение] представление, числа фиксированной точки могут быть представлены как
real-world value = (slope × integer) + bias.
В тривиальном случае, slope = 1 и bias = 0.
С точки зрения единственного двоичной точкой масштабирования двоичная точка справа от младшего значащего бита для тривиального масштабирования, означая, что дробная длина является нулем:
real-world value = integer × 2–fraction length = integer × 20.
В любом случае тривиальное масштабирование означает, что реальное значение просто равно сохраненному целочисленному значению:
real-world value = integer.
Масштабирование всегда тривиально для чистых целых чисел, таково как int8
, и также для истинных типов с плавающей точкой single
и double
.
Этот функциональные ошибки, когда ssGetDataTypeIsFxpFltApiCompat
возвращает FALSE
.
Чтобы использовать эту функцию, необходимо включать fixedpoint.h
и fixedpoint.c
. Для получения дополнительной информации смотрите Структуру S-функции.
C
FixPt_DataTypeIsScalingTrivial