Intermediate

Kalkulator Rotacji Bitów (Przesunięcie Cykliczne)

Wykonaj cykliczną rotację bitów (barrel shift) liczby całkowitej w lewo lub w prawo w obrębie 8-, 16-, 32- lub 64-bitowego rejestru.
Non-negative integer that fits in the chosen width

bits

Kierunek

Bit width

Rotated value (binary)
10010110
Dziesiętny
150
Binary
10010110
Hex
0x96
Effective shift
3
031.963.895.6127.5159.4191.3223.1255Before and after rotation in the 8-bit range
Step by step
  1. 1

    Effective rotate amount

    3 mod 8 = 3
  2. 2

    Rotate left

    (210 << 3) | (210 >> (8 − 3)) = 150
    Bits leaving one end reappear at the other; result masked to 8 bits.
Wyniki są jedynie szacunkami o charakterze ogólnoinformacyjnym i nie stanowią profesjonalnej porady — zawsze samodzielnie zweryfikuj ważne wyniki, zanim na nich polegniesz. Przeczytaj pełne zastrzeżenie.
Szybka odpowiedź

Jak działa ten kalkulator?

Rotacja bitów (przesunięcie cykliczne) przesuwa każdy bit liczby całkowitej w lewo lub w prawo o k pozycji w obrębie rejestru w-bitowego, zawijając bity z jednego końca na drugi. Zredukuj k o k mod w, a następnie złącz przesuniętą wartość z zawiniętymi bitami i zamaskuj do w bitów. Wynik wyświetlany jest dziesiętnie, binarnie i szesnastkowo.

Wzór
ROL: r = ((n << k) | (n >> (w − k))) & mask; ROR: r = ((n >> k) | (n << (w − k))) & mask; mask = (1 << w) − 1
How this is calculated

Rotacja (zwana też przesunięciem cyklicznym lub barrel shift) przesuwa każdy bit wartości n o k pozycji w obrębie rejestru o stałej szerokości w. W odróżnieniu od zwykłego przesunięcia bity wypchnięte z jednego końca nie są tracone — wracają od strony przeciwnej, więc całkowita liczba ustawionych bitów nigdy się nie zmienia. Wybierz szerokość (8, 16, 32 lub 64) odpowiadającą modelowanemu rejestrowi; n musi być nieujemne i mieścić się w tej szerokości.

Kalkulator najpierw redukuje wielkość rotacji przy pomocy k mod w, ponieważ rotacja o pełną szerokość zwraca wartość oryginalną. Rotacja w lewo łączy (n << k) z bitami zawiniętymi (n >> (w − k)), a następnie maskuje wynik za pomocą (1 << w) − 1, aby zachować tylko niskie w bitów. Rotacja w prawo jest lustrzanym odbiciem, używając (n >> k) i (n << (w − k)). Wszystkie obliczenia wykonywane są na liczbach całkowitych o dowolnej precyzji (BigInt), dzięki czemu wartości 64-bitowe są dokładne.

Wynik jest wyświetlany dziesiętnie, jako wypełniony zerami łańcuch binarny o długości w bitów i szesnastkowo, z dopełnieniem do szerokości rejestru. Przypadki brzegowe: wielkość rotacji będąca wielokrotnością w nie zmienia wartości, a wartość nie mieszcząca się w wybranej szerokości jest odrzucana. Indeksy bitów w podglądzie oznaczone są z najbardziej znaczącym bitem po lewej stronie.

Najczęściej zadawane pytania

Logiczne przesunięcie odrzuca bity, które wypadają poza koniec, i wypełnia zwolnione pozycje zerami. Rotacja (przesunięcie cykliczne) wprowadza te bity z powrotem z drugiego końca, więc żadna informacja nie jest tracona, a liczba ustawionych bitów pozostaje ta sama.

Rotacja w rejestrze w-bitowym o w kroków przywraca każdy bit na jego pierwotną pozycję. Kalkulator stosuje k mod w, więc rotacja o 8 w rejestrze 8-bitowym lub o 16, 24 itd. jest równoważna rotacji o 0.

Wartość musi być reprezentowalna w w bitach (między 0 a 2^w − 1). Jeśli n jest większe, poszerz rejestr lub zmniejsz n; kalkulator nie obetnie jej po cichu.

Znany również jako

rotacja bitów
przesunięcie cykliczne
obrót bitów
rotacja w lewo w prawo
rol ror
kalkulator rotacji bitów

APA

TG we-Calculate Editorial Team. (2026). Kalkulator Rotacji Bitów (Przesunięcie Cykliczne) [Online calculator]. TG we-Calculate. https://we-calculate.com/pl/calculator/bit-rotate-calculator

Chicago

TG we-Calculate Editorial Team. "Kalkulator Rotacji Bitów (Przesunięcie Cykliczne)." TG we-Calculate. 2026. https://we-calculate.com/pl/calculator/bit-rotate-calculator.

IEEE

TG we-Calculate Editorial Team, "Kalkulator Rotacji Bitów (Przesunięcie Cykliczne)," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/pl/calculator/bit-rotate-calculator

BibTeX

@misc{wecalculate_bit_rotate_calculator, title = {Kalkulator Rotacji Bitów (Przesunięcie Cykliczne)}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/pl/calculator/bit-rotate-calculator}}, year = {2026}, note = {TG we-Calculate} }

Czy ten kalkulator Ci pomógł?