Main Content

fixptbestexp

Exponent that gives best precision for fixed-point representation of value

Syntax

out = fixptbestexp(RealWorldValue, TotalBits, IsSigned)
out = fixptbestexp(RealWorldValue, FixPtDataType)

Description

out = fixptbestexp(RealWorldValue, TotalBits, IsSigned) returns the exponent that gives the best precision for the fixed-point representation of RealWorldValue. TotalBits specifies the number of bits for the fixed-point number. IsSigned specifies whether the fixed-point number is signed: 1 indicates the number is signed and 0 indicates the number is not signed.

out = fixptbestexp(RealWorldValue, FixPtDataType) returns the exponent that gives the best precision based on the data type FixPtDataType.

Examples

Get the exponent that gives the best precision for the real-world value 4/3 using a signed, 16-bit number:

out = fixptbestexp(4/3,16,1)
out =
   -14

Alternatively, specify the fixed-point data type:

out = fixptbestexp(4/3,sfix(16))
out =
   -14

This shows that the maximum precision representation of 4/3 is obtained by placing 14 bits to the right of the binary point:

01.01010101010101

You can specify the precision of this representation in fixed-point blocks by setting the scaling to 2^-14 or 2^fixptbestexp(4/3,16,1).

Version History

Introduced before R2006a