> You can write: > writeb(19 , &clkctrl_regs->hw_clkctrl_frac0); Yes, for the first byte I can (and do), but the three higher bytes would get ugly with this method: writeb(bitset >> 8, (unit8_t*)&clkctrl_regs->hw_clkctrl_frac0 + 1);