Создайте Simulink.NumericType
объект, описывающий, подписал дробный тип данных
a = sfrac(WordLength
) a = sfrac(WordLength
,GuardBits
)
sfrac(
возвращает WordLength
)Simulink.NumericType
объект, который описывает тип данных дробного типа данных со знаком с размером слова, данным
. WordLength
sfrac(
возвращает WordLength
, GuardBits
)Simulink.NumericType
объект, который описывает тип данных дробного номера со знаком. Общий размер слова дан
с WordLength
биты расположены слева от двоичной точки.GuardBits
Старший значащий (крайний левый) бит является знаковым битом. Двоичная точка по умолчанию для этого типа данных принята, чтобы сразу лечь справа от знакового бита. Если "сторожевые" разряды заданы, они лгут левым двоичной точки и направо от знакового бита. Например, структура для 8-битного дробного типа данных со знаком с 4 "сторожевыми" разрядами:
Примечание
sfrac
устаревшая функция. В новом коде используйте fixdt
вместо этого. В существующем коде замените sfrac(WordLength,GuardBits)
с fixdt(1,WordLength,(WordLength-1-GuardBits))
и sfrac(WordLength)
с fixdt(1,WordLength,(WordLength-1))
.
Задайте 8-битный дробный тип данных со знаком с 4 "сторожевыми" разрядами. Обратите внимание на то, что область значений этого типа данных-24 =-16 к (1 - 2(1 - 8)).24 = 15.875.
a = sfrac(8,4)
a = NumericType with properties: DataTypeMode: 'Fixed-point: binary point scaling' Signedness: 'Signed' WordLength: 8 FractionLength: 3 IsAlias: 0 DataScope: 'Auto' HeaderFile: '' Description: ''