#include <stdio.h> #include <stdint.h> uint32_t setBits(uint32_t reg,int pos,int len){ uint32_t mask=((1U << len) -1) << pos; reg |= mask; return reg; } int main(){ uint32_t reg; int pos, len; scanf("%u %d %d", ®, &pos, &len); printf("%u\n", setBits(reg,pos,len)); return 0; }
Test Cases
Test Results
Input
0 4 3
Expected Output
112