Quantcast
Channel: KVR Audio
Viewing all articles
Browse latest Browse all 3013

DSP and Plugin Development • Re: Parameter input range

$
0
0
Hi earlevel :)
For single-precision float (assuming IEEE 754), the mantissa (or significand) uses 23 bits and the exponent uses 8 bits. Additionally, there is 1 bit reserved for the sign of the number, making a total of 32 bits used to represent a float.

So your basically playing with 23 bits for the 0 to 1 range...
Pardon the trivia, but the mantissa is normalized and the leading 1 is omitted, so you have 24-bits of mantissa, not counting sign.

But it works out better than plain 24-bit—overall ........
Thats why I said:
the mantissa (or significand) uses 23 bits
I didn't say mantissa is 23 bits. Sure there is 1 bit that is omitted because it's always one. And sure mantissa is normalized. References:
...
Um, not doing this to beat the point to death, but to clarify...there are 23 actual mantissa bits in float32. The implied bit from normalization makes 24. (For completeness: The sign bit makes 25-bit equivalent—relative to two's complement format—but didn't applicable for the 0..1 range we're discussing).

Back to the original comment I replied to:
So your basically playing with 23 bits for the 0 to 1 range...
It almost sounds like you're saying there are only 22 actual bits available plus the implied bit. Or I'm not reading you right. In any case, I think everyone here knows what's going on—24 bits of precision are available, in addition to the scaling as values get smaller.

Statistics: Posted by earlevel — Thu Apr 04, 2024 11:55 pm



Viewing all articles
Browse latest Browse all 3013

Trending Articles