nomenclature ... do they number the bits from left-to-right (0=MSB), or from right-to-left? Then, entirely separately from this, do they store a multi-byte number high-byte-first or low-byte-first? Finally, how does your programming-tool of choice do it? There are no "right" answers. When you are doing bit-twiddling, you have to think of all these things, and it is highly machine-specific. Documentation and project designs need to explicitly spell-out all of these things, right there on the front page, and it should also be summarized in documentation within the source code.