2.3 KiB
2.3 KiB
Exponent Mask
High word mask for the exponent of a double-precision floating-point number.
Usage
var FLOAT64_HIGH_WORD_EXPONENT_MASK = require( '@stdlib/constants/float64/high-word-exponent-mask' );
FLOAT64_HIGH_WORD_EXPONENT_MASK
High word mask for the exponent of a double-precision floating-point number.
// 0x7ff00000 = 2146435072 => 0 11111111111 00000000000000000000
var bool = ( FLOAT64_HIGH_WORD_EXPONENT_MASK === 0x7ff00000 );
// returns true
Notes
- The higher order word of a double-precision floating-point number is a 32-bit integer containing the more significant bits which include the exponent and sign.
Examples
var getHighWord = require( '@stdlib/number/float64/base/get-high-word' );
var FLOAT64_HIGH_WORD_EXPONENT_MASK = require( '@stdlib/constants/float64/high-word-exponent-mask' );
var out;
var hi;
var x;
x = 11.5;
hi = getHighWord( x ); // => 0 10000000010 01110000000000000000
// returns 1076297728
// Mask off all bits except for the exponent bits:
out = hi & FLOAT64_HIGH_WORD_EXPONENT_MASK; // => 0 10000000010 00000000000000000000
// returns 1075838976
// Mask on the exponent bits and leave other bits unchanged:
out = hi | FLOAT64_HIGH_WORD_EXPONENT_MASK; // => 0 11111111111 01110000000000000000
// returns 2146893824