środa, 25 lutego 2009

Liczenie z informatyki

Na ostatnim wykładzie z technologii informacyjnych wiele osób nie zrozumiało konwersji naturalnego kodu dwójkowego. Po dłuższych rozmyślaniach, koleżance Sylwii Lipińskiej udało się rozwikłać problem jak z systemu dwójkowego zrobić prawidłowe obliczenia na system dziesiętny. Oczywiście to nie było AŻ TAK trudne. O wiele większy problem był związany z liczeniem liczb po przecinku. Nasza ekspertka od nauk ścisłych także i ten problem rozwiązała :) Poniżej przedstawiam przykład przez nią rozwiązany, który w dosyć przejrzysty sposób wyjaśnia jak to wszystko powinno się obliczać:


111101,011 - 1(5) 1(4) 1(3) 1(2) 0(1) 1(0) , 0 (-1) 1(-2) 1(-3)
(odpowiedź- -3,375)

Liczba przed myślnikiem to nasz przykład w systemie zero- jedynkowym, liczba po myślniku to przykład rozszerzony o potęgę rosnąca w odpowiedniej kolejności. Pierwsza jedynka (przed przecinkiem) to nasza liczba do zerowej potęgi, po lewo mamy zero z potęgą 1 itd., po przecinku wpisujemy potęgi rosnąco jednak dodając minus. WAŻNE: kiedy pierwszą cyfrą jest "1" to liczba w wyniku będzie ujemna, natomiast kiedy "0" to liczba będzie dodatnia.

Aby otrzymać wynik w systemie dziesiętnym, trzeba wiedzieć w jaki sposób robić obliczenia dążące do uzyskania prawidłowego wyniku. Dla ułatwienia zaprezentuję obliczenia w dwóch częściach:

(przed przecinkiem- 111101)

-32(1x2 do potęgi 5) +16(1x2 do potęgi 4) +8(1x2 do potęgi 3) +4(1x2 do potęgi 2) +1(1x2 do potęgi 0) =-3

Jak widzimy nie pojawiło się działanie "0x2 do potęgi 1", ponieważ zer nie liczymy- interesują nas tylko jedynki.


(po przecinku- 011)

(-4) (1x2 do potęgi -2)+ (-8) (1x2 do potęgi -3) = 1/4 + 1/8 = 2/8 + 1/8 = 3/8 = 0,375


-3 (przed przecinkiem) i 0,375 (po przecinku) daje nam liczbę -3,375

Wynik się zgadza z odpowiedzią podaną przez dr Kazimierza Wyrwę :)

Mam nadzieję, że dosyć czytelnie wyjaśniłam zasady obliczania tego typu przykładów :)
Jeżeli macie jakieś uwagi lub zastrzeżenia piszcie komentarze lub bezpośrednio do mnie na maila matka.teresa88@gmail.com

2 komentarze:

Anonimowy pisze...

-3 + 0,375 = -3,375 musisz to jakos inaczej napisac bo -3 + 0,375 = -2,625 a nie -3,375 ;p;p

tereska pisze...

Ok, dzięki- już poprawiam :)