Krótka odpowiedź
Binarny to podstawa 2: każda cyfra (bit) to 0 lub 1, a każda pozycja reprezentuje potęgę dwójki. 1010 w systemie binarnym równa się 1×8 + 0×4 + 1×2 + 0×1 = 10 w systemie dziesiętnym. Kalkulator ten obsługuje arytmetykę binarną, logikę bitową (AND, OR, XOR, NOT), przesunięcia bitowe i natychmiastową konwersję na liczby dziesiętne, szesnastkowe i ósemkowe.
Kluczowe wnioski
- Wartości są ograniczone do 32-bitowego zakresu liczb całkowitych ze znakiem (od -2 147 483 648 do 2 147 483 647) — ciągi binarne spoza tego zakresu są raczej odrzucane niż dyskretnie obcinane.
- Bitowe AND/OR/XOR porównują liczby krok po kroku i nie są tym samym, co arytmetyczne dodawanie lub mnożenie — 1010 AND 0110 równa się 0010, a nie 16.
- Przesunięcie w lewo o n jest równoznaczne z pomnożeniem przez 2ⁿ; przesunięcie w prawo o n jest równoważne dzieleniu liczb całkowitych (podłogi) przez 2ⁿ.
- Każda cyfra szesnastkowa odpowiada dokładnie 4 bitom binarnym, co sprawia, że konwersja szesnastkowa na binarną jest mechaniczna, gdy znasz 16 czterobitowych wzorców.
Jak działa binarna wartość miejsca
Podobnie jak wartość miejsca dziesiętnego wykorzystuje potęgę dziesięciu, tak wartość miejsca binarnego wykorzystuje potęgę dwójki. Odczytywanie 8-bitowej liczby 10110101 od prawej do lewej:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
Dodaj wartości pozycji, gdzie jest 1: 128 + 32 + 16 + 4 + 1 = 181. Zatem binarnie 10110101 równa się dziesiętnemu 181.
Operacje bitowe a operacje arytmetyczne
| Działanie | Co to robi | Przykład |
|---|---|---|
| AND (&) | 1 tylko wtedy, gdy oba bity mają wartość 1 | 1010 & 0110 = 0010 |
| OR (|) | 1, gdzie którykolwiek bit ma wartość 1 | 1010 | 0110 = 1110 |
| XOR (^) | 1, gdzie bity się różnią | 1010 ^ 0110 = 1100 |
| Przesunięcie w lewo (<<) | Przesuń bity w lewo, wypełnij 0 (×2ⁿ) | 0011 << 2 = 1100 |
| Przesunięcie w prawo (>>) | Przesuń bity w prawo (÷2ⁿ, zaokrąglone w dół) | 1100 >> 2 = 0011 |
Operacje bitowe porównują lub przesuwają poszczególne bity — nie przenoszą między pozycjami w taki sposób, jak robi to dodawanie, dlatego 1010 AND 0110 kończy się na 0010, a nie na czymkolwiek przypominającym sumę.
Typowe błędy, których należy unikać
- Traktując bitowe AND/OR tak, jakby były arytmetycznym dodawaniem lub mnożeniem — działają krok po kroku, bez przenoszenia.
- Zapominając o 32-bitowym ograniczeniu zakresu ze znakiem — ciąg binarny składający się z więcej niż 31 jedynek spowoduje przekroczenie obsługiwanego zakresu i zwrócenie błędu.
- Oczekując, że bitowe NIE po prostu odwróci wydrukowane cyfry — w reprezentacji uzupełnienia do dwóch, NIE-wpisanie liczby dodatniej daje liczbę ujemną, a nie proste odwrócenie cyfr.
- Zakładając rundy z przesunięciem w prawo — obcina (podłogi) w kierunku ujemnej nieskończoności dla liczb ujemnych, więc 7 >> 1 = 3, a nie 3,5 lub 4.
Powiązane kalkulatory
- Kalkulator szesnastkowy — pracuj bezpośrednio w systemie szesnastkowym z tymi samymi konwersjami i operacjami.
- Kalkulator wykładników — sprawdź potęgę dwójki za każdą pozycją i przesunięciem bitu.
- Kalkulator dużych liczb — wykraczać poza zakres 32-bitowy dzięki arytmetyce o dowolnej precyzji.
- Kalkulator naukowy — obsługiwać ogólną matematykę wykraczającą poza konwersje na podstawie liczb.