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>
IndexProperty | 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
- Is supplement to
- https://github.com/nodef/extra-bit/tree/2.1.0 (URL)