#include <stdio.h> #include <stdint.h> typedef struct { unsigned short reg; } ConfigRegister; int validate_config(ConfigRegister *cfg) { // Write logic using pointer access int enable_bit = (((cfg->reg) >> 0)&0x01); uint8_t test = (((cfg->reg)>>2)&0x03); uint16_t test1 = (((cfg-> reg)>>4)&0xfff); if((enable_bit == 1) && (test != 3) && (test1 == 0)) { return 1; } return 0; } int main() { ConfigRegister cfg; scanf("%hx", &cfg.reg); int result = validate_config(&cfg); printf("%d", result); return 0; }
Test Cases
Test Results
Input
0005
Expected Output
1