Поля битов

Один из методов, встроенных в язык C и позволяющих иметь доступ к биту — это поля битов. Поля битов — это спечиальный тип членов структуры. Формат определения размера переменной в битах следующий.

Копировать
тип имя_переменной:длина_в_битах;
Где длина_в_битах — размер переменной в битах. Например.
Копировать
struct version{
	int major : 3;
	int minor : 3;
	int :6;		//не используеться
	unsigned int x:3;
};
Под переменную типа version выделиться 2 быйта.

Элемент   x Не используеться minor major
Биты 15  14  13  12  11  10 

Для знаковых полей старший левый бит из общего числа битов, выделяемых под данное битовое поле, интерпритируеться как знак. Например битовое значение 101 для поля major будет восприниматься как -1, а значение 101 для поля x — как 5.


Смотрите также

struct - структуры
union - объеденения
enum - перечислимый тип
typedef - создание нового имени