Bittioperaatio () on ohjelmointikielissä bittioperaattoreilla tehtäviä toimintoja.

Bittitason operaattorit ja niiden vastineet C-kielessä ovat:

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 eli 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

Bittioperaatiot eri alustoilla 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.

Taulukossa on eräiden ohjelmointikielten ja suorittimien bittioperaattorit.

Operaatio C QBasicMS QuickBASIC 4.5 Language Reference 6502NMOS 6502 Opcodes Z80Z80 CPU Microprocessor Instant Reference Card 8086Intel ASM86 Language Reference Manual, sivu 6-10 AND & AND AND AND ANDOR &vert; OR ORA OR ORXOR ^ XOR EOR XOR XORNOT ~ NOT (ei ole) CPL NOTsiirto vasemmalle << (ei ole) ASL, ROL SLA, RL, RLC SHL, SAL, ROL, RCLsiirto oikealle >> (ei ole) LSR, ROR SRL, SRA, RR, RRC SHR, SAR, ROR, RCR

Katso myös Boolen algebra

Lähteet

Luokka:Ohjelmointikielet Luokka:Digitaalitekniikka