В программном обеспечении Fixed-Point Designer™ fipref объект определяет графические свойства fi объекты. Примеры кода обычно показывают fi объекты, как они появляются со следующими fipref свойства объекта:
NumberDisplay — 'RealWorldValue'
NumericTypeDisplay — 'full'
FimathDisplay — 'full'
Настройка 'FimathDisplay' кому 'full' обеспечивает быстрый и простой способ различения fi объекты с локальным fimath и объекты, связанные с fimath по умолчанию. Когда 'FimathDisplay' имеет значение 'full', дисплеи MATLAB ®fimath свойства объекта для fi объекты с локальным fimath. MATLAB никогда не отображается fimath свойства объекта для fi объекты, связанные с fimath по умолчанию. Из-за этой разницы отображения можно определить, когда fi объект связывается с fimath по умолчанию только путем просмотра выходных данных.
Кроме того, если не указано иное, в примерах документации Fixed-Point Designer используется следующая конфигурация fimath по умолчанию:
RoundingMethod: Nearest
OverflowAction: Saturate
ProductMode: FullPrecision
SumMode: FullPrecision
Дополнительные сведения о параметрах отображения см. в разделе Установка настроек отображения объектов fi с помощью fipref.
Для просмотра выходных данных в соответствии с большинством примеров кода Fixed-Point Designer установите fipref свойства следующим образом и создать два fi объекты:
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','full','FimathDisplay','full'); a = fi(pi,'RoundingMethod','Floor','OverflowAction','Wrap') b = fi(pi)
MATLAB возвращает следующее:
a =
3.1415
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13
RoundingMethod: Floor
OverflowAction: Wrap
ProductMode: FullPrecision
SumMode: FullPrecision
b =
3.1416
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13Дисплеи MATLAB fimath свойства объекта в выходных данных fi объект a потому что a имеет локальный fimath.
MATLAB не отображает fimath свойства объекта в выходных данных fi объект b потому что b ассоциируется с fimath по умолчанию.
При работе с несколькими fi объекты, имеющие локальные fimathes, можно отключить fimath отображение объекта:
NumberDisplay — 'RealWorldValue'
NumericTypeDisplay — 'full'
FimathDisplay — 'none'
Например,
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','full','FimathDisplay','none')
p =
NumberDisplay: 'RealWorldValue'
NumericTypeDisplay: 'full'
FimathDisplay: 'none'
LoggingMode: 'Off'
DataTypeOverride: 'ForceOff'F = fimath('RoundingMethod','Floor','OverflowAction','Wrap'); a = fi(pi, F)
a =
3.1415
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13Хотя эта настройка помогает уменьшить количество производимых выходных данных, она также не позволяет определить из выходных данных, fi объект использует fimath по умолчанию. Для этого можно использовать isfimathlocal функция. Например,
isfimathlocal(a)
ans = logical 1
Когда isfimathlocal функция возвращает 1, fi объект имеет локальный fimath. Если функция возвращает 0, fi объект использует fimath по умолчанию.
Чтобы еще больше уменьшить объем вывода, можно установить NumericTypeDisplay кому 'short'. Например,
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','short','FimathDisplay','full'); a = fi(pi)
a =
3.1416
numerictype(1,16,13)