Published July 3, 2022 | Version 2.1.0
Software Open

nodef/extra-bit: A collection of common bitwise operations

Creators

Description

A collection of common bitwise operations.<br> 📦 Node.js, 🌐 Web, 📜 Files, 📰 Docs. 📘 Wiki.

The bit is a basic unit of information in information theory, computing. This package includes bit twiddling hacks by Sean Eron Anderson and many others. JavaScript converts a Number (a 64-bit floating point number) to a 32-bit integer when bitwise operators (such as |) are applied. All bitwise operations are performed on 32-bit integers.

This package is available in Node.js and Web formats. The web format is exposed as extra_bit standalone variable and can be loaded from jsDelivr CDN.

Stability: Experimental.

<br>

const bit = require('extra-bit');
// import * as bit from "extra-bit";
// import * as bit from "https://unpkg.com/extra-bit/index.mjs"; (deno)

bit.count(7);
// → 3 (111 ⇒ 3)

bit.parity(8, 2);
// → 2 (10,00 ⇒ 10)

bit.swap(6, 1, 0);
// → 5 (110 ⇒ 101)

bit.reverse(0xFFFF0000);
// → 65535 (0x0000FFFF)

bit.signExtend(15, 4);
// → -1

<br> <br>

Index
Property Description
get Get bits at specified index.
getAs Get bits as per mask.
set Set bits at specified index.
setAs Set bits as per mask.
toggle Toggle bits at specified index.
toggleAs Toggle bits as per mask.
swap Swap bit sequences at specified indices.
scan Find index of first set bit from LSB.
scanReverse Find index of first set bit from MSB.
count Count bits set.
parity Calculate n-bit parity.
rotate Rotate bits by a certain amount.
reverse Reverse all bits.
merge Merge bits as per mask.
interleave Interleave bits of two int16s.
signExtend Sign extend variable bit-width integer.

<br> <br>

Files

nodef/extra-bit-2.1.0.zip

Files (26.6 kB)

Name Size Download all
md5:4df3121804fcd45c93c43e182a43cd96
26.6 kB Preview Download

Additional details

Related works