Калькулятор циклічного зсуву бітів
Виконайте циклічний зсув (бочковий зсув) цілого числа ліворуч або праворуч у межах 8-, 16-, 32- або 64-бітного регістра.
bits
Напрямок
Bit width
- 1
Effective rotate amount
3 mod 8 = 3 - 2
Rotate left
(210 << 3) | (210 >> (8 − 3)) = 150Bits leaving one end reappear at the other; result masked to 8 bits.
Як працює цей калькулятор?
Циклічний зсув переміщує кожен біт цілого числа ліворуч або праворуч на k позицій усередині w-бітного регістра, переносячи біти з одного кінця на інший. Зменшіть k за допомогою k mod w, потім об'єднайте операцією OR зсунуте значення з перенесеними бітами та застосуйте маску до w бітів. Результат відображається в десятковій, двійковій та шістнадцятковій формах.
Формула
How this is calculated
Циклічний зсув (також відомий як бочковий зсув) переміщує кожен біт значення n на k позицій усередині регістра фіксованої ширини w. На відміну від простого зсуву, біти, що виходять з одного кінця, не втрачаються — вони повертаються з іншого кінця, тому загальна кількість встановлених бітів не змінюється. Виберіть ширину (8, 16, 32 або 64), що відповідає модельованому регістру; n має бути невід'ємним і вміщуватися в цю ширину.
Калькулятор спочатку зменшує кількість циклічних зсувів за допомогою k mod w, оскільки зсув на повну ширину повертає вихідне значення. Циклічний зсув ліворуч об'єднує (n << k) з бітами, що перенеслися, (n >> (w − k)), а потім застосовує маску (1 << w) − 1, залишаючи лише молодші w бітів. Циклічний зсув праворуч є дзеркальним відображенням і використовує (n >> k) та (n << (w − k)). Вся арифметика виконується з цілими числами довільної точності (BigInt), тому 64-бітні значення залишаються точними.
Результат відображається в десятковій формі, як двійковий рядок із нульовим заповненням до w бітів та у шістнадцятковій формі із заповненням до ширини регістра. Граничні випадки: кількість циклічних зсувів, кратна w, залишає значення незмінним, а значення, що не вміщується у вибрану ширину, відхиляється. Бітові індекси в розбивці позначаються з найстаршим бітом ліворуч.
Поширені запитання
Логічний зсув відкидає біти, що виходять за край, і заповнює звільнені позиції нулями. Циклічний зсув повертає ці біти з іншого кінця, тому жодна інформація не втрачається і кількість встановлених бітів залишається незмінною.
Циклічний зсув на w позицій у w-бітному регістрі повертає кожен біт на вихідну позицію. Калькулятор застосовує k mod w, тому зсув на 8 в 8-бітному регістрі, або на 16, 24 тощо, еквівалентний зсуву на 0.
Значення має бути представленим у w бітах (від 0 до 2^w − 1). Якщо n більше, розширте регістр або зменшіть n; калькулятор не буде мовчки його відкидати.
Також відомий як
TG we-Calculate Editorial Team. (2026). Калькулятор циклічного зсуву бітів [Online calculator]. TG we-Calculate. https://we-calculate.com/uk/calculator/bit-rotate-calculator
TG we-Calculate Editorial Team. "Калькулятор циклічного зсуву бітів." TG we-Calculate. 2026. https://we-calculate.com/uk/calculator/bit-rotate-calculator.
TG we-Calculate Editorial Team, "Калькулятор циклічного зсуву бітів," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/uk/calculator/bit-rotate-calculator
@misc{wecalculate_bit_rotate_calculator, title = {Калькулятор циклічного зсуву бітів}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/uk/calculator/bit-rotate-calculator}}, year = {2026}, note = {TG we-Calculate} }
Чи допоміг вам цей калькулятор?
