I think that this is not possible because Int32 has 1 bit sign and have 31 bit of numeric information and Int16 has 1 bit sign and 15 bit of numeric information
Int32
If you look at the bit representation, then you are correct.
You can do this with unsigned ints though, as they don't have the sign bit.