Main Content

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

ceil

正の無限大方向に丸める

説明

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

すべて折りたたむ

次の例では、関数 ceil が、語長 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 = ceil(a) 
y = 
     4

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

次の例では、関数 ceil が、語長 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 = ceil(a)
y = 
     1

          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=8×4 object
   -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');

入力引数

すべて折りたたむ

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

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

ceil は、非自明の勾配とバイアスでスケーリングされた 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 設計のための Verilog および VHDL のコードを生成します。

R2008a で導入