Die AS3 Number Klasse entspricht IEEE 754, und ist identisch mit der Javascript-Nummer Klasse .
Anstatt nach AS3-Bibliotheken zu suchen, habe ich nach Javascript-Code gesucht, der mit nur geringen Änderungen in AS3 funktionieren sollte.
Auf this site fand ich diesen ziemlich hohe Dichte float-Parser:
p.decodeFloat = function(data, precisionBits, exponentBits){
var b = new this.Buffer(this.bigEndian, data);
b.checkBuffer(precisionBits + exponentBits + 1);
var bias = Math.pow(2, exponentBits - 1) - 1, signal = b.readBits(precisionBits + exponentBits, 1), exponent = b.readBits(precisionBits, exponentBits), significand = 0,
divisor = 2, curByte = b.buffer.length + (-precisionBits >> 3) - 1;
do
for(var byteValue = b.buffer[ ++curByte ], startBit = precisionBits % 8 || 8, mask = 1 << startBit; mask >>= 1; (byteValue & mask) && (significand += 1/divisor), divisor *= 2);
while(precisionBits -= startBit);
return exponent == (bias << 1) + 1 ? significand ? NaN : signal ? -Infinity : +Infinity : (1 + signal * -2) * (exponent || significand ? !exponent ? Math.pow(2, -bias + 1) * significand : Math.pow(2, exponent - bias) * (1 + significand) : 0);
};
Wenn Sie Ihren Code bevorzugen debug sowie funktionsfähig zu sein, können Sie this code seine hilfreichen, statt zu finden.