# How to use the small positive float number?

8 views (last 30 days)
Mahdiyar on 15 May 2015
Edited: Guillaume on 15 May 2015
Hi everyone
I am writing the code in which I need to deal with quite small number like
A = (1/2^8)^512
When I run this line, matlab gives back 0 as the results. However, I need this number to be multiplied with other big numbers.
How can I save the real value of variable A?
Many thanks,
Regards

Guillaume on 15 May 2015
Edited: Guillaume on 15 May 2015
In plain matlab, you cannot represent such a number as it's way outside the range that a double can represent. The exponent part of a double is 11 bits, offset by 1023, so the minimum number that can be represented by a double is around 2^-1023 (the true minimum is 2^-1074), your number is 2^-4096!
You would have to use vpa from the Symbolic math toolbox (I know nothing about it, I don't have it), or go through Java's BigDecimal, or look through the file exchange for an arbitrary precision type.

### Categories

Find more on Creating and Concatenating Matrices 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!

Translated by