#include <stdio.h>
#include <stdint.h>
uint32_t set_baud_rate(uint32_t reg, uint8_t baud) {
const uint8_t pos = 8;
const uint8_t field = 4;
uint32_t mask = ~(0xFFFFFFFF << field); // set width of mask according to field
reg &= ~(mask << pos); // apply inverted mask to clear target bit in register
uint32_t ext_baud = baud << pos; // coerce baud to 32-bet and shift on positon;
reg |= ext_baud; // sum up shifted val and cleared register
return reg;
}
int main() {
uint32_t reg;
uint8_t baud;
scanf("%u %hhu", ®, &baud);
printf("%u", set_baud_rate(reg, baud));
return 0;
}