Калкулатор за битова ротация (кръгово отместване)
Извършете кръгова битова ротация (barrel shift) на цяло число наляво или надясно в рамките на 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
Ротацията (наричана също кръгово или barrel отместване) премества всеки бит на стойността 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/bg/calculator/bit-rotate-calculator
TG we-Calculate Editorial Team. "Калкулатор за битова ротация (кръгово отместване)." TG we-Calculate. 2026. https://we-calculate.com/bg/calculator/bit-rotate-calculator.
TG we-Calculate Editorial Team, "Калкулатор за битова ротация (кръгово отместване)," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/bg/calculator/bit-rotate-calculator
@misc{wecalculate_bit_rotate_calculator, title = {Калкулатор за битова ротация (кръгово отместване)}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/bg/calculator/bit-rotate-calculator}}, year = {2026}, note = {TG we-Calculate} }
Помогна ли ви този калкулатор?
