MATLAB における固定小数点データの作成
以下の例では、Fixed-Point Designer™ fi オブジェクトを使用して固定小数点データを作成する方法を説明します。
例1 既定のプロパティによる固定小数点数の作成
数値に対して fi を呼び出すと、既定の符号属性、語長、小数部の長さをもつ固定小数点数が生成されます。
fi(pi)
ans =
3.1416
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13例2 指定された符号属性、語長および小数部の長さをもつ固定小数点数の作成
符号属性 (1 は符号付き、0 は符号なし)、語長、小数部の長さを指定できます。
fi(pi,1,15,12)
ans =
3.1416
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 15
FractionLength: 12例3 固定小数点整数値の作成
固定小数点整数値を作成するには、小数部の長さを 0 に指定します。
fi(1:25,0,8,0)
ans =
Columns 1 through 13
1 2 3 4 5 6 7 8 9 10 11 12 13
Columns 14 through 25
14 15 16 17 18 19 20 21 22 23 24 25
DataTypeMode: Fixed-point: binary point scaling
Signedness: Unsigned
WordLength: 8
FractionLength: 0例4 ランダムな固定小数点値の配列の作成
fi(rand(4),0,12,8)
ans =
0.1484 0.8125 0.1953 0.3516
0.2578 0.2422 0.2500 0.8320
0.8398 0.9297 0.6172 0.5859
0.2539 0.3516 0.4727 0.5508
DataTypeMode: Fixed-point: binary point scaling
Signedness: Unsigned
WordLength: 12
FractionLength: 8例5 ゼロの配列の作成
コードを記述するときに、変数の各データ型をテストしなければならないことがあります。変数のデータ型をアルゴリズムから分離すると、テストが大幅に簡素化されます。データ型の定義表を作成しておくと、浮動小数点データ型と固定小数点データ型の間で関数をプログラム的に切り替えることができます。次の例では、この手法を使用して要素がゼロの配列を作成する方法を示します。
T.z = fi([],1,16,0);
z = zeros(2,3,'like',T.z)z =
0 0 0
0 0 0
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 0メモ
この手法の実装を示す完全な例については、cast と zeros を使用した浮動小数点型および固定小数点型の FIR フィルター アルゴリズムの実装を参照してください。
