4 ms·
I always find it useful to map a new problem into a space I am more familiar with. Given that you have a many years of experience with high level languages, yo
by chris_va 12y ago
I always find it useful to map a new problem into a space I am more familiar with.
Given that you have a many years of experience with high level languages, you can probably use array algorithms as an analogue for bitwise operations.
Can you shift the elements of an array left, right? Intersect/union two of them? Count the true/false values?
Bit level operations are just a special case that CPUs do very efficiently, and happen to be quite useful for a wide set of algorithms.
It is useful to understand how CPUs represent bits (little/big endian, float encoding), and look at a couple of algorithms that take advantage of that (e.g. why multiplying by 2 on a computer is a cheaper operation than multiplying by a random number).