Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

floor

負の無限大方向の丸め

説明

y = floor(a) は、fi オブジェクト a を負の無限大方向の最も近い整数に丸め、結果を fi オブジェクト y に返します。

すべて折りたたむ

次の例では、関数 floor が、語長 8 で小数部の長さ 3 の符号付き fi オブジェクトの numerictype プロパティにどのように影響するかを示します。

a = fi(pi,1,8,3)
a = 
    3.1250

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 8
        FractionLength: 3
y = floor(a)
y = 
     3

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

次の例では、関数 floor が、語長 8 で小数部の長さ 12 の符号付き fi オブジェクトの numerictype プロパティにどのように影響するかを示します。

a = fi(0.025,1,8,12)
a = 
    0.0249

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 8
        FractionLength: 12
y = floor(a)
y = 
     0

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

関数 ceil、関数 fix および関数 floor は、fi オブジェクトを丸める方法が異なります。

  • 関数 ceil は、正の無限領域に対して最も近い整数に値を丸めます。

  • 関数 fix は、ゼロ方向の最も近い整数に値を丸めます。

  • 関数 floor は、負の無限領域方向に最も近い整数に値を丸めます。

次の例は、特定の fi 入力オブジェクト a に対するこれらの違いについて示しています。

a = fi([-2.5,-1.75,-1.25,-0.5,0.5,1.25,1.75,2.5]');
y = [a ceil(a) fix(a) floor(a)]
y = 
   -2.5000   -2.0000   -2.0000   -3.0000
   -1.7500   -1.0000   -1.0000   -2.0000
   -1.2500   -1.0000   -1.0000   -2.0000
   -0.5000         0         0   -1.0000
    0.5000    1.0000         0         0
    1.2500    2.0000    1.0000    1.0000
    1.7500    2.0000    1.0000    1.0000
    2.5000    3.0000    2.0000    2.0000

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 13
plot(a,y); legend('a','ceil(a)','fix(a)','floor(a)','location','NW');

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent a, ceil(a), fix(a), floor(a).

入力引数

すべて折りたたむ

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

複素数 fi オブジェクトに対しては、虚数部と実数部は別々に丸められます。

floor は、非自明の勾配とバイアスでスケーリングされた fi オブジェクトはサポートしません。勾配が 2 の整数乗でバイアスが 0 の場合、勾配とバイアスのスケーリングは自明です。

データ型: fi
複素数のサポート: あり

アルゴリズム

  • ya は、同じ fimath オブジェクトと DataType プロパティをもっています。

  • aDataType プロパティが singledouble または boolean である場合、ynumerictypea のものと同じです。

  • a の小数部の長さがゼロまたは負の場合、a は整数で、ynumerictypea のものと同じになります。

  • a の小数部の長さが正の場合、y の小数部の長さは 0 で、その符号は a の符号と同じになり、その語長は a の語長と小数部の長さの差に 1 ビット加算した長さになります。a が符号付きである場合、y の最小語長は 2 です。a が符号なしである場合、y の最小語長は 1 です。

拡張機能

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

HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための VHDL、Verilog および SystemVerilog のコードを生成します。

バージョン履歴

R2008a で導入