(starając się analizować jak decimal
prace) & & po przeczytaniu @jonskeet article i widząc msdn, a myślenie w ciągu ostatnich 4 godzin, Mam kilka pytań:dziesiętny w C# nieporozumienie?
w this link mówią coś bardzo proste:
1.5 x 10^2
ma 2
cyfr znaczących
1.50 x 10^2
ma 3
znaczący figury.
1.500 x 10^2
ma 4
cyfr znaczących itp ...
Ok ... mamy pomysł.
od Jona artykułu:
sign * mantissa/10^exponent
jak zwykle, znak jest tylko jeden bit, ale są 96 bity mantysy i 5 bitów wykładnika
^_ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^___ ^^^^^
1 _ 96 5
ok
tak max mantiss val = 2^96-1 = 79228162514264337593543950335
który jest: 7.9228162514264*10^28
(. zgodnie z moim iPhone ... could'nt zobaczyć wykładnik reprezentację w oknach Calc)
Wskazówka:
7.9228162514264*10^28
ma cyfr znaczących (zgodnie z przykładami powyżej)
się część z bitem wykładnika 5 jest bez znaczenia, ponieważ jej w mianownika - więc potrzebują min val o 2^0
pytanie nr 1:
MSDN powiedzieć: 28-29 significant digits
ale według mojego próbki (1.500 x 10^2
ma 4
znaczące postacie) mają cyfr znaczących, które jest 7.9
(7 i 9).
jeśli msdn byłoby napisane:
±79228162514264337593543950335 × 10^0
chciałbym to zrozumieć, ponieważ wszystkie znaczące cyfry są w wyrażeniu.
dlaczego piszą 28-29, ale wyświetlają 2?
pytanie nr 2:
jak będzie reprezentacja dziesiętna (mantiss & & wykładnik) będą wyświetlane dla wartości 0,5?
max mianownikiem może być 2^32-1 --> 31
dzięki chłopaki.
pytanie nr 3:
1 + 96 + 5 = 102 bitów.
MSDN mówi:
Słowo kluczowe dziesiętny oznacza typ danych 128-bitowym.
128-102 = 26
mógłby understnad z art dlaczego isnt użycie do tych 26 bitów
mantiss z 5 oznacza (2^5)/(1 * 10^1) - to nie jest 0.5 ...... –
@RoyiNamir: Nie, mantysa ma 5. Co sprawiło, że myślisz, że ma cokolwiek do zrobić z 2^5? Podejrzewam, że źle zrozumiałeś, co to jest mantysa. –
oh przepraszam ... :) po 4 godzinach wyszukiwania im myślenie w bazie 2 :) –