z/OS Language Environment Programming Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


CEESxXPx—Exponentiation

z/OS Language Environment Programming Reference
SA38-0683-00

CEESxXPx performs the mathematical function exponentiation by using the equation:
Equation used by CEESxXPx
The following routines are provided for the various data types supported:
CEESIXPI
32-bit binary integer raised to a 32-bit binary integer
CEESSXPI
32-bit single floating-point number raised to a 32-bit binary integer
CEESDXPI
64-bit double floating-point number raised to a 32-bit binary integer
CEESQXPI
128-bit extended floating-point number raised to a 32-bit binary integer
CEESTXPI
32-bit single floating-point complex number raised to a 32-bit binary integer
CEESEXPI
64-bit double floating-point complex number raised to a 32-bit binary integer
CEESRXPI
128-bit extended floating-point complex number raised to a 32-bit binary integer
CEESSXPS
32-bit single floating-pointing point raised to a 32-bit single floating-point
CEESDXPD
64-bit double floating-point raised to a 64-bit double floating-point
CEESQXPQ
128-bit extended floating-point raised to a 128-bit extended floating-point
CEESTXPT
32-bit single floating-point complex raised to a 32-bit single floating-point complex
CEESEXPE
64-bit double floating-point complex raised to a 64-bit double floating-point complex
CEESRXPR
128-bit extended floating-point complex raised to a 128-bit extended floating-point complex
Read syntax diagramSkip visual syntax diagram
Syntax

>>-CEESxXPx--(--parm1--,--parm2--,--fc--,--result--)-----------><

parm1 (input)
The input for the base of the exponentiation routine. The input range varies.
For functions of real variables:
Range for functions of real variables
If parm1 is a 32-bit number and parm1 < 0:
Range if parm1 is a 32-bit number
and parm2 = 'awholenumber'
If parm1 is a 64-bit number and parm1 < 0:
Range if parm1 is a 64-bit number
and parm2 = 'awholenumber'
If parm1 is a 128-bit number and parm1 < 0:
Range if parm1 is a 128-bit number
and parm2 = 'awholenumber'

The input range for functions of complex variables: If Re(parm1) = 0 and Im(parm1) = 0, then Re(parm2) must be positive.

parm2 (input)
The input for the power of the exponentiation routine. The type is determined by the eighth character of the service name.
fc (output)
A 12-byte feedback code, optional in some languages, that indicates the result of this service. If you choose to omit this parameter, refer to Invoking callable services for the appropriate syntax to indicate that the feedback code was omitted.

The following symbolic conditions can result from this service:

Code Severity Message number Message text
CEE000 0 The service completed successfully.
CEE1UJ 2 2003 For an exponentiation operation (I**J) where I and J are integers, I was equal to zero and J was less than or equal to zero in math routine routine-name.
CEE1UK 2 2004 For an exponentiation operation (R**I) where R is real and I is an integer, R was equal to zero and I was less than or equal to zero in math routine routine-name.
CEE1UL 2 2005 The value of the parameter was outside the valid range range in math routine routine-name.
CEE1UM 2 2006 For an exponentiation operation (R**S) where R and S are real values, R was equal to zero and S was less than or equal to zero in math routine routine-name.
CEE1UN 2 2007 The exponent exceeded limit in math routine routine-name.
CEE1UO 2 2008 For an exponentiation operation (Z**P) where the complex base Z equals zero, the real part of the complex exponent P, or the integer exponent P was less than or equal to zero in math routine routine-name.
CEE1V4 2 2020 For an exponentiation operation (R**S) where R and S are real values, either R is equal to zero and S is negative, or R is negative and S is not an integer whose absolute value is less than or equal to limit in math routine routine-name.
CEE1V5 2 2021 For an exponentiation operation (X**Y), the parameter combination of Y*log2(X) generated a number greater than or equal to limit in math routine routine-name.
CEE1V8 2 2024 An overflow occurred in math operation (X**Y).
CEE1V9 1 2025 An underflow occurred in math routine routine-name. The output value from the math routine is undefined.
CEE1VF 2 2031 The value of the argument was a non- positive whole number in math routine (X**Y).
result (output)
The result of the exponentiation routine. The output range for functions of real variables is:
Output range for functions of real variables

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014