Esta classe  capaz de serializar e unserializar dados binrios, ento voc pode ler arquivos gerados em C, pascal, etc bem como gerar tais dados.
Ela tambm  capaz de lidar com a ordenao dos bytes (big/little endian) e suporta os seguintes tipos: signed integer (small 8 bits, short 16 bits, int 32 bits), unsigned integer (byte 8 bits, word 16 bits, dword 32 bits) e floating point (IEEE754 float 32 bits e double 64 bits).

Construtor

	BinaryParser([bigEndian: Boolean = false], [allowExceptions: Boolean = false])
	
		Gera uma instncia de BinaryParser.
		
			bigEndian se setado em true, a classe ir assumir o formato bigEndian tanto no input quanto no output, caso contrrio, utilizar o little endian.
			allowExceptions se true, quando houver erro na converso nmero => binrio ser gerada uma exception que poder ser capturada atravs de "try..except"
		
	



Propriedades

	BinaryParser.bigEndian: Boolean se setado em true, a classe ir assumir o formato bigEndian tanto no input quanto no output, caso contrrio, utilizar o little endian.
	BinaryParser.allowExceptions: Boolean se true, quando houver erro na converso nmero=>binrio ser gerada uma exception que poder ser capturada atravs de "try..except"


Mtodos Genricos

	BinaryParser.decodeFloat(data: String, precisionBits: Integer, exponentBits: Integer): Float
	
		Decodifica uma string contendo a representao binria de um nmero no padro IEEE-754 e retorna o nmero que ela representa ou os seguintes valores especiais: NaN, +Infinity, -Infinity.
		
			data string contendo a representao binria do nmero (deve conter no mnimo "ceil((exponentBits + precisionBits + 1) / 8)" bytes)
			precisionBits quantidade de bits que especificam a preciso/mantissa
			exponentBits quantidade de bits que representam o exponente
		
	
	BinaryParser.encodeFloat(number: Float, precisionBits: Integer, exponentBits: Integer): String
	
		Codifica um nmero no padro IEEE-754 e retorna a representao binria do nmero em uma string contendo "ceil((exponentBits + precisionBits + 1) / 8)" bytes.
		
			number nmero a ser convertido
			precisionBits quantidade de bits que especificam a preciso/mantissa
			exponentBits quantidade de bits que representam o exponente
		
	
	BinaryParser.decodeInt(data: String, bits: Integer, signed: Boolean): Integer
	
		Decodifica uma string contendo dados binrios e retorna o nmero que ela representa.
		
			data string contendo a representao binria do nmero (deve conter no mnimo "ceil(bits / 8)" bytes)
			bits quantidade de bits que especifica o mximo de nmeros que podem ser representados
			signed indica se o nmero deve ser decodificado com sinal ou sem sinal
		
	
	BinaryParser.encodeInt(number: Integer, bits: Integer, signed: Boolean): Integer
	
		Codifica um nmero inteiro e retorna sua representao binria em uma string contendo "ceil(bits / 8)" bytes.
		
			number nmero a ser convertido
			bits quantidade de bits que especifica o mximo de nmeros que podem ser representados
			signed indica se o nmero deve ser codificado com sinal ou sem sinal
		
	


Mtodos (Ponto Flutuante)

	BinaryParser.toFloat(data: String): Float
	
		Retorna um float ou um valor especial (NaN, +Infinity, -Infinity).
		
			data string contendo no mnimo 4 bytes
		
	

	BinaryParser.fromFloat(number: Float): String
	
		Retorna sua representao binria em uma string, o mtodo pode gerar excees caso a propriedade "allowExceptions" esteja setada em true e o nmero seja um valor especial (NaN, +Infinity, -Infinity) ou se o nmero no puder ser representado (overflow, underflow).
		
			number nmero a ser convertido para binrio
		
	

	BinaryParser.toDouble(data: String): Float
	
		Retorna um float ou um valor especial (NaN, +Infinity, -Infinity).
		
			data string contendo no mnimo 8 bytes
		
	

	BinaryParser.fromDouble(number: Float): String
	
		Retorna sua representao binria em uma string, o mtodo pode gerar excees caso a propriedade "allowExceptions" esteja setada em true e o nmero seja um valor especial (NaN, +Infinity, -Infinity) ou se o nmero no puder ser representado (overflow, underflow).
		
			number nmero a ser convertido para binrio
		
	



Mtodos (Nmeros Inteiros)

	BinaryParser.toSmall(data: String): Integer
	
		Recebe string e retorna sua representao inteira com sinal.
		
			data string contendo no mnimo 1 byte
		
	

	BinaryParser.fromSmall(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 1 byte, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado e a propriedade "allowExceptions" esteja setada em true.
		
			number nmero a ser convertido para binrio
		
	

	BinaryParser.toByte(data: String): Integer
	
		Recebe string e retorna sua representao inteira sem sinal.
		
			data string contendo no mnimo 1 byte
		
	

	BinaryParser.fromByte(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 1 byte, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado.
		
			number nmero a ser convertido para binrio, a classe ignora se o nmero  negativo ou no (em complemento de 2, "-1"  representado da mesma forma que "255")
		
	

	BinaryParser.toShort(data: String): Integer
	
		Recebe string e retorna sua representao inteira com sinal.
		
			data string contendo no mnimo 2 bytes
		
	

	BinaryParser.fromShort(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 2 bytes, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado e a propriedade "allowExceptions" esteja setada em true.
		
			number nmero a ser convertido para binrio
		
	

	BinaryParser.toWord(data: String): Integer
	
		Recebe string e retorna sua representao inteira sem sinal.
		
			data string contendo no mnimo 2 bytes
		
	

	BinaryParser.fromWord(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 2 bytes, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado.
		
			number nmero a ser convertido para binrio, a classe ignora se o nmero  negativo ou no (em complemento de 2, "-1"  representado da mesma forma que "255")
		
	

	BinaryParser.toInt(data: String): Integer
	
		Recebe string e retorna sua representao inteira com sinal.
		
			data string contendo no mnimo 4 bytes
		
	

	BinaryParser.fromInt(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 4 bytes, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado e a propriedade "allowExceptions" esteja setada em true.
		
			number nmero a ser convertido para binrio
		
	

	BinaryParser.toDWord(data: String): Integer
	
		Recebe string e retorna sua representao inteira sem sinal.
		
			data string contendo no mnimo 4 bytes
		
	

	BinaryParser.fromDWord(number: Integer): String
	
		Recebe um inteiro e retorna sua representao binria em uma string com 4 bytes, o mtodo pode gerar uma exceo caso o nmero seja grande demais para ser representado.
		
			number nmero a ser convertido para binrio, a classe ignora se o nmero  negativo ou no (em complemento de 2, "-1"  representado da mesma forma que "255")
		
	
