Не используя сдвиг. Наподобие:
union{
unsigned int dw;
short int w[2];
}dw_w;
dw_w.dw = 0x11223344;
?