"There's an array of 10,000 16-bit values, how do you count the bits most efficiently?"
multiply 10,000 by 16. There are 160,000 bits
multiply 10,000 by 16. There are 160,000 bits
On the x86 architecture, integer multiplies take more cycles than a comparable solution that uses bit twiddling so you're just WRONG!
You are the weakest link, GOODBYE!