Czym jest podstawa systemu liczbowego?

Podstawa systemu liczbowego, nazywana też radiksem, to liczba cyfr używanych w danym systemie. System dziesiętny, używany na co dzień, ma dziesięć cyfr: od 0 do 9. Każda pozycja ma wartość dziesięciokrotnie większą niż pozycja po jej prawej stronie. Komputery działają w systemie binarnym, który używa tylko cyfr 0 i 1, więc każda pozycja ma wartość dwukrotnie większą niż pozycja po jej prawej stronie. System ósemkowy, używający cyfr od 0 do 7, oraz szesnastkowy, używający cyfr od 0 do 9 i liter od A do F dla wartości od 10 do 15, to krótkie sposoby zapisu liczb binarnych: jedna cyfra ósemkowa odpowiada dokładnie 3 bitom, a jedna cyfra szesnastkowa — dokładnie 4 bitom, dlatego bajt zawsze zapisuje się za pomocą dwóch cyfr szesnastkowych.

Oto ta sama liczba zapisana w różnych systemach:

Dziesiętny Binarny Ósemkowy Szesnastkowy
10 1010 12 A
42 101010 52 2A
255 11111111 377 FF
1000 1111101000 1750 3E8
65535 1111111111111111 177777 FFFF
-42 -101010 -52 -2A

Zastosowania poszczególnych systemów

  • Binarny: bity, flagi, maski bitowe i maski podsieci, takie jak 255.255.255.0, która składa się z 24 jedynek, po których następuje 8 zer.
  • Ósemkowy: uprawnienia do plików w systemie Unix, na przykład chmod 755, gdzie każda cyfra odpowiada trzem bitom uprawnień.
  • Dziesiętny: liczby używane na co dzień.
  • Szesnastkowy: kolory, takie jak #FF6600, wartości bajtów, adresy pamięci, adresy MAC i punkty kodowe Unicode, takie jak U+00E9.

Opis narzędzia

To narzędzie konwertuje liczby całkowite między systemami binarnym, ósemkowym, dziesiętnym i szesnastkowym. Wszystkie dostępne tu konwertery systemów liczbowych działają tak samo — od ogólnego konwertera systemów liczbowych po narzędzia obsługujące jedną parę systemów, takie jak konwerter z systemu dziesiętnego na binarny lub z szesnastkowego na dziesiętny: narzędzie początkowo używa systemów wskazanych w nazwie, a menu Źródło i Cel pozwalają wybrać dowolny z tych czterech systemów. Wpisz lub wklej liczbę, a wynik pojawi się podczas pisania i będzie gotowy do skopiowania. Cyfra, której nie ma w danym systemie, na przykład 2 w liczbie binarnej, spowoduje wyświetlenie błędu. Przycisk zamiany odwraca kierunek konwersji.

Jak to działa

Narzędzie odczytuje liczbę jako JavaScript BigInt — liczbę całkowitą bez ograniczenia rozmiaru — dzięki czemu wartości 64-bitowe i większe są konwertowane dokładnie, bez zaokrąglania: FFFFFFFFFFFFFFFF w systemie szesnastkowym to 18446744073709551615 w systemie dziesiętnym. Akceptowane są:

  • Znak minus na początku, który jest zachowywany w wyniku: -42 w systemie dziesiętnym to -101010 w binarnym.
  • Prefiksy używane w kodzie: 0b dla systemu binarnego, 0o dla ósemkowego i 0x dla szesnastkowego, więc 0x1F jest konwertowane na 31.
  • Spacje i podkreślenia między grupami cyfr, na przykład 1111 0000 lub 1_000_000.
  • Litery szesnastkowe zapisane wielkimi lub małymi literami. Wyniki są zapisywane wielkimi literami.

Konwertowane są wyłącznie liczby całkowite, więc liczba zawierająca separator dziesiętny spowoduje wyświetlenie błędu.