Kalkulator Bitowy
FreeWykonuj operacje AND, OR, XOR, NAND, NOR, XNOR, NOT, i przesunięcia bitowe na liczbach binarnych, ósemkowych, dziesiętnych, lub szesnastkowych.
Operacja bitowa
Ostatnia Aktywność
Widoczne dla wszystkich. Ostatnie 20 użyć wśród wszystkich odwiedzających, najpierw najnowsze.
AND → 88
2 dni temu
AND → 88
2 dni temu
AND → 88
2 dni temu
AND → 88
2 dni temu
AND → 88
3 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
4 dni temu
AND → 88
5 dni temu
AND → 88
5 dni temu
Co robi to narzędzie
Wykonuje operacje logiczne na poziomie bitów, AND, OR, XOR, NAND, NOR, XNOR, NOT, i przesunięcia w lewo/prawo, na liczbach, które wprowadzasz w binarnym, ósemkowym, dziesiętnym, lub szesnastkowym. Wybierz stałą szerokość bitową lub pozwól na automatyczne wykrycie, i zobacz wynik w każdym formacie obok wizualnego podziału bit po bicie.
Jak To Działa
Każda wprowadzona wartość jest konwertowana na surowy wzorzec bitowy o stałej szerokości: wejścia binarne, ósemkowe, i szesnastkowe są czytane jako dosłowne wzorce bitowe, podczas gdy wejście dziesiętne jest kodowane za pomocą kodu uzupełnień do dwóch, jeśli ujemne (wartość + 2^szerokość) lub używane bezpośrednio, jeśli nieujemne. Wybrana operacja jest następnie stosowana bit po bicie na tej szerokości, na przykład AND ustawia każdy bit wyjściowy na 1 tylko tam, gdzie oba bity wejściowe są 1, XOR ustawia go na 1 tylko tam, gdzie bity wejściowe się różnią, a NOT odwraca każdy bit. Przesunięcia przesuwają wzorzec bitowy w lewo lub w prawo o N pozycji, z przesunięciem w lewo i logicznym przesunięciem w prawo wypełniającym opróżnione bity zerami, a arytmetycznym przesunięciem w prawo wypełniającym je kopią bitu znaku. Wynik jest następnie odczytywany z powrotem w binarnym, ósemkowym, szesnastkowym, i zarówno dziesiętnym bez znaku (surowa wartość), jak i dziesiętnym ze znakiem (interpretacja kodu uzupełnień do dwóch).
Problemy, które rozwiązuje
- Obliczanie masek bitowych i kombinacji flag przy pisaniu kodu niskopoziomowego, oprogramowania wbudowanego, lub logiki sieciowej (maski podsieci, flagi uprawnień).
- Sprawdzanie, jak zachowują się ujemne liczby w kodzie uzupełnień do dwóch i przesunięcia bitowe przy konkretnej szerokości bitowej bez sięgania po kompilator.
- Konwertowanie wartości między binarnym, ósemkowym, dziesiętnym, i szesnastkowym przy jednoczesnym widzeniu jej bitowej relacji do innej wartości.
Często zadawane pytania
›Jaka jest różnica między AND, OR, i XOR?
AND zwraca 1 tylko wtedy, gdy oba bity są 1 (przydatne do maskowania, np. sprawdzania, czy ustawiona jest konkretna flaga). OR zwraca 1, gdy co najmniej jeden bit jest 1 (przydatne do łączenia flag). XOR zwraca 1, gdy bity są różne, co czyni go przydatnym do przełączania bitów lub wykrywania zmian między dwiema wartościami.
›Co faktycznie robi ustawienie szerokości bitowej?
Ustala, iloma bitami są reprezentowane twoje liczby (8, 16, 32, lub 64), co wpływa na dwie rzeczy: jak kodowane są liczby ujemne (kod uzupełnień do dwóch zawija się przy wybranej szerokości) i gdzie bity są odrzucane przy przesunięciu w lewo. "Auto" wybiera najmniejszą standardową szerokość, która może pomieścić obie wprowadzone przez ciebie wartości bez błędu przepełnienia.
›Dlaczego widzę dwa różne wyniki dziesiętne (ze znakiem i bez znaku)?
Surowy wzorzec bitowy sam w sobie jest niejednoznaczny, może reprezentować albo małą dodatnią liczbę bez znaku, albo liczbę ujemną w kodzie uzupełnień do dwóch, w zależności od zamierzonego użycia. Na przykład przy szerokości 8-bitowej wzorzec 11111111 to 255 bez znaku, ale -1 ze znakiem. Pokazane są obie interpretacje, abyś mógł odczytać tę, która pasuje do twojego kontekstu.
›Jaka jest różnica między logicznym a arytmetycznym przesunięciem w prawo?
Logiczne przesunięcie w prawo (>>>) zawsze wypełnia opróżnione najbardziej lewe bity zerem, niezależnie od znaku. Arytmetyczne przesunięcie w prawo (>>) wypełnia je zamiast tego kopią oryginalnego bitu znaku, więc przesunięcie liczby ujemnej (kod uzupełnień do dwóch) w prawo zachowuje ją ujemną, efektywnie dzieląc ją przez potęgę dwóch przy zaokrąglaniu w kierunku minus nieskończoności.
›Czy mogę mieszać formaty liczb, jak zastosowanie AND na wartości hex z wartością dziesiętną?
Tak. Wartość A i Wartość B mają każda własny niezależny selektor Dec/Bin/Oct/Hex, więc możesz wprowadzić jedną w systemie szesnastkowym, a drugą w dziesiętnym (lub dowolną kombinację), a narzędzie konwertuje obie do tej samej szerokości bitowej przed ich połączeniem.
Powiązane Narzędzia
Kalkulatory
Kalkulator Wielkich Liczb
Wykonuj dokładną arytmetykę na liczbach znacznie większych niż normalny kalkulator może obsłużyć: dodawanie, odejmowanie, mnożenie, dzielenie, potęgowanie, pierwiastek kwadratowy, silnię, modulo, NWD, i NWW.
FreeKalkulatory
Kalkulator Binarny
Dodawaj, odejmuj, mnóż, i dziel liczby binarne bezpośrednio, z wynikami pokazanymi w systemie binarnym i dziesiętnym, plus konwerter binarny/dziesiętny.
FreeKalkulatory
Kalkulator Czasu Donacji Krwi
Oblicz swoją następną kwalifikującą się datę donacji krwi na podstawie ostatniej donacji i typu donacji, używając powszechnych wytycznych okresu oczekiwania.
FreeKalkulatory
Twórca Wykresów Pudełkowych
Zamień jeden lub więcej zestawów danych w wykresy pudełkowe z pięcioliczbowym podsumowaniem, średnią, odchyleniem standardowym, i wykrywaniem uchybień.
Komentarze (0)
Uznałeś to narzędzie za przydatne? Zostaw komentarz, podziel się wskazówką, lub powiedz nam, jak możemy je ulepszyć.
Jeszcze brak komentarzy. Bądź pierwszym, który podzieli się swoimi przemyśleniami!