Byte addressing 8 bits; in fact, depending on the platform, byte sizes of 1 to 48 bits have been used in the past. Therefore, the term "octet" is used where the context makes byte-length ambiguous. For example, in the 1980s, Honeywell mainframes had 36-bit words, and were byte-addressable in 9-bit bytes, or "nonets", They used 7- or 8-bit character codes, either of which were stored one to each 9-bit byte, making characters individually addressable. To illustrate why byte addressing is useful, consider the IBM 7094, which is word-addressable and has no concept of a byte. It has 36-bit words, and stores its
Mask (computing) argument overhead is decreased. Since the minimum datum size is one byte, separating the options into separate arguments would be wasting seven bits per argument and would occupy more stack space. Instead, functions typically accept one or more 32-bit integers, with up to 32 option bits in each. While elegant, in the simplest implementation this solution is not type-safe. A codice_46 is simply defined to be an codice_47, so the compiler would allow a meaningless call to codice_48 or even codice_49. In C++ an alternative would be to create a class to encapsulate the set of arguments that glClear could