Reprezentacja liczb w systemie binarnym
Definicja
Dwójkowy system liczbowy zwany również systemem binarnym jest systemem wykorzystującym potęgi liczby 2 użynanym przez prawie wszystkie urządzenia komputerowe lub sterowane przez komputer
System reprezentowany jest przez liczby 0 oraz 1 zwane również bitami. Ciąg 8 bitów jest zwany Bajtem
Przykład liczby binarnej przedstawionej w Jednym Bajcie
00000001(2) = 1(10)
0*2 do potęgi n +...+ 0*2 do potęgi 1 + 1*2 do potęgi 0
Konwersja
(2) => (10)
X*2 do potęgi n +...+ X*2 do potęgi 1 + X*2 do potęgi 0 = XX(10)
(10) => (2)
XX(10) / 2 Reszta z dzielenia => X(2)
Operacje Arytmetyczne
Dodawanie
0001(2) + 0001(2) = 0010 (2) | 1 + 1 = 2(10)
Odejmowanie
0010(2) - 0001(2) = 0001 (2) | 2 - 1 = 1(10)
Kod Stałoprzecinkowy
Jest to sposób zapisu liczby ułamkowej określonej z góry przez ilość bitów dostępnej dla liczby binarnej. Przecinek w liczbie jest ustalany z zależności od wymaganej precyzji
Przykład liczby stałoprzecinkowej
0001,10(2) = 1,5(10)
Dokładność
Błąd zaokrągleń powoduje problemy z konwersją (Liczby dziesiętne w okresie są skończone w systemie binarnym i na odwrót) przez co ostateczna liczba może różnić się od początkowej
Konwersja
(2) => (10)
0001,100(2) = 1,5(10)
0*2 do potęgi n +...+ 0*2 do potęgi 1 + 1*2 do potęgi 0|Przecinek|1*2 do potęgi -1 + 0*2 do potęgi 0
(10) => (2)
0.5(10) = 2 do potęgi -1 = 0.1(2)
Kod Zmiennoprzecinkowy
Jest to dokładniejszy sposób zapisu liczby ułamkowej w systemie binarnym lecz tylko dla liczb niewielkich. Ze wzrostem wartości błąd obliczeń rośnie
Dla systemu binarnego wzór na liczbę zmiennoprzecinkową to X = M * 2 do potęgi W
Gdzie M to Mantysa a W to wykładnik liczny
Przykład liczby zmiennoprzecinkowej
0001(U2) Wykładki = 1(10) i 01,00(U2) mantysa = 1(10)
X = 1 * 2 do potęgi 1
00010100(ZP) = 2
Dokładność
Zwiększający się wykładnik oraz mantysa powoduje coraz większy błąd obliczeń powodując wartości równe kilkunastu znaków po przecinku. System ten z tego powodu jest wykorzystywany do obliczeń dla niewielkich liczb
Żródła
Wikipedia.pl
eduinf.waw.pl
Praca wykonana w ramach zajęć z Narzędzi Informatyki, rok akad. 2015/16