3.4 KiB
3.4 KiB
Binary String
Return a string giving the literal bit representation of an unsigned 16-bit integer.
Usage
var toBinaryString = require( '@stdlib/number/uint16/base/to-binary-string' );
toBinaryString( x )
Returns a string
giving the literal bit representation of an unsigned 16-bit integer.
var Uint16Array = require( '@stdlib/array/uint16' );
var a = new Uint16Array( [ 1, 4, 9 ] );
var str = toBinaryString( a[0] );
// returns '0000000000000001'
str = toBinaryString( a[1] );
// returns '0000000000000100'
str = toBinaryString( a[2] );
// returns '0000000000001001'
Notes
-
Except for typed arrays, JavaScript does not provide native user support for unsigned 16-bit integers. According to the ECMAScript standard,
number
values correspond to double-precision floating-point numbers. While this function is intended for unsigned 16-bit integers, the function will accept floating-point values and represent the values as if they are unsigned 16-bit integers. Accordingly, care should be taken to ensure that only nonnegative integer values less than65536
(2^16
) are provided.var str = toBinaryString( 1 ); // returns '0000000000000001' str = toBinaryString( 4 ); // returns '0000000000000100' str = toBinaryString( 9 ); // returns '0000000000001001' str = toBinaryString( 65535 ); // returns '1111111111111111'
Examples
var randu = require( '@stdlib/random/base/randu' );
var round = require( '@stdlib/math/base/special/round' );
var Uint16Array = require( '@stdlib/array/uint16' );
var MAX_UINT16 = require( '@stdlib/constants/uint16/max' );
var toBinaryString = require( '@stdlib/number/uint16/base/to-binary-string' );
var x;
var y;
var b;
var i;
// Generate random unsigned 16-bit integers...
x = new Uint16Array( 100 );
for ( i = 0; i < x.length; i++ ) {
x[ i ] = round( randu()*MAX_UINT16 );
}
// Convert unsigned 16-bit integers to literal bit representations...
for ( i = 0; i < x.length; i++ ) {
b = toBinaryString( x[i] );
y = parseInt( b, 2 );
console.log( 'x: %d, b: %s, y: %d', x[i], b, y );
}