Embedded work - not very low level, but I need to decode a lot of CAN network packets where the individual bits matter. Most of them time I use a hex representation, but that is because hex makes it really easy to figure out the binary going on underneath. Even when I'm doing normal math though it is important to remember that it is binary under it all and so overflow happens at numbers that make sense in binary terms.