Kalkulator systemów liczbowych z obliczeniami

Kalkulator systemów liczbowych: wpisz liczbę, wybierz system, w którym jest zapisana, i system docelowy. Zamiana jest dokładna nawet dla bardzo dużych liczb, rozpoznaje ułamki okresowe i pokazuje każdy krok: dzielenie z resztą, wagi pozycji i metodę mnożenia.

np. 255, −42, 0,1, FF lub 0x1F – przedrostki 0x, 0b i 0o są dozwolone
Nieskończone rozwinięcia są obcinane po tylu cyfrach
Pokazuje ujemne liczby całkowite jako wzór bitowy; wejście w systemie 2, 8 lub 16 jest czytane jako wzór bitowy
Wpisane dane są zapisywane tylko w tej przeglądarce.

Wynik

Wynik
FF
Dwójkowy (system 2)
1111 1111
Ósemkowy (system 8)
377
Dziesiętny (system 10)
255
Szesnastkowy (system 16)
FF
Obliczenia krok po kroku
  • Część całkowita: dziel wielokrotnie przez 16; każda reszta to kolejna cyfra:
  • 255 ÷ 16 = 15 reszta 15 (F)
  • 15 ÷ 16 = 0 reszta 15 (F)
  • Odczytaj reszty od dołu do góry: FF₁₆

Jak to obliczamy

Jak działają pozycyjne systemy liczbowe?

W systemie o podstawie b każda cyfra jest warta cyfra × bpozycja. W systemie dziesiętnym 255 oznacza 2 × 10² + 5 × 10¹ + 5 × 10⁰. System dwójkowy (binarny) używa tylko 0 i 1, ósemkowy cyfr 0–7, a szesnastkowy 0–9 oraz A–F (A = 10 … F = 15). Podstawy powyżej 10 korzystają z liter, aż do Z = 35 w systemie o podstawie 36.

DziesiętnyDwójkowyÓsemkowySzesnastkowy
10101012A
15111117F
100110 010014464
2551111 1111377FF

Z dowolnego systemu na dziesiętny: suma wag pozycji

Pomnóż każdą cyfrę przez odpowiednią potęgę podstawy i zsumuj: FF₁₆ = 15 × 16¹ + 15 × 16⁰ = 240 + 15 = 255. Cyfry po przecinku mają ujemne potęgi: 0,1₂ = 1 × 2⁻¹ = 0,5.

Z dziesiętnego na dowolny system: dzielenie z resztą

Dziel wielokrotnie przez podstawę systemu docelowego i zapisuj reszty, aż iloraz wyniesie 0. Reszty odczytane od dołu do góry dają wynik. Przykład – zamiana 13 na system dwójkowy:

Od dołu do góry: 13 = 1101₂.

Ułamki: metoda mnożenia i rozwinięcia okresowe

Pomnóż część ułamkową przez podstawę; część całkowita iloczynu to kolejna cyfra, dalej liczysz z pozostałą częścią ułamkową. 0,1 na system dwójkowy: 0,1 × 2 = 0,2 → 0; 0,4 → 0; 0,8 → 0; 1,6 → 1; 1,2 → 1; potem wraca 0,4. Wynik: 0,1 = 0,0(0011)₂ – ułamek okresowy. Dlatego komputery nie potrafią zapisać 0,1 dokładnie.

To, czy rozwinięcie się kończy, zależy tylko od skróconego mianownika: kończy się dokładnie wtedy, gdy każdy czynnik pierwszy mianownika dzieli też podstawę. 1/2 w systemie dwójkowym się kończy (0,1₂); 1/10 nie, bo 5 nie dzieli 2. Kalkulator wyznacza okres dokładnie, ponieważ liczy na liczbach całkowitych (BigInt), a nie zmiennoprzecinkowych.

Liczby ujemne i kod uzupełnień do dwóch (U2)

Na papierze liczba ujemna dostaje po prostu znak minus: −255 = −FF₁₆. Procesory zapisują ją w kodzie U2: zapisz moduł dwójkowo, odwróć wszystkie bity i dodaj 1. −1 na 8 bitach: 0000 0001 → 1111 1110 → 1111 1111. Przy n bitach zakres wynosi od −2ⁿ⁻¹ do 2ⁿ⁻¹ − 1, więc 8 bitów mieści liczby od −128 do 127, a 128 powoduje przepełnienie.

Najczęściej zadawane pytania

Jak zamienić liczbę dziesiętną na dwójkową?

Dziel wielokrotnie przez 2 i zapisuj reszty, aż iloraz wyniesie 0. Reszty odczytane od dołu do góry to liczba dwójkowa: 13 → 6 r1, 3 r0, 1 r1, 0 r1 → 1101.

Jak zamienić system dwójkowy na dziesiętny?

Pomnóż każdą cyfrę przez 2 do potęgi jej pozycji (licząc od 0 z prawej) i zsumuj: 1101₂ = 1 × 8 + 1 × 4 + 0 × 2 + 1 × 1 = 13.

Jak zamienić liczbę szesnastkową na dziesiętną?

Pomnóż każdą cyfrę przez 16 do potęgi jej pozycji (licząc od 0 z prawej) i zsumuj. A–F oznaczają 10–15: 2F₁₆ = 2 × 16 + 15 = 47.

Dlaczego jedna cyfra szesnastkowa odpowiada czterem cyfrom dwójkowym?

Bo 16 = 2⁴. Podziel liczbę dwójkową od prawej na grupy po cztery i zamień każdą grupę: 1111 1111 = F F = FF. System ósemkowy działa tak samo z grupami po trzy, bo 8 = 2³.

Dlaczego 0,1 w systemie dwójkowym jest ułamkiem okresowym?

0,1 = 1/10, a 10 ma czynnik pierwszy 5, którego nie ma podstawa 2. Takie ułamki nigdy się nie kończą w zapisie dwójkowym: 0,1 = 0,000110011…₂. Dlatego w większości języków programowania 0,1 + 0,2 nie daje dokładnie 0,3.

Co to jest kod U2?

Kod uzupełnień do dwóch to standardowy sposób zapisu ujemnych liczb całkowitych w komputerze: zapisz moduł dwójkowo, odwróć wszystkie bity i dodaj 1. −1 na 8 bitach to 1111 1111 (FF). Wartość 8-bitowa mieści się w zakresie od −128 do 127.

Źródła i podstawa prawna

Stan na:

Podobne narzędzia