FLOAT32_SIGN_MASK
Mask for the sign bit of a single-precision floating-point number.
Usage
var FLOAT32_SIGN_MASK = require( '@stdlib/constants/float32/sign-mask' );
FLOAT32_SIGN_MASK
Mask for the sign bit of a single-precision floating-point number.
// 0x80000000 = 2147483648 => 1 00000000 00000000000000000000000
var bool = ( FLOAT32_SIGN_MASK === 0x80000000 );
// returns true
Notes
- The higher order word of a single-precision floating-point number is a 32-bit integer containing the more significant bits which include the exponent and sign.
Examples
var toWord = require( '@stdlib/number/float32/base/to-word' );
var fromWord = require( '@stdlib/number/float32/base/from-word' );
var FLOAT32_SIGN_MASK = require( '@stdlib/constants/float32/sign-mask' );
var x = -11.5;
var w = toWord( x ); // 1 10000010 01110000000000000000000
// returns 3223781376
// Mask off all bits except for the sign bit:
var out = (w & FLOAT32_SIGN_MASK)>>>0; // 1 00000000 00000000000000000000000
// returns 2147483648
// Turn off the sign bit and leave other bits unchanged:
out = w & (~FLOAT32_SIGN_MASK); // 0 10000010 01110000000000000000000
// returns 1076297728
// Generate a new value:
out = fromWord( out );
// returns 11.5
C APIs
Usage
#include "stdlib/constants/float32/sign_mask.h"
STDLIB_CONSTANT_FLOAT32_SIGN_MASK
Macro for the mask for the sign bit of a single-precision floating-point number.