最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

reinterpretcast

元データを変更せずに固定小数点のデータ型を変換

構文

c = reinterpretcast(a, T)

説明

c = reinterpretcast(a, T) は元データを変更せずに、numerictype オブジェクト T で指定されたデータ型に入力 a を変換します。結果は fi オブジェクト c で返されます。

入力 a は組み込み整数または固定小数点データ型の fi オブジェクトでなければなりません。T は完全に指定された固定小数点データ型の numerictype オブジェクトでなければなりません。入力 aT の語長は、同じでなければなりません。

関数 reinterpretcast は、fi オブジェクトと組み込み整数だけを演算の対象にし、入力の語長を変えないという点において、MATLAB® の関数 typecastcast とは異なります。

次の例で、a は符号付き fi オブジェクトで、語長は 8 ビット、小数部の長さは 7 ビットです。関数 reinterpretcast は、a を語長 8 ビット、小数部の長さ 0 ビットの符号なし fi オブジェクト c に変換します。ac の実際値は異なりますが、その 2 進数表現は同じです。

 a = fi([-1 pi/4], 1, 8, 7)
 T = numerictype(0, 8, 0);
 c = reinterpretcast(a, T)
a =
 
   -1.0000    0.7891

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 8
        FractionLength: 7
 
c =
 
   128   101

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 8
        FractionLength: 0

元データが変更されていないことを確認するため、ac の 2 進数表現を比較します。

binary_a = bin(a)
binary_c = bin(c)
binary_a =

10000000   01100101


binary_c =

10000000   01100101

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

R2008b で導入