System dwójkowy (nazywany inaczej binarnym) jest najpowszechniej wykorzystywanym pozycyjnym systemem zapisu liczb. Używany jest głównie w informatyce, stanowi bowiem język, jakim posługują się komputery. Każdy program komputerowy - niezależnie od tego w jakim języku programowania napisany - ostatecznie zostaje tak czy inaczej "przetłumaczony" na ciąg zer i jedynek, a zatem zapis w systemie binarnym.
Liczba zapisana w systemie dwójkowym to ciąg zer i jedynek - w jaki sposób możemy dowiedzieć się jaka jest jej wartość w systemie, którego używamy na codzień, tj. w systemie dziesiętnym? Np. jaka jest wartość liczby \(11001 _{2} \)? (Dwójka w indeksie dolnym oznacza zapis binarny)
Przykład:
\(11001 _{2} =1 \cdot 2^4 + 1 \cdot 2^3 + 0 \cdot 2^2 + 0\cdot 2^1 + 1 \cdot 2^0\)
Kolejne cyfry w zapisie \(11001 _{2} \) mnożymy przez podstawę systemu (a zatem w tym wypadku 2) podniesioną do odpowiedniej potęgi. Potęgi te wyznaczamy patrząc od końca - ostatnia jest zerem, a następne kolejnymi liczbami naturalnymi. Liczba \(11001 _{2} \) składa się z pięciu znaków (tj. zer lub jedynek) a zatem najwyższą potęgą dwójki będzie 4 (liczymy od zera, dlatego 4 a nie 5).
\(11001 _{2} =1 \cdot 16 + 1 \cdot 8 + 0 \cdot 4 + 0\cdot 2 + 1 \cdot 1 = 16+8+1=25 _{10} \)
A zatem liczba \(11001 _{2} \) w systemie dwójkowym to \(25 _{10} \) w systemie dziesiętnym.
Jak z kolei przejść z zapisu dziesiętnego na zapis dwójkowy? W tym celu musimy wykonać odpowiednie podzielenie oraz zliczać pojawiające się po drodze reszty z tego dzielenia. Dzielić będziemy przez 2 (bo taka jest podstawa systemu). Reszty zapisujemy - w oparciu o nie będziemy mogli zapisać daną liczbę w systemie binarnym.
W przypadku liczby \(25 _{10} \) podzielonej przez 2 dostaniemy wynik \(12\) oraz resztę \(1\). Następnie dzielimy \(12\) otrzymując \(6\) oraz reszty \(0\). Podzielenie \(6\) również daje nam resztę \(0\) oraz wynik \(3\) - który z kolei po podzieleniu przez 2 zwróci wynik \(1\) oraz resztę również \(1\). Tej ostatniej jedynki już na dwa nie podzielimy - zostaje nam zatem ostatnia reszta - \(1\). Teraz odczytując zapisane reszty "od dołu" otrzymujemy zapis liczby \(25 _{10} \) w systemie dwójkowym: \(11001 _{2} \).