Confusion between real-world and floating-point values
3 views (last 30 days)
Show older comments
Life is Wonderful
on 4 Aug 2022
Commented: Life is Wonderful
on 4 Aug 2022
Hello there,
I'm converting floating to real-world data values with the code snippet below.
I notice that after scaling, floating point values are no longer fractional, implying that data loss has occurred.
Thank you in advance
fi(linspace(-5,5,10),true,32,28)
storedInteger(fi(linspace(-5,5,10),true,32,28))
storedInteger(fi(linspace(-5,5,10),true,32,28)) / 2 ^28
I'm expecting fractional length, but I'm wondering where it's gone. Thanks !!
0 Comments
Accepted Answer
Walter Roberson
on 4 Aug 2022
You forgot to take into account that an integer data type operated on with a double precision number, returns the integer data type
fi(linspace(-5,5,10),true,32,28)
SI = storedInteger(fi(linspace(-5,5,10),true,32,28))
class(SI)
SI / 2^28
double(SI) / 2^28
More Answers (0)
See Also
Categories
Find more on Fixed-Point Designer in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!