82. Structures-i

Question.5

A developer writes a union-based control register and sets two fields:

typedef union {
   struct {
       uint8_t EN   : 1;  // bit 0
       uint8_t MODE : 2;  // bits 1-2
       uint8_t INT  : 1;  // bit 3
       uint8_t      : 4;  // reserved
   } bits;
   uint8_t value;
} CtrlReg;

CtrlReg reg;
reg.value = 0x00;
reg.bits.EN = 1;
reg.bits.MODE = 3;
printf("0x%02X", reg.value);

On a GCC/ARM platform (LSB-first bitfield order), what does this print?

Need Help? Refer to the Quick Guide below

Select Answer

Restart quiz!