Dwójkowy system liczbowy


Dwójkowy system liczbowy w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania Dwójkowy zegarek pokazujący godzinę 3:25

Dwójkowy system liczbowy lub też system binarny (NKB - naturalny kod binarny) – pozycyjny system liczbowy, w którym podstawą jest liczba 2, a do zapisu liczb potrzebne są tylko dwie cyfry: 0 i 1.

Spis treści

Historia | edytuj kod

Używał go już John Napier w XVI wieku, przy czym 0 i 1 zapisywał jako a i b[1]. Ojcem nowoczesnego systemu binarnego nazywany jest Gottfried Wilhelm Leibniz[2], autor opublikowanego w 1703 roku artykułu Explication de l’Arithmétique Binaire.

Zastosowanie | edytuj kod

Powszechnie używany w elektronice cyfrowej, gdzie minimalizacja liczby stanów (do dwóch) pozwala na prostą implementację sprzętową odpowiadającą zazwyczaj stanom wyłączony i włączony oraz zminimalizowanie przekłamań danych[2]. System binarny przyjął się również w informatyce.

Jak w każdym pozycyjnym systemie liczbowym, liczby zapisuje się tu jako ciągi cyfr, z których każda jest mnożną kolejnej potęgi podstawy systemu.

Np. liczba zapisana w dziesiętnym systemie liczbowym jako 10, w systemie dwójkowym przybiera postać 1010, gdyż:

1 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 8 + 2 = 10. {\displaystyle 1\cdot 2^{3}+0\cdot 2^{2}+1\cdot 2^{1}+0\cdot 2^{0}=8+2=10.}

Liczby w systemach niedziesiętnych oznacza się czasami indeksem dolnym zapisanym w systemie dziesiętnym, a oznaczającym podstawę danego systemu. W celu podkreślenia, że liczba jest dziesiętna można również napisać obok niej indeks. Np.

10101 2 = 21 10 {\displaystyle 10101_{2}=21_{10}}

W systemie dwójkowym można przedstawiać również liczby rzeczywiste. Na przykład liczby dziesiętne o podstawie 2 można zapisać jako:

0 , 101 2 = 0 2 0 + 1 2 1 + 0 2 2 + 1 2 3 = 0 , 625 10 {\displaystyle 0,101_{2}=0\cdot 2^{0}+1\cdot 2^{-1}+0\cdot 2^{-2}+1\cdot 2^{-3}=0,625_{10}} 0 , 00 ( 1001 ) 2 = 0 , 15 10 {\displaystyle 0,00(1001)_{2}=0,15_{10}} 0 , 28 10 = 0 , ( 01000111101011100001 ) 2 {\displaystyle 0,28_{10}=0,(01000111101011100001)_{2}}

ułamek zwykły:

101 2 111 2 = 5 10 7 10 = 0 , ( 101 ) 2 = 0 , ( 714285 ) 10 {\displaystyle {\frac {101_{2}}{111_{2}}}={\frac {5_{10}}{7_{10}}}=0,(101)_{2}=0,(714285)_{10}}

(nawiasem oznaczono okres ułamka)

Liczby niewymierne mają rozwinięcie nieokresowe w każdym systemie pozycyjnym:

2 10 = 10 2 = 1 , 0110101000001001111001100110011111110 2 {\displaystyle {\sqrt {2_{10}}}={\sqrt {10_{2}}}=1,0110101000001001111001100110011111110\dots _{2}}

Zmiany systemu | edytuj kod

Zamianę z systemu dwójkowego na inny można wykonać poprzez zapisanie liczby jako sumy potęg liczby 2 pomnożonych przez wartość cyfry w systemie, na który przekształcamy. Przykładowo przy zamianie liczby na system dziesiętny:

11110 2 = 1 2 4 + 1 2 3 + 1 2 2 + 1 2 1 + 0 2 0 = {\displaystyle 11110_{2}=1\cdot 2^{4}+1\cdot 2^{3}+1\cdot 2^{2}+1\cdot 2^{1}+0\cdot 2^{0}=}
= 1 16 + 1 8 + 1 4 + 1 2 + 0 1 = 16 + 8 + 4 + 2 = 30 {\displaystyle =1\cdot 16+1\cdot 8+1\cdot 4+1\cdot 2+0\cdot 1=16+8+4+2=30}

Cyfra 1 podobnie jak w systemie dziesiętnym ma wartość zależną od swojej pozycji – na końcu oznacza 1, na drugiej pozycji od końca 2, na trzeciej 4, na czwartej 8 itd.

Ponieważ 0 2 n = 0 {\displaystyle 0\cdot 2^{n}=0} oraz 1 2 n = 2 n , {\displaystyle 1\cdot 2^{n}=2^{n},} aby obliczyć wartość liczby zapisanej dwójkowo, wystarczy zsumować potęgi dwójki odpowiadające cyfrom 1 w zapisie.

Zamiana liczby w systemie dziesiętnym na liczbę w systemie dwójkowym może przebiegać według wyżej opisanej zasady, czyli:

30 10 = ( 3 10 + 0 1 ) 10 = ( 11 1010 + 0 1 ) 2 = 11110 2 {\displaystyle 30_{10}=(3*10+0*1)_{10}=(11*1010+0*1)_{2}=11110_{2}}

Rozbicie na sumę potęg liczby 2 na przykład

30 10 = ( 16 + 8 + 4 + 2 ) 10 = ( 10000 + 1000 + 100 + 10 ) 2 = 11110 2 {\displaystyle 30_{10}=(16+8+4+2)_{10}=(10000+1000+100+10)_{2}=11110_{2}}

Bądź też przez wyznaczanie reszt w wyniku kolejnych dzieleń liczby przez 2:

30 2 = 15 {\displaystyle {\tfrac {30}{2}}=15} reszty 0 – 0 to cyfra jedności, 15 2 = 7 {\displaystyle {\tfrac {15}{2}}=7} reszty 1 – 1 to cyfra drugiego rzędu, 7 2 = 3 {\displaystyle {\tfrac {7}{2}}=3} reszty 1, 3 2 = 1 {\displaystyle {\tfrac {3}{2}}=1} reszty 1, 1 2 = 0 {\displaystyle {\tfrac {1}{2}}=0} reszty 1.

Aby obliczyć wartość dwójkową liczby przepisujemy od końca cyfry reszt. Tak więc 30 10 = 11110 2 {\displaystyle 30_{10}=11110_{2}} .

Działania na liczbach w systemie dwójkowym | edytuj kod

Działania na liczbach w systemie dwójkowym są odpowiednikiem działań w systemie dziesiętnym i opierają się na elementarnych działaniach:

  • 1 + 0 = 1 {\displaystyle 1+0=1}
  • 1 + 1 = 10 {\displaystyle 1+1=10}
  • 1 0 = 0 {\displaystyle 1*0=0}
  • 1 1 = 1 {\displaystyle 1*1=1}
  • 10 1 = 1 {\displaystyle 10-1=1}

Przykład dodawania w systemie dwójkowym.

 111111 1111111 + 10011 10010010 

Przykład odejmowania w systemie dwójkowym:

 1111111 - 10011 1101100 

A w takiej sytuacji pożyczamy jedynkę:

 11101 - 10110 00111 

(zera z lewej strony można wykreślić).

Mnożenie i dzielenie wykonuje się w systemie dwójkowym także podobnie jak w systemie dziesiętnym.

Zobacz też | edytuj kod

Pochodne kodowania liczb całkowitych:

Przypisy | edytuj kod

  1. Human choice and computers, 2002, ISBN 1-4020-7185-X .
  2. a b EdwardE. Kofler EdwardE., Z dziejów matematyki, Warszawa: Wiedza Powszechna, 1956, s. 27 .
Kontrola autorytatywna (system pozycyjny):
Na podstawie artykułu: "Dwójkowy system liczbowy" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy