Special Function Registers value expressed as Hexadecimal & Bit shift
This is an obtuse bit of code, and doesn't really have any virtue. It combines a shift with a magic number, so it's even less clear than just directly writing the value... 

You would usually define somewhere the meaningful bit name(s), in this case UARTEN, with its index in the register. It would be more usual to do a read-modify-write sequence (unless you're initialising registers). So, copy the original, modify the bit, and then re-write to the register. This would look something like:

#define UARTEN 15
U1MODE = U1MODE &amp; ~(1&lt;&lt;UARTEN);  // clear UARTEN
U1MODE = U1MODE | (1&lt;&lt;UARTEN);   // set UARTEN


As the mask is a constant, the compiler should optimise out the shift and negation and then do a simple bitwise mask (although check the disassembled output).