Main Content

castFiToInt

fi オブジェクトを等価な整数データ型にキャスト

R2020a 以降

説明

y = castFiToInt(u) は入力 u を可能な場合に等価な MATLAB® 整数データ型にキャストします。

入力 u が整数データ型で正確に表現できる fi オブジェクト型の場合、出力はその整数データ型になります。u が組み込みデータ型で正確に表現できない fi オブジェクトの場合や既に組み込みデータ型である場合、出力は入力と同じになります。

すべて折りたたむ

関数 castFiToInt および cast64BitFiToInt を使用して fi オブジェクトを等価な整数データ型にキャストします。

語長が 16 ビットで小数部の長さがゼロの符号付き fi 変数を作成します。これは int16 データ型と等価です。その変数を関数 castFiToInt を使用して等価な整数データ型にキャストします。

u = fi(25,1,16,0);
y1 = castFiToInt(u)
y1 =

  int16

   25

関数 cast64BitFiToInt は語長が 64 ビットで小数部の長さがゼロの fi オブジェクトのみを等価な整数データ型にキャストします。それ以外の入力データ型はいずれも元のデータ型のままになります。

この例では、入力が 64 ビットの語長の fi でないため、出力は入力と同じになります。

y2 = cast64BitFiToInt(u)
y2 = 

    25

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

語長が 64 ビットで小数部の長さがゼロの fi オブジェクトを関数 cast64BitFiToInt に渡すと、出力は int64 になります。

u = fi(25,1,64,0)
y3 = cast64BitFiToInt(u)
y3 =

  int64

   25

入力が小数部の長さがゼロでない fi オブジェクトの場合、入力を整数データ型で表現できないため、どちらの関数も元の fi オブジェクトを返します。

u = fi(pi,1,64,32);
y4 = cast64BitFiToInt(u)
y4 = 

    3.1416

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 64
        FractionLength: 32
y5 = castFiToInt(u)
y5 = 

    3.1416

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

入力引数

すべて折りたたむ

数値入力配列。スカラー、ベクトル、行列または多次元配列として指定します。

データ型: double | single | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fi
複素数のサポート: あり

出力引数

すべて折りたたむ

数値出力。入力と同じ値および次元をもつスカラー、ベクトル、行列または多次元配列として返されます。

バージョン履歴

R2020a で導入