public short ReadInt16()
{
if (this.position + 1 >= this.length)
{
throw new Exception("bufferReader out of bound.");
}
short low = (short)this.buffer[this.position++];
short high = (short)(this.buffer[this.position++] << 8);
return (short)(low + high);
}