Bittisiirtolaskuri
Valitse siirron tyyppi ja bittileveys, syötä ei-negatiivinen kokonaisluku ja siirtomäärä. Tulos päivittyy heti.
Laske luvun bittisiirto vasemmalle tai oikealle – näe tulos desimaalina, binäärinä ja heksana sekä looginen ja aritmeettinen siirto.
Valitse siirron tyyppi ja bittileveys, syötä ei-negatiivinen kokonaisluku ja siirtomäärä. Tulos päivittyy heti.
Bittisiirtolaskuri auttaa sinua laskemaan luvun bittisiirrot hetkessä. Syötä luku ja siirtomäärä sekä valitse siirron tyyppi ja bittileveys, niin laskuri näyttää tuloksen desimaalina, binäärinä ja heksana. Laskuri sopii ohjelmoinnin ja tietotekniikan opiskelijoille sekä kehittäjille, jotka työskentelevät bittitason laskennan parissa.
Bittisiirto siirtää luvun kaikkia bittejä yhtä monta paikkaa vasemmalle tai oikealle. Koska jokainen bitin paikka vastaa kahden potenssia, siirto muuttaa luvun arvoa kahden potenssin verran. Bittisiirto on prosessorille erittäin nopea operaatio, ja sitä käytetään paljon laskennan optimoinnissa.
Vasemmalle siirto siirtää bitit vasemmalle ja tuo oikealta nollabittejä. Jokainen siirto kaksinkertaistaa luvun, eli vasemmalle siirto kertoo luvun kahden potenssilla:
a ≪ k = a × 2ᵏ
Esimerkki: 3 ≪ 2 = 12, koska bitit siirtyvät kaksi paikkaa vasemmalle (3 × 4 = 12). Binäärinä 11 muuttuu muotoon 1100.
Oikealle siirto siirtää bitit oikealle, jolloin luku pienenee. Jokainen siirto puolittaa luvun, eli oikealle siirto jakaa luvun kahden potenssilla (kokonaislukujako):
a ≫ k = a ÷ 2ᵏ (kokonaislukujako)
Esimerkki: 12 ≫ 2 = 3, koska bitit siirtyvät kaksi paikkaa oikealle (12 ÷ 4 = 3).
Oikealle siirrosta on kaksi muotoa sen mukaan, mitä vasemmalta tuodaan:
Positiivisilla luvuilla molemmat antavat saman tuloksen, koska etumerkkibitti on tällöin 0.
Lasketaan 3 ≪ 2 kahdeksalla bitillä:
3 ≪ 2 = 12 (= 3 × 4)
Valitun bittileveyden ulkopuolelle siirtyvät bitit katoavat. Esimerkiksi 8 bitin leveydellä luku 11000000 siirrettynä yhden paikan vasemmalle antaa 10000000, koska ylin bitti siirtyy reunan yli. Tämä on hyvä muistaa ylivuototilanteiden välttämiseksi.
Bittisiirtoja käytetään muun muassa kahdella kertomiseen ja jakamiseen, bittimaskien rakentamiseen, värikomponenttien pakkaamiseen ja purkamiseen sekä tiivistys- ja salausalgoritmeissa. Ne ovat tehokas tapa käsitellä bittejä ryhminä ja kuuluvat ohjelmoinnin perustyökaluihin.