How to set specific bits and find the set bits indexes in JavaScript

1 Answer

0 votes
const BIT_SIZE = 16;

// Print binary representation of the bits
function printBinary(bits) {
  let binary = bits.toString(2).padStart(BIT_SIZE, '0');
  console.log(binary);
}

// Find the first set bit (least significant)
function findFirstSetBit(bits) {
  for (let i = 0; i < BIT_SIZE; i++) {
    if ((bits >> i) & 1) {
      return i;
    }
  }
  return -1; // No bits set
}

// Print all set bit indexes
function printSetBitIndexes(bits) {
  for (let i = 0; i < BIT_SIZE; i++) {
    if ((bits >> i) & 1) {
      process.stdout.write(i + ' ');
    }
  }
  console.log();
}

let bits = 0;
bits |= (1 << 3);
bits |= (1 << 5);
bits |= (1 << 11);
bits |= (1 << 14);

printBinary(bits);
console.log('First set bit at index:', findFirstSetBit(bits));

console.log('All the set bits indexes:');
printSetBitIndexes(bits);



/*
run:

0100100000101000
First set bit at index: 3
All the set bits indexes:
3 5 11 14 

*/

 



answered Nov 3, 2025 by avibootz
...