Bittioperaatio
Bittioperaatio (engl. bitwise operation) on ohjelmointikielissä bittioperaattoreilla tehtäviä toimintoja.[1]
Bittitason operaattorit ovat:[1][2]
AND (&): jos molemmat bitit ovat 1 tulos on 1, muutoin 0:
0101 AND 0011 = 0001
OR (|): jos jompikumpi bitti on 1 tulos on 1, muutoin 0:
0101 OR 0011 = 0111
XOR (^): jos vain toinen bitti on 1 tulos on 1, jos molemmat bitit ovat samat tulos on 0:
0101 XOR 0011 = 0110
Komplementti NOT (~): vaihtaa kaikki ykköset nolliksi ja nollat ykköseksi:
NOT 0111 = 1000
Siirto vasemmalle (<<): siirtää bittejä vasemmalle, täytetään nollalla vapautuvat:
<< 0110 = 1100
Siirto oikealle (>>): siirtää bittejä oikealle, täyttö riippuu koneesta (yleensä riippuu etumerkistä):
>> 0110 = 0011
Suorittimet sisältävät erilaisia käskyjä operaatioiden suorittamiseen, esimerkiksi looginen ja aritmeettinen siirto oikealle (LSR ja ASR) ovat eri tavoin toimivia käskyjä ARM-suorittimissa.[3]
Katso myösMuokkaa
LähteetMuokkaa
- ↑ a b Bitwise Operators cs.fsu.edu. Viitattu 16.2.2020. (englanniksi)
- ↑ Oualline, Steve: Practical C Programming, s. 158. Third edition. O'Reilly, 1997. ISBN 1-56592-306-5. (englanniksi)
- ↑ Code in ARM Assembly: Bit operations eclecticlight.co. 16.7.2021. Viitattu 31.10.2022. (englanniksi)