I doubt the opposite result is what anyone would expect. By narrowing the value you eliminate the portion of the original value that doesn't fit in the range of the narrower type. There is a presumption that type narrowing isn't generally used to alter the value; usually you just want to eliminate zero-padding that occurs because the VM memory model wants to manage 32-bit values internally and leave the type management of "sub-integers" to the programmer.
Make visible what, without you, might perhaps never have been seen. - Robert Bresson