Systemy liczbowe

Porównaj obliczenia

Pobierz

Zawiera Twoje dane wejściowe i wyniki tego obliczenia, a także wszelkie dodatkowe obliczenia, które porównałeś.

Zapisywanie Tej Samej Wartości w Systemie Binarnym, Ósemkowym, Dziesiętnym i Szesnastkowym

Podstawa liczbowa (lub „radix”) to liczba odrębnych cyfr, jakich używa system liczbowy, zanim przejdzie na kolejną wartość pozycyjną — system dziesiętny używa 10 (0–9), binarny używa 2 (0–1), ósemkowy używa 8 (0–7), a szesnastkowy używa 16 (0–9, a następnie A–F). Podaj liczbę całkowitą w dowolnej z tych czterech podstaw, a ten kalkulator pokaże tę samą wartość zapisaną we wszystkich czterech naraz.

System binarny to sposób, w jaki komputery wewnętrznie przedstawiają każdą wartość (każda cyfra to jeden „bit”); system szesnastkowy to popularny skrót dla systemu binarnego w programowaniu (każda cyfra szesnastkowa zastępuje dokładnie 4 cyfry binarne, więc jest znacznie bardziej zwięzła do czytania i wpisywania); system ósemkowy pojawia się w starszych uprawnieniach plików Unix i niektórych kontekstach niskopoziomowych. System dziesiętny to po prostu codzienny system o podstawie 10.

Wzór

Każdy pozycyjny system liczbowy działa tak samo: każda cyfra jest mnożona przez podstawę podniesioną do jej potęgi wartości pozycyjnej, a następnie sumowana:

Wartosˊcˊ=i=0ndi×Podstawai\vA{\text{Wartość}} = \sum_{i=0}^{n} d_i \times \vB{\text{Podstawa}}^i

gdzie did_i to cyfra na pozycji ii (licząc od 0 od najbardziej prawej cyfry). Przeliczanie na inną podstawę wielokrotnie dzieli wartość dziesiętną przez nową podstawę, zapisując każdą resztę — odwrotność powyższej sumy.

Przykład obliczeniowy

Przeliczanie liczby binarnej 11111111 na pozostałe trzy podstawy:

  1. Czytając od prawej do lewej, każda 1 wnosi swoją wartość pozycyjną: 27+26+25+24+23+22+21+20=2552^7 + 2^6 + 2^5 + 2^4 + 2^3 + 2^2 + 2^1 + 2^0 = 255.
  2. Dziesiętnie: 255.
  3. Ósemkowo: wielokrotne dzielenie 255 przez 8 (255 ÷ 8 = 31 r7, 31 ÷ 8 = 3 r7, 3 ÷ 8 = 0 r3) daje odczytane od dołu do góry reszty: 377.
  4. Szesnastkowo: 255 ÷ 16 = 15 r15, 15 ÷ 16 = 0 r15 — obie reszty to 15 (F w systemie szesnastkowym), co daje FF.

Kluczowe czynniki do rozważenia

  • Pojedynczy bajt (8 bitów) może przedstawiać dokładnie 256 różnych wartości — od 0 do 255 w systemie dziesiętnym, lub od 00 do FF w systemie szesnastkowym. To dokładnie dlatego 255/FF jest tak powszechną wartością referencyjną w informatyce — to maksymalna wartość, jaką może przechowywać pojedynczy bajt, co pojawia się wszędzie, od kanałów kolorów RGB (0-255 na kanał) po sieci i formaty plików.
  • System ósemkowy był historycznie bardziej powszechny niż dzisiaj, głównie z powodu starszych rozmiarów słowa komputerowego. System ósemkowy (podstawa 8) mapuje się dokładnie na grupy 3 cyfr binarnych, co pasowało do komputerów zbudowanych wokół rozmiarów słowa podzielnych przez 3 bity — współczesna informatyka w dużej mierze przeszła na system szesnastkowy (który mapuje się na grupy 4 bitów), ponieważ większość nowoczesnego sprzętu używa rozmiarów słowa podzielnych przez 4 i 8, choć system ósemkowy nadal pojawia się w konkretnych kontekstach, jak notacja uprawnień plików Unix (np. chmod 755).
  • Częstym błędem programisty jest mylenie podstawy liczby wyłącznie na podstawie kontekstu. Cyfry „10” oznaczają bardzo różne wartości w zależności od podstawy — 10 w systemie dziesiętnym, 2 w binarnym, 8 w ósemkowym, 16 w szesnastkowym — dlatego języki programowania zwykle wymagają jawnego przedrostka (jak 0x dla szesnastkowego lub 0b dla binarnego), aby usunąć wszelką niejednoznaczność co do zamierzonej podstawy.
  • Każdą liczbę całkowitą można teoretycznie przedstawić w DOWOLNEJ podstawie, nie tylko w tych czterech. Binarny, ósemkowy, dziesiętny i szesnastkowy to po prostu cztery podstawy o najczęstszym rzeczywistym zastosowaniu w informatyce i codziennej matematyce — ta sama zasada notacji pozycyjnej, z której korzysta ten kalkulator, rozciąga się na dowolną podstawę, jak podstawa 3, podstawa 20 czy podstawa 60 (podstawa tradycyjnego podziału czasu i kątów).

Częste Błędy

  • Odczytywanie liczby o mieszanej podstawie bez przedrostka domyślnie jako dziesiętnej. „10” oznacza dziesięć w systemie dziesiętnym, ale tylko dwa w binarnym — zawsze sprawdź (lub podaj), w jakiej podstawie zapisano liczbę, zanim wykonasz na niej obliczenia.
  • Zakładanie, że wiodące zera zmieniają wartość. Podobnie jak w systemie dziesiętnym, 0011 w systemie binarnym to ta sama wartość co 11 — wiodące zera mają znaczenie tylko przy formatowaniu o stałej szerokości (np. wyświetlaniu pełnego bajtu), a nie dla rzeczywistej wartości liczby.
  • Zapominanie, że cyfry szesnastkowe powyżej 9 używają liter, a nie liczb dwucyfrowych. Szesnastkowa dziesiątka zapisywana jest jako A, a nie 10 — zapisanie 10 w systemie szesnastkowym oznacza w rzeczywistości szesnaście w systemie dziesiętnym, co jest częstym źródłem poważnych błędów.
  • Próba bezpośredniego przeliczenia liczby ujemnej. Jak wspomina powyższe FAQ, ujemne wartości binarne/szesnastkowe zależą od wybranej szerokości bitowej i konwencji uzupełnienia do dwóch — nie istnieje jedno jednoznaczne przeliczenie, jak w przypadku liczb całkowitych nieujemnych.

Warto Wiedzieć

  • Pracujesz z adresami sieciowymi zamiast dowolnych liczb? Kalkulator podsieci IP stosuje tę samą zależność binarno-dziesiętną specjalnie do adresów IPv4.
  • Potrzebujesz bardzo dużych lub bardzo małych liczb dziesiętnych w zwartej formie? Kalkulator notacji naukowej obsługuje zamiast tego ten rodzaj konwersji.
  • Ciekawi Cię znacznie starszy, pokrewny pozycyjnie system numeracji? Kalkulator liczb rzymskich przelicza na i z liczb rzymskich, które używają zupełnie innego (niepozycyjnego) podejścia.

Źródło: Standardowe przeliczanie pozycyjnych systemów liczbowych.

Najczęściej zadawane pytania

Czym jest podstawa liczbowa (radix)?

Podstawa liczbowa to liczba odrębnych cyfr, jakich używa system liczbowy, zanim przejdzie na kolejną wartość pozycyjną. Dziesiętny (podstawa 10) używa cyfr 0-9; binarny (podstawa 2) używa tylko 0 i 1; ósemkowy (podstawa 8) używa 0-7; szesnastkowy (podstawa 16) używa 0-9, a następnie liter A-F do przedstawienia 10-15.

Dlaczego komputery używają systemu binarnego?

Sprzęt komputerowy zbudowany jest z przełączników, które są zawsze albo całkowicie włączone, albo całkowicie wyłączone, co naturalnie odpowiada dwóm cyfrom systemu binarnego (1 i 0). Każda wartość, którą komputer przechowuje lub przetwarza, jest ostatecznie przedstawiana w systemie binarnym, mimo że programiści zwykle pracują z bardziej czytelnymi dla człowieka podstawami, jak dziesiętna czy szesnastkowa.

Dlaczego w programowaniu zamiast systemu binarnego używa się szesnastkowego?

Każda cyfra szesnastkowa przedstawia dokładnie 4 cyfry binarne (bity), więc liczba szesnastkowa ma około jednej czwartej długości równoważnej liczby binarnej, przedstawiając dokładnie tę samą wartość — znacznie łatwiej ją czytać, wpisywać i porównywać niż długi ciąg jedynek i zer.

Czy ten kalkulator obsługuje liczby ujemne?

Nie — przedstawienie liczby ujemnej w systemie binarnym lub szesnastkowym wymaga wyboru stałej szerokości bitowej i konwencji uzupełnienia do dwóch, która różni się w zależności od kontekstu (8-bitowa, 16-bitowa, 32-bitowa itd.). Ten kalkulator jest ograniczony do nieujemnych liczb całkowitych, gdzie przeliczenie jest jednoznaczne.

Potwierdź swój wiek

Aby założyć konto, podaj miesiąc i rok urodzenia.