INFO: How Bitfields Are Stored in MemoryLast reviewed: October 1, 1997Article ID: Q32841 |
The information in this article applies to:
SUMMARYAn application developed with one of the Microsoft compilers above stores bitfields from low memory to high memory. For example, consider the following declaration:
struct x { unsigned field_one:3; unsigned field_two:9; unsigned field_three:5; };Compiled with a 16-bit compiler, the above code stores field_one in bits 0- 2 of the first word, field_two in bits 3-11 of the same word, and field_three in bits 0-4 of the next word (because the field cannot fit in the remaining four bits of the first word and bit fields do not cross byte boundaries). Compiled with a 32-bit compiler, the same code stores the struct in the 17 least significant bits of a word.
|
Additional query words: 8.00 8.00c 9.00
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |