I understand bitwise operations and how they might be useful for different purposes, e.g. permissions. However, I don’t seem to understand what use the bit shift operators are. I understand how they work, but I can’t think of any scenarios where I might want to use them unless I want to do some really quick multiplication or division. Are there any other reasons to use bit-shifting?
I understand bitwise operations and how they might be useful for different purposes, e.g.
Share
There are many reasons, here are some:
For those and other reasons most processors have bit shift and/or rotation instructions as well as other logic instructions (and/or/xor/not).
Historically multiplication and division were significantly slower as they are more complex operations and some CPUs didn’t have those at all.
Also see here:
Have you ever had to use bit shifting in real projects?