Otwórz sobie drzwi do kariery programisty     |        Wybierz swoją ścieżkę kariery w IT!     |       Zacznij naukę z 30% rabatem

1 dni 20 godzin
close
Cart icon
User menu icon
User icon
Skontaktuj się z nami:
+48 888-916-333
Lightbulb icon
Jak to działa?
FAQ icon
FAQ
Contact icon
Kontakt
Terms of service icon
Regulamin zakupów
Privacy policy icon
Polityka prywatności
Zdjęcie główne artykułu.

Wprowadzenie do systemów liczbowych

System liczbowy to nic innego jak pewien sposób zapisu liczb. Spójrz:

45

Ta liczba to 45 w systemie dziesiętnym. System dziesiętny każdy z nas dobrze zna bo używamy go na codzień. Taki system ma swoje reguły, które decydują o tym jak zapisujemy liczby, jak je odczytujemy, jak wykonujemy na nich różne operacje itd.

Oprócz systemu dziesiętnego mamy też system binarny, szesnastkowy, ósemkowy, trójkowy oraz wiele innych.

Pewnie zadajesz sobie pytanie: dlaczego mam się uczyć innych systemów poza dziesiętnym? Czy znajomość np. systemu binarnego albo szesnastkowego przyda mi się w praktyce?

Systemy liczbowe w praktyce

Są sytuacje gdy znajomość dodatkowego systemu może się przydać. Na przykład w CSS do określania kolorów używamy często systemu szesnastkowego. Albo może się zdarzyć, że będziesz pisać niskopoziomowe oprogramowanie, które bezpośrednio operuje na binarnych (dwójkowych) wartościach.

W takich specjalistycznych zastosowaniach znajomość różnych systemów liczbowych może być po prostu niezbędna.

Może więc teraz popatrzmy na charakterystyczne cechy kilku popularnych systemów.

Dziesiętny - najbardziej naturalny dla ludzi

Podstawą systemu dziesiętnego jest…liczba 10. Tu nie ma nic zaskakującego. Każda liczba w tym systemie jest zbudowana z cyfr należących do zbioru 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Każdą liczbę możesz zapisać mnożąc cyfry przez kolejne potęgi liczby 10. Przykład:

45 = 4 * 10^1 + 5*10^0

45 = 40 + 5

System dziesiętny jest dla nas naturalny. Każdy z nas ma z nim do czynienia na co dzień.

Binarny - podstawa dla komputera

Komputery nie rozumieją systemu dziesiętnego. A przynajmniej nie mogą z nim pracować bezpośrednio. U podstaw każdy komputer pracuje w systemie binarnym (inaczej mówiąc - dwójkowym). Przejdźmy od razu do przykładu.

101101 w systemie dwójkowym to nasza liczba 45 w systemie dziesiętnym. Jak sama nazwa sugeruje w systemie dwójkowym podstawą jest liczba 2. Wszystkie cyfry należą do zbioru 0, 1. Spróbujemy więc teraz zapisać naszą binarną liczbę w postaci kolejnych potęg.

101101 = 1 * 2^5 + 0 * 2^4 + 1 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0

Teraz dodajmy wyniki:

32 + 0 + 8 + 4 + 0 + 1 = 45

Czyli otrzymamy 45 w systemie dziesiętnym! Wszystko się zgadza. Jak widzisz konwersja z systemu binarnego na dziesiętny nie jest jakąś super skomplikowaną rzeczą.

Konwersja

Z jednym strony mówimy o tym, że komputery liczą w systemie dwójkowym. Z drugiej strony nie oznacza to że każdą liczbę musisz konwertować do systemu dwójkowego. W praktyce podczas uruchamiania programów taka konwersja zostanie wykonana “niejawnie” za pomocą wbudowanych, wewnętrznych mechanizmów. Można być więc programistą nie wychodząc kompletnie poza system dziesiętny.

Są jednak sytuacje gdy musimy pracować na niskim poziomie, bezpośrednio operując na przykład w systemie binarnym. Takie rzeczy często się spotyka podczas programowania obwodów cyfrowych, podczas pisania sterowników oraz w wielu innych dziedzinach.

Po prostu na pewnym etapie umiejętność pracy z takimi wartościami oraz umiejętność wykonywania konwersji pomiędzy różnymi systemami może być bardzo przydatna.

System heksadecymalny (szesnastkowy)

Zajmijmy się przez chwilę jeszcze jednym, dość popularnym systemem. System heksadecymalny bazuje na liczbie 16. I teraz pojawia się pytanie - jak zapisać liczby skoro mamy cyfry wyłącznie od 0 do 9?

Rozwiązanie jest proste. Dla cyfr powyżej 9 używamy liter od A do F. Ostatecznie mamy do dyspozycji cyfry 0 - 9 oraz litery A - F a to daje nam 16 różnych elementów.

Wróćmy do naszej dziesiętnej liczby 45. W systemie szesnastkowym będzie ona wyglądała tak: 2D.

Ten system ma swoje różne zastosowania. Dobrym przykładem są kolory w CSS, które często się zapisuje właśnie w systemie szesnastkowym. Oto kilka przykładów:

FFFFFF - kolor biały

000000 - kolor czarny

Jest wiele sytuacji, w których znajomość popularnych systemów liczbowych może być bardzo przydatna. Zdobądź obszerną wiedzę na ten temat z kursem Codenga.