1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
{{alias}}( [out,] x )
Splits a double-precision floating-point number into a normalized fraction
and an integer power of two.
The first element of the returned array is the normalized fraction and the
second is the exponent. The normalized fraction and exponent satisfy the
relation
x = frac * 2^exp
If provided positive or negative zero, `NaN`, or positive or negative
infinity, the function returns a two-element array containing the input
value and an exponent equal to zero.
For all other numeric input values, the absolute value of the normalized
fraction resides on the interval [0.5,1).
Parameters
----------
out: Array|TypedArray|Object (optional)
Output array.
x: number
Input value.
Returns
-------
out: Array|TypedArray|Object
A normalized fraction and an exponent.
Examples
--------
> var out = {{alias}}( 4.0 )
[ 0.5, 3 ]
> out = {{alias}}( 0.0 )
[ 0.0, 0 ]
> out = {{alias}}( -0.0 )
[ -0.0, 0 ]
> out = {{alias}}( NaN )
[ NaN, 0 ]
> out = {{alias}}( {{alias:@stdlib/constants/float64/pinf}} )
[ Infinity, 0 ]
> out = {{alias}}( {{alias:@stdlib/constants/float64/ninf}} )
[ -Infinity, 0 ]
// Provide an output array:
> out = new {{alias:@stdlib/array/float64}}( 2 );
> var y = {{alias}}( out, 4.0 )
<Float64Array>[ 0.5, 3 ]
> var bool = ( y === out )
true
See Also
--------
|