So are you asking how to break the integer to chars and then compose it again?
One way is with union,
union my_value
{
char my_char[2];
unsigned int my_int;
};
The integer and the two chars occupy the same memory area so you can write any of them and read the other, you can write the integer and then read the two chars (my_char[0] my_char[1]) or you can write the two chars and read then as a 16 bit integer.
You can also use shift operation or pointers , there are many alternatives.