math-float32-from-word

1.0.0 • Public • Published

fromWord

NPM version Build Status Coverage Status Dependencies

Creates a single-precision floating-point number from an unsigned integer corresponding to an IEEE 754 binary representation.

Installation

$ npm install math-float32-from-word

Usage

var fromWord = require( 'math-float32-from-word' );

fromWord( x )

Creates a single-precision floating-point number from an unsigned integer corresponding to an IEEE 754 binary representation.

var word = 1068180177; // => 0 01111111 01010110010001011010001
 
var f32 = fromWord( word );
// returns 1.3370000123977661 (note: when printed, implicitly promoted to float64)

Notes

  • The equivalent of this function in C/C++,

    float fromWord(unsigned int x) {
      return *(float*)&x;
    }

Examples

var round = require( 'math-round' );
var MAX_UINT32 = require( 'const-max-uint32' );
var fromWord = require( 'math-float32-from-word' );
 
var word;
var f32;
var i;
 
// Create single-precision floating-point numbers from unsigned integers...
for ( i = 0; i < 1000; i++ ) {
    word = round( Math.random()*MAX_UINT32 );
    f32 = fromWord( word );
    console.log( 'word: %d => float32: %d', word, f32 );
}

To run the example code from the top-level application directory,

$ node ./examples/index.js

Tests

Unit

This repository uses tape for unit tests. To run the tests, execute the following command in the top-level application directory:

$ make test

All new feature development should have corresponding unit tests to validate correct functionality.

Test Coverage

This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:

$ make test-cov

Istanbul creates a ./reports/coverage directory. To access an HTML version of the report,

$ make view-cov

Browser Support

This repository uses Testling for browser testing. To run the tests in a (headless) local web browser, execute the following command in the top-level application directory:

$ make test-browsers

To view the tests in a local web browser,

$ make view-browser-tests

License

MIT license.

Copyright

Copyright © 2016. The Compute.io Authors.

Package Sidebar

Install

npm i math-float32-from-word

Weekly Downloads

7

Version

1.0.0

License

MIT

Last publish

Collaborators

  • kgryte