Systemy liczbowe – binarny, ósemkowy, dziesiętny, szesnastkowy

Liczby można zapisywać na wiele sposobów – w zależności od wybranej podstawy systemu. My na co dzień używamy systemu dziesiętnego z podstawą 10, ale komputery operują na systemie dwójkowym z podstawą 2. Programiści często posługują się też szesnastkowym (hex) i ósemkowym. Zrozumienie tych systemów to fundament informatyki i elektroniki.

Co to jest system liczbowy i podstawa

System liczbowy to sposób reprezentowania liczb za pomocą symboli (cyfr). Kluczowym parametrem jest podstawa (baza) – liczba różnych cyfr używanych w tym systemie.

Zasada działania: W systemie o podstawie b cyfry mają wartości od 0 do b−1. Każda pozycja od prawej oznacza kolejną potęgę podstawy:

Liczba 425 w systemie dziesiętnym = 4×10² + 2×10¹ + 5×10⁰ = 400 + 20 + 5

Tę samą zasadę stosuje się do każdego systemu – zmienia się tylko podstawa i dostępne cyfry.

System dziesiętny (podstawa 10)

System, którego używamy na co dzień. Cyfry: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Prawdopodobnie rozwinął się dlatego, że człowiek ma 10 palców – choć to tylko hipoteza. Historycznie istniały cywilizacje posługujące się systemami dwunastkowymi, dwudziestkowymi (Majowie) czy sześćdziesiątkowymi (Babilończycy – stąd 60 sekund w minucie i 360 stopni w kole).

System binarny (dwójkowy, podstawa 2)

Używa tylko dwóch cyfr: 0 i 1. Jest podstawą działania wszystkich współczesnych komputerów, ponieważ doskonale odpowiada dwóm stanom fizycznym: napięcie wysokie / napięcie niskie, magnetyzacja / brak magnetyzacji, zapalony / zgaszony.

Dziesiętne 13 w binarnym:
13 = 8 + 4 + 1 = 1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 1101₂

Sprawdzenie: 1×8 + 1×4 + 0×2 + 1×1 = 8+4+0+1 = 13 ✓

Bity i bajty

Pojedyncza cyfra binarna (0 lub 1) to bit – najmniejsza jednostka informacji. 8 bitów tworzy bajt. Bajt może przechować wartości od 0 (00000000₂) do 255 (11111111₂). To dlatego piksel w grafice RGB ma składowe od 0 do 255 dla każdego kanału koloru.

System ósemkowy (oktalny, podstawa 8)

Używa cyfr od 0 do 7. Był popularny we wczesnych komputerach, gdzie grupy 3 bitów wygodnie mapowały się na jedną cyfrę ósemkową. Dziś spotykany głównie w uprawnieniach plików w systemach Unix/Linux.

Uprawnienia pliku w Unix:
chmod 755 plik.sh
7 = 111₂ (właściciel: czytaj+pisz+wykonaj)
5 = 101₂ (grupa: czytaj+wykonaj)
5 = 101₂ (inni: czytaj+wykonaj)

Każda cyfra ósemkowa odpowiada dokładnie 3 bitom, co sprawia, że konwersja między systemem ósemkowym a binarnym jest wyjątkowo prosta.

System szesnastkowy (heksadecymalny, podstawa 16)

Używa 16 symboli: cyfry 0–9 oraz litery A–F (gdzie A=10, B=11, C=12, D=13, E=14, F=15). Jedna cyfra hex odpowiada dokładnie 4 bitom (tzw. nibble), a dwie cyfry hex – jednemu bajtowi. To sprawia, że zapis szesnastkowy jest bardzo zwięzły i czytelny dla programistów.

Dziesiętne 255 w hex:
255 = 15×16¹ + 15×16⁰ = FF₁₆

Dziesiętne 4096 w hex:
4096 = 1×16³ = 1000₁₆

Gdzie hex jest używany na co dzień

  • Kolory CSS: #FF5733 to kolor czerwono-pomarańczowy (R=255, G=87, B=51)
  • Adresy MAC: 00:1A:2B:3C:4D:5E – adresy kart sieciowych
  • Adresy pamięci: debuggery i edytory hex pokazują adresy w formacie 0x7FFF0000
  • Kody błędów Windows: BSOD z kodem 0x0000007E
  • Skróty kryptograficzne: SHA-256, MD5 – wyniki są zapisywane jako ciągi hex

Tabela konwersji – pierwsze 16 liczb

Dziesiętny Binarny Ósemkowy Szesnastkowy
0000000
1000111
2001022
3001133
4010044
5010155
6011066
7011177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

Jak ręcznie przeliczać między systemami

Dowolny system → dziesiętny

Mnożysz każdą cyfrę przez odpowiednią potęgę podstawy i sumujesz wyniki.

1A3₁₆ (hex) → dziesiętny:
1×16² + A×16¹ + 3×16⁰
= 1×256 + 10×16 + 3×1
= 256 + 160 + 3 = 419

Dziesiętny → dowolny system (metoda dzielenia)

Dzielisz liczbę przez podstawę, zapisujesz reszty od dołu do góry.

419 → hex:
419 ÷ 16 = 26, reszta 3
26 ÷ 16 = 1, reszta 10 (= A)
1 ÷ 16 = 0, reszta 1
Czytamy reszty od dołu: 1A3₁₆

Binarny ↔ hex (skrót)

Ponieważ 4 bity = 1 cyfra hex, konwersja jest błyskawiczna: dzielisz bity na grupy po 4 (od prawej) i każdą grupę zamieniasz na cyfrę hex.

10110111₂ → hex:
1011 | 0111
B | 7
Wynik: B7₁₆

Chcesz szybko przeliczyć liczbę między systemami liczbowymi?

Otwórz konwerter systemów liczbowych →

Podsumowanie

Cztery podstawowe systemy liczbowe używane w informatyce to: dziesiętny (codzienny), binarny (komputery – 0 i 1), ósemkowy (uprawnienia Unix, starsze systemy) i szesnastkowy (kolory, adresy pamięci, kryptografia). Każda cyfra hex odpowiada 4 bitom, co sprawia że hex jest wygodnym skrótem do zapisu danych binarnych. Konwerter online przelicza liczby między wszystkimi systemami natychmiast – wystarczy wpisać liczbę i wybrać systemy wejściowy i wyjściowy.