Intermediate

Bittien kiertolaskin (syklinen siirto)

Suorita kokonaisluvun syklinen bittikierto (sylinterikierto) vasemmalle tai oikealle 8-, 16-, 32- tai 64-bittisessä rekisterissä.
Non-negative integer that fits in the chosen width

bits

Suunta

Bit width

Rotated value (binary)
10010110
Desimaali
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.
Tulokset ovat arvioita ja tarkoitettu vain yleiseen tiedoksi, eivätkä ne ole ammattilaisen neuvoja — varmista aina tärkeät tulokset itsenäisesti ennen kuin luotat niihin. Lue koko vastuuvapauslauseke.
Pikavastaus

Miten tämä laskin toimii?

Bittikierto eli syklinen siirto siirtää kokonaisluvun jokaista bittiä vasemmalle tai oikealle k paikkaa w-bittisessä rekisterissä kietoen toisesta päästä poistuvat bitit takaisin toiseen päähän. Pienennä k:ta arvolla k mod w, sitten OR-laske siirretty arvo kiertyneiden bittien kanssa ja maskaa w bittiin. Tulos näkyy desimaalina, binäärinä ja heksana.

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

Kierto (jota kutsutaan myös sykliseksi tai sylinterisiirroksi) siirtää arvon n jokaista bittiä k paikkaa kiinteän leveyden w rekisterissä. Toisin kuin tavallisessa siirrossa, toisesta päästä työnnetyt bitit eivät katoa — ne tulevat takaisin vastakkaisesta päästä, joten asetettujen bittien kokonaismäärä ei koskaan muutu. Valitse leveys (8, 16, 32 tai 64), joka vastaa mallinnettavaa rekisteriä; n:n on oltava ei-negatiivinen ja mahduttava kyseiseen leveyteen.

Laskin pienentää ensin kiertomäärän laskulla k mod w, koska kierto koko leveyden verran palauttaa alkuperäisen arvon. Vasemmalle kierto yhdistää (n << k):n kiertyneiden bittien (n >> (w − k)) kanssa ja maskaa sitten tuloksen arvolla (1 << w) − 1 säilyttääkseen vain alimmat w bittiä. Oikealle kierto on peilikuva, käyttäen (n >> k):ta ja (n << (w − k)):ta. Kaikki laskenta tehdään mielivaltaisen tarkkuuden kokonaisluvuilla (BigInt), joten 64-bittiset arvot pysyvät tarkkoina.

Tulos näytetään desimaalina, nollalla täytettynä w-bittisenä binäärimerkkijonona ja heksadesimaalina täytettynä rekisterileveyteen. Erikoistapaukset: kiertomäärä, joka on w:n monikerta, jättää arvon ennalleen, ja arvo joka ei mahdu valittuun leveyteen hylätään. Bittien indeksit erittelyssä on merkitty siten, että merkitsevin bitti on vasemmalla.

Usein kysytyt kysymykset

Looginen siirto hylkää päästä putoavat bitit ja täyttää vapautuneet paikat nollilla. Kierto (syklinen siirto) syöttää nämä bitit takaisin toisesta päästä, joten tietoa ei katoa ja asetettujen bittien määrä pysyy samana.

Kierto w kertaa w-bittisessä rekisterissä palauttaa jokaisen bitin alkuperäiseen paikkaansa. Laskin soveltaa laskua k mod w, joten kierto 8 8-bittisessä rekisterissä, tai 16, 24 ja niin edelleen, vastaa kiertoa 0.

Arvon on oltava esitettävissä w bitillä (välillä 0 ja 2^w − 1). Jos n on suurempi, laajenna rekisteriä tai pienennä n:ää; laskin ei katkaise sitä huomaamatta.

Tunnetaan myös nimellä

bittien kierto
kiertosiirto laskuri
rotate left rotate right
bittikierto
rol ror
kierrätä bittejä
bittien pyöritys

APA

TG we-Calculate Editorial Team. (2026). Bittien kiertolaskin (syklinen siirto) [Online calculator]. TG we-Calculate. https://we-calculate.com/fi/calculator/bit-rotate-calculator

Chicago

TG we-Calculate Editorial Team. "Bittien kiertolaskin (syklinen siirto)." TG we-Calculate. 2026. https://we-calculate.com/fi/calculator/bit-rotate-calculator.

IEEE

TG we-Calculate Editorial Team, "Bittien kiertolaskin (syklinen siirto)," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/fi/calculator/bit-rotate-calculator

BibTeX

@misc{wecalculate_bit_rotate_calculator, title = {Bittien kiertolaskin (syklinen siirto)}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/fi/calculator/bit-rotate-calculator}}, year = {2026}, note = {TG we-Calculate} }

Oliko tästä laskimesta sinulle apua?