matematykaszkolna.pl
Notacja zmiennoprzecinkowa binarna qwe: Witam Mój problem wygląda następująco. Przy założeniu, że moja liczba binarna ma postać ośmiobitową (np. "0 110 1011"), gdzie: − pierwszy skrajny lewy bit oznacza znak liczby ("0" dodatnią, "1" ujemną), − kolejne od lewej 3 bity wyznaczają wykładnik zapisywany w notacji z nadmiarem (tu "110" − 3−bitowy czyli nadmiar wynosi 4), − ostatnie 4 bity to część ułamkowa (tu "1011"). Ta liczba akurat wynosi 2 34. Jak przekształcać liczbę "zwykłą" na binarną w tym zapisie i odwrotnie? Znam algorytm postępowania lecz nie jest on dla mnie jasny. Wygląda on tak: 1) odczytaj znak liczby ("0 110 1011" − 0 czyli dodatni), 2) odczytaj wartość w polu wykładnika ("110" wynosi "2"), 3) przesuń kropkę w odpowiednie miejsce (wartość wykładnika 2, więc o 2 pozycje w prawo, otrzymam 10.11 (binarna reprezentacja liczby, a to wynosi "234"}. 4) wynik "234". Natomiast dla liczby "1 011 1100" jest rzekomo tak: 1) znak ujemny, bo "1", 2)wartość w polu wykładnika − "−1", 3) przesunięcie kropki o 1 pozycję w lewo (".[b]0[/b]1100" − skąd to zero? dlaczego nie "01.11100"? ) 4) wynik −38 (dlaczego nie "−178"?). Zamiana liczby "zwykłej" na binarną to odwrócenie tego algorytmu, z uwzględnieniem zapisu części ułamkowej od skrajnej lewej (38 to .011, więc nie ".0110" tylko ".1100". Może i problem wyda się śmieszny, jednak potrzebuję pomocy. Są też i inne sposoby zapisu, z innym kodowaniem, jednak taki potrzebuję. Proszę o pomoc. Pozdrawiam
20 gru 12:15