指数を計算します。
サポートされているデータ型に応じて、以下のルーチンが提供されます。
CEESDXPD 64 ビットの倍精度浮動小数点の64 ビットの倍精度浮動小数点乗
CEESDXPI 64 ビットの倍精度浮動小数点数の32 ビットの2 進整数乗
CEESIXPI 32 ビットの2 進整数の32 ビットの2 進整数乗
CEESSXPI 32 ビットの単精度浮動小数点数の32 ビットの2 進整数乗
CEESSXPS 32 ビットの単精度浮動小数点の32 ビットの単精度浮動小数点乗
指定方法
CALL "CEESxXPx" USING BY REFERENCE ARG1RS, BY REFERENCE ARG2RS, BY REFERENCE FBCODE, BY REFERENCE RESLTRS.
01 ARG1RS COMP-1. 01 ARG2RS COMP-1. 01 FBCODE. 02 Condition-Token-Value. COPY CEEIGZCT. 03 Case-1-Condition-ID. 04 Severity PIC S9(4) BINARY. 04 Msg-No PIC S9(4) BINARY. 03 Case-2-Condition-ID REDEFINES Case-1-Condition-ID. 04 Class-Code PIC S9(4) BINARY. 04 Cause-Code PIC S9(4) BINARY. 03 Case-Sev-Ctl PIC X. 03 Facility-ID PIC XXX. 02 I-S-Info PIC S9(9) BINARY. 01 RESLTRS COMP-1.
指数サブルーチンの引数として底を指定します。
指数サブルーチンの引数として指数を指定します。
フィードバック・コード域を指定します。
返却されるフィードバック・コードとコードの意味は以下のとおりです。
コード | 重大度 | メッセージ番号 | 意味 |
---|---|---|---|
CEE000 | 0 | 0 | 成功 |
CEE1UJ | 2 | 2003 | 指数演算(I**J)(IとJ は整数) において、I は0 で、J は0以下です。 |
CEE1UK | 2 | 2004 | 指数演算(R**I)(R は実数、I は整数) において、R は0 で、I は0 以下です。 |
CEE1UL | 2 | 2005 | パラメタの値が有効範囲ではありません。 |
CEE1UM | 2 | 2006 | 指数演算(R**S)(R とS は実数値) において、R は0で、S は0 以下です。 |
CEE1UN | 2 | 2007 | 指数が制限値を超えました。 |
CEE1UO | 2 | 2008 | 指数演算(Z**P)(Z は複素数) において、Z が0 で、複素数指数P の実数部分または整数指数Pが0 以下です。 |
CEE1V4 | 2 | 2020 | 指数演算(R**S)(R とS は実数値) において、R が0でS が負、またはR が負でS は絶対値が制限値以下の非整数です。 |
CEE1V5 | 2 | 2021 | 指数演算(X**Y)において、Y*log2(X) のパラメタの組み合わせが制限値以上の数値を生成しました。 |
CEE1V8 | 2 | 2024 | 数値演算(X**Y) 時にオーバーフローが発生しました。 |
CEE1V9 | 1 | 2025 | アンダーフローが発生しました。 |
CEE1VF | 2 | 2031 | 引数の値が0 以下の整数です。 |
指数を格納する領域を指定します。