MULT_HIGH_SIGNED (i64 only)

Elemental Intrinsic Function (Specific): Multiplies two 64-bit signed integers. This is a specific function that has no generic function associated with it. It cannot be passed as an actual argument.

Syntax

result = MULT_HIGH_SIGNED (i,j)

i

(Input) Must be of type INTEGER(8).

j

(Input) Must be of type INTEGER(8).

Results

The result type is INTEGER(8). The result value is the upper (leftmost) 64 bits of the 128-bit signed result.

Example

Consider the following:

INTEGER(8) I,J,K

I=2_8**53

J=2_8**51

K = MULT_HIGH_SIGNED (I,J)

PRINT *,I,J,K

WRITE (6,1000)I,J,K

1000 FORMAT (' ', 3(Z,1X))

END

This example prints the following:

9007199254740992 -2251799813685248 -1099511627776

20000000000000 FFF8000000000000 FFFFFF0000000000