Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

numerictype オブジェクトの作成

numerictype オブジェクトの構文

numerictypefi オブジェクトのデータ型とスケーリングの属性と、Simulink® の信号パラメーターとモデル パラメーターを定義します。Fixed-Point Designer™ ソフトウェアで numerictype オブジェクトを作成するには次の 2 つの方法があります。

  • コンストラクター関数 numerictype を使用して新しいオブジェクトを作成します。

  • コンストラクター関数 numerictype を使用して既存の numerictype オブジェクトをコピーします。

既定の numerictype オブジェクトを作成するには、以下を入力します。

T = numerictype
T =
 

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 15

numerictype オブジェクトの構文をすべて確認するには、コンストラクター関数 numerictype のリファレンス ページを参照してください。

以下の例で numerictype オブジェクトを作成するさまざまな方法を示します。numerictype オブジェクトを作成するその他の例は、コンストラクター関数 numerictype のリファレンス ページのを参照してください。

例: プロパティ名とプロパティ値のペアによる numerictype オブジェクトの作成

プロパティ名とプロパティ値のペアを使用して numerictype オブジェクトを作成する場合、Fixed-Point Designer ソフトウェアは最初に既定の numerictype オブジェクトを作成し、次に、コンストラクターで指定する各プロパティ名に対して対応する値を割り当てます。

この動作は、コンストラクターでプロパティ値だけを指定する T = numerictype(s,w) のような構文を使用した場合の動作とは異なります。このような構文を使用すると、既定の numerictype オブジェクトは作成されず、numerictype オブジェクトにはコンストラクターで指定したプロパティ値だけが割り当てられます。

次の例でプロパティ名/プロパティ値の構文がどのように numerictype オブジェクトを作成するかを示します。この例では、両方のコンストラクターで同じプロパティ値を指定した場合でも、プロパティ値の構文とは少し異なるオブジェクトが作成されます。

この違いを示すために、語長 32 ビットの符号なし numerictype オブジェクトを作成するものとします。

最初に、プロパティ名/プロパティ値のペアを使用して numerictype オブジェクトを作成します。

T1 = numerictype('Signed',0,'WordLength',32)
T1 =
 

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 32
        FractionLength: 15

numerictype オブジェクト T1 は既定の numerictype オブジェクトと同じ DataTypeModeFractionLength をもっていますが、WordLength プロパティと Signed プロパティは指定した値で上書きされます。

次にもう 1 つの符号なし 32 ビットの numerictype オブジェクトを作成しますが、今度はコンストラクターでプロパティ値だけを指定します。

T2 = numerictype(0,32)
T2 =
 

          DataTypeMode: Fixed-point: unspecified scaling
            Signedness: Unsigned
            WordLength: 32

T1 とは違い、T2 は指定したプロパティ値だけをもちます。T2DataTypeModeFixed-Point: unspecified scaling で、小数部の長さは割り当てられていません。

fi オブジェクトは指定されていない numerictype プロパティをもつことはできません。このため、すべての指定されていない numerictype オブジェクト プロパティは fi オブジェクトの作成時に指定されることになります。

例: numerictype オブジェクトのコピー

numerictype オブジェクトをコピーするには、次のように代入を使用します。

T = numerictype;
U = T;
isequal(T,U)
ans =

  logical

   1

例: GUI での numerictype オブジェクト コンストラクターの作成

MATLAB® でファイルを操作するとき、[numerictype コンストラクターの挿入] ダイアログ ボックスを使用して numerictype オブジェクト コンストラクターを作成できます。このダイアログ ボックスで numerictype オブジェクトのプロパティを指定した後、事前入力されている numerictype オブジェクト コンストラクターをファイルの特定の場所に挿入できます。

たとえば、2 進小数点スケーリング、語長が 32 ビット、小数部の長さが 30 ビットの符号付き numerictype オブジェクトを作成します。

  1. [ホーム] タブの [ファイル] セクションで、[新規][スクリプト] をクリックして MATLAB エディターを開きます。

  2. [エディター] タブのツールストリップの [編集] セクションで、[挿入] ボタン グループの をクリックします。[数値型を挿入] をクリックして [numerictype コンストラクターの挿入] ダイアログ ボックスを開きます。

  3. エディット ボックスとドロップダウン メニューを使用して、numerictype オブジェクトの以下のプロパティを指定します。

    • データ型モード: Fixed-point: binary point scaling

    • 符号属性: 符号付き

    • 語長: 32

    • 小数部の長さ: 30

  4. ファイルに numerictype オブジェクト コンストラクターを挿入するには、ファイルの目的の場所にカーソルを置いて、[numerictype コンストラクターの挿入] ダイアログ ボックスで [OK] をクリックします。[OK] をクリックすると [numerictype コンストラクターの挿入] ダイアログ ボックスが閉じて、次のようにファイルに numerictype オブジェクト コンストラクターが自動的に入力されます。

    numerictype(1, 32, 30)