code: public int readUnsignedShort(final JBBPByteOrder byteOrder) throws IOException {
      final int b0 = this.read();
      if (b0 < 0) {
        throw new EOFException();
      }
      final int b1 = this.read();
      if (b1 < 0) {
        throw new EOFException();
      }
      return byteOrder == JBBPByteOrder.BIG_ENDIAN ? (b0 << 8) | b1 : (b1 << 8) | b0;
    }
docs: Read a unsigned short value from the stream.
  
  @param byteOrder he order of bytes to be used to decode the read value
  @return the unsigned short value read from stream
  @throws IOException  it will be thrown for any transport problem during the
  operation
  @throws EOFException if the end of the stream has been reached
  @see JBBPByteOrder#BIG_ENDIAN
  @see JBBPByteOrder#LITTLE_ENDIAN