Did you read the code? That's not what he's doing at all.
The code he has is perfectly fine apart from one small point, which I have mentioned extensively above
short phi_data = 0; // <<<<<< USE SHORT, NOT INT, ON A 32 BIT SYSTEM TO FORCE 16 BITS
phi_data = ((data[0] << 8) | data[1]);//Concatenate two bytes, comprising one signed integer value