(while trying to analyze how decimal
works ) && after reading @jonskeet article and seeing msdn , and thinking for the last 4 hours ,
I have some
They've given the range to just two significant digits, but specified the precision separately. That's why the range is listed as "approximate range".
The decimal
representation of 0.5 would be a mantissa of 5 and an exponent of 1 (which is treated in the inverse sense to normal, i.e. it's effectively -1).
why do they write 28-29 but display 2?
For readability. It says "Approximate range" and 7.9E28 is more readable than 79228162514264337593543950335 (E0 here, not E1).
how will decimal representation ( mantiss && exponent) will be displayed for the value 0.5 ?
The exponent's range is -28...0, however, it is stored (and received via constructor parameters) as an absolute value of 0...28.
So 0.5 Would have the same mantissa representation as 5 with an exponent of -1 (stored as 1).