Main Content

numerictype オブジェクト プロパティ

データ型プロパティとスケーリング プロパティ

numerictype オブジェクトのプロパティはすべて書き込み可能です。ただし、fi オブジェクトが作成された後は、fi オブジェクトの numerictype プロパティは読み取り専用になります。fi オブジェクトの作成時点で指定されていない fi オブジェクトの numerictype プロパティは、自動的に既定値に設定されます。numerictype オブジェクトのプロパティには以下のものがあります。

プロパティ説明有効な値
Bias

オブジェクトに関連付らけれているバイアス。

勾配とバイアスで、固定小数点数をスケーリングします。

  • 任意の浮動小数点数

DataType

データ型カテゴリ

  • Fixed (既定の設定) — 固定小数点または整数のデータ型

  • boolean — MATLAB® の組み込み boolean データ型

  • double — MATLAB の組み込み double データ型

  • ScaledDouble — スケーリングされた double データ型

  • single — MATLAB の組み込み single データ型

DataTypeMode

オブジェクトに関連付けられたデータ型およびスケーリング

  • Fixed-point: binary point scaling (既定の設定) — 語長と小数部の長さにより定義される、固定小数点データ型およびスケーリング

  • Boolean — 組み込み boolean

  • Double — 組み込み double

  • Fixed-point: slope and bias scaling — 勾配とバイアスにより定義される、固定小数点データ型およびスケーリング

  • Fixed-point: unspecified scaling — スケーリングが指定されていない固定小数点データ型

  • Scaled double: binary point scaling — 固定小数点語長および小数部の長さの情報が保持される、double データ型

  • Scaled double: slope and bias scaling — 固定小数点勾配およびバイアスの情報が保持される、double データ型

  • Scaled double: unspecified scaling — 固定小数点スケーリングが指定されていない double データ型

  • Single — 組み込み single

FixedExponent

オブジェクトに関連付けられた固定小数点指数

  • 任意の整数

メモ

FixedExponent プロパティは、FractionLength の負の値です。1 つのプロパティを変更すると、他のプロパティも変更されます。

FractionLength

格納整数値の小数部の長さ (ビット単位)

  • オブジェクトの値と語長に基づく、最大精度の小数部の長さ (既定の設定)

  • 任意の整数

メモ

FractionLength プロパティは、FixedExponent の負の値です。1 つのプロパティを変更すると、他のプロパティも変更されます。

Scaling

オブジェクトのスケーリング モード

  • BinaryPoint (既定の設定) — fi オブジェクトのスケーリングは、小数部の長さにより定義されます。

  • SlopeBiasfi オブジェクトのスケーリングは、勾配およびバイアスにより定義されます。

  • Unspecified — 2 進小数点の最適なスケーリングの自動割り当てを許容するために、fi オブジェクト作成時にのみ許容される一時設定。

Signed

オブジェクトが符号付きであるかどうかの指定

メモ

Signed プロパティは引き続きサポートされていますが、numerictype オブジェクトの表示には常に Signedness プロパティが表示されます。Signed プロパティを使用して numerictype オブジェクトの符号属性の変更または設定を選択すると、MATLAB は Signedness プロパティの対応する値を更新します。

  • true (既定の設定) — 符号付き

  • false — 符号なし

  • 1 — 符号付き

  • 0 — 符号なし

  • [] — 自動

Signedness

オブジェクトが符号付き、符号なしまたは符号の指定なしのいずれであるかの指定

  • Signed (既定の設定)

  • Unsigned

  • Auto — 符号の指定なし

Slope

オブジェクトに関連付らけれている勾配

バイアスと勾配で、固定小数点数をスケーリングします。

  • ゼロより大きい任意の有限浮動小数点数

メモ

slope=slope adjustment factor×2fixed exponent

これらのプロパティの 1 つを変更すると、他のプロパティも変更されます。

SlopeAdjustmentFactor

オブジェクトに関連付けられている勾配調整

勾配調整は、固定小数点数の小数部の勾配と同義です。

  • 1 以上 2 未満の任意の数値

メモ

slope=slope adjustment factor×2fixed exponent

これらのプロパティの 1 つを変更すると、他のプロパティも変更されます。

WordLength

格納整数値の語長 (ビット単位)

  • 16 (既定の設定)

  • SignednessUnsigned であるか指定されていない場合は任意の正の整数

  • SignednessSigned に設定されている場合は 1 より大きい任意の整数

これらのプロパティの詳細は、Set fi Object Propertiesを参照してください。Fixed-Point Designer™ ソフトウェアにおける numerictype オブジェクトのプロパティの指定方法の詳細については、numerictype オブジェクトのプロパティの設定を参照してください。

プロパティの関連方法

勾配に影響するプロパティ

numerictype オブジェクトの Slope フィールドと、SlopeAdjustmentFactor プロパティおよび FixedExponent プロパティには、次の関係があります。

slope=slope adjustment factor×2fixed exponent

FixedExponent プロパティと FractionLength プロパティには、次の関係があります。

fixed exponent=fraction length

SlopeAdjustmentFactor プロパティ、FixedExponent プロパティ、または FractionLength プロパティを設定すると、Slope フィールドが変更されます。

格納整数値と実際値

2 進小数点スケーリングでは、numerictypeStoredIntegerValue プロパティと RealWorldValue プロパティには次の関係があります。

real-world value=stored integer value×2-fraction length

[勾配 バイアス] スケーリングでは、RealWorldValue は次のように表すことができます。

real-world value=            stored integer value×(slope adjustment factor×2fixed exponent)+bias

これは、以下と等価です。

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

これらのプロパティのいずれかを更新すると、それに合わせて他のプロパティも変更されます。

numerictype オブジェクトのプロパティの設定

オブジェクト作成時の numerictype プロパティの設定

コンストラクター関数 numerictype の引数の後にプロパティを含めると、オブジェクトの作成時に numerictype オブジェクトのプロパティを設定できます。

たとえば、語長 32 ビット、小数部の長さ 30 ビットを設定するには次のようにします。

T = numerictype('WordLength',32,'FractionLength',30)
T =
 

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 32
        FractionLength: 30

コマンド ラインで numerictype オブジェクトを作成するだけでなく、[numerictype コンストラクターの挿入] ダイアログ ボックスを使用して numerictype プロパティを設定できます。この方法の例は、例: GUI での numerictype オブジェクト コンストラクターの作成を参照してください。

numerictype オブジェクトにおけるプロパティの直接参照の使用

MATLAB 構造体のような参照を使用すると、プロパティを直接参照して numerictype オブジェクト プロパティの値を設定または取得できます。それにはピリオドを使用してプロパティに名前でインデックスを付けます。

たとえば、T の語長を取得するには次のようにします。

T.WordLength
ans =

32

T の小数部の長さを設定するには次のようにします。

T.FractionLength = 31
T =
 

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 32
        FractionLength: 31