No es necesario declarar las variables como int16.. solo hay q castearlas en su debido momento:
int x,y;
x=0xFF;
y=0xAA;
int16 suma_hex=(int16)x+(int16)y;
con eso le decis al compilador q para esa suma tiene q considerar las variables como int16, pero siguen ocupando el mismo espacio en la memoria.
saludos!!
Excelente... pequeños detalles pero muy importantes!