в C, если мы структура определены какчтения битого/запись из структуры
struct PortBreg {
unsigned int B0 :1;
unsigned int B1 :1;
unsigned int B2 :1;
unsigned int B3 :1;
unsigned int B4 :1;
unsigned int B5 :1;
unsigned int B6 :1;
unsigned int B7 :1;
};
#define Breg (*(volatile struct PortBreg *)(0x38)),
Если я хочу прочитать значение из порта B битного B3 и записать значение в порт B битный B2, я могу сделать, как
int i=Breg.B3; //to read
Breg.B2=i; //to write ?