I'm not really sure why you want to know this exactly for any matrix of numbers. It will get a bit long to write down the exact values as stored.
You can't really print out the exact value easily, because the exact value will not be representable in a limited number of decimal digits, only about 16 of them.
format long g
a = 1.23
So a looks like 1.23. But of course it is not. We need to write out 55 digits or so, using a tool like sprintf (or num2str) to show the exact value, since a is really stored in binary form.
32 digits is NOT sufficient to show the exact value.
See that the actual value of a went on for another 20 decimal digits or so. num2str does work, IF you give it enough room to work.
This does not mean that you can represent all floating point numbers with 50 or so decimal digits, only that when you try to write a decimal fraction in binary form, you will get only an approximation most of the time. In fact, the very next larger floating point number than a that we can represent is
Why have I been using 55 digits here? In fact, we should be able to get away with 53 digits. But 55 adds a safety factor. All doubles in MATLAB are stored using 52 binary bits for the mantissa.
Note that in general, all negative integer powers of 2 (thus 2^(-n))can be written using exactly n digits to the right of the decimal. We can see that here. Each negative power of 2 adds a digit.
Since any mantissa stored in a binary form will be a linear combination of these numbers, then in general, it will take 52 decimal digits to represent a number with 52 binary bits.