Arvutiprogrammis on bitipõhised operaatorid operaatorid avaldiste bitimustritega manipuleerimiseks. Bitipõhine AND, VÕI, eksklusiivne VÕI (XOR), EI, paremale ja vasakule nihutamine on tavalised toimingud. Enamik arvutiprogrammeerimiskeeli sisaldavad kõiki neid kuut operaatorit. Neid kasutatakse sageli arvutiriistvara juhtivate programmide üksikute bittide seadistamiseks, tühjendamiseks või ümberpööramiseks. Bitioperaatoreid kasutatakse sageli ka andmete krüptimise ja tihendamise algoritmides.
Levinud bitipõhised operaatorid on tavaliselt esitatud sümboolselt sellistes programmeerimiskeeltes nagu C, C++ ja Java. Neid kasutatakse avaldistes täpselt nagu aritmeetilisi operaatoreid, nagu pluss- või miinusmärgid. Bititegur AND on esitatud ampersandiga &, VÕI toruga | ja XOR koos tähisega ^. NOT, tuntud ka kui komplemendioperaator, on tähistatud tildega ~.
Parempoolse vahetuse operaator kasutab topeltkaarti, mis osutab paremale >>. Seevastu vasakpoolset nihet tähistab vasakule suunatud topeltmärk . Java sisaldab veel ühte paremale nihutamise toimingut, mis on näidatud paremale suunatud kolmekordse tähisega >>>.
Bitioperaatorid rakendavad oma operandi igale bitipaarile loogilist operatsiooni. EI, paremale ja vasakule nihutamisel on ainult üks tõeline operaand; teine väärtus nihkeoperatsioonides on bittide arv. Et paremini mõista, kuidas bitipõhised operaatorid töötavad, saab inimene visualiseerida oma operandid kahendnumbritena. Näiteks komplemendioperaator pöörab oma üksiku operandi iga biti vastupidisesse olekusse. Ühest saab null ja nullist üks. 8-bitise binaarväärtuse 00110101 täiendus on 11001010.
Operaatoril AND on kaks operandi. Bittide kaupa sooritatakse loogiline JA-operatsioon, kasutades igast operandist ühte vastavat bitti. Iga bititoimingu tulemus asetatakse üldtulemuse sellele bitipositsioonile. Näiteks töötleb operaator AND ühe operandi bitti 7 ja teise operandi bitti 7. Tulemus salvestatakse üldtulemuse bitti 7.
AND-operatsioonis peavad mõlemad operandi bitid olema ühed, et tulemus oleks üks, vastasel juhul on tulemus null. Näiteks kui operandide 8-bitised binaarsed väärtused on 00110101 ja 11110000, on tulemuseks 00110000. Tavaline operaatori AND kasutamine on tulemusest teatud bittide nullimine. Selleks asetatakse ühes operandis nendele bitikohtadele nullid.
VÕI-operatsioonis peavad mõlemad operandi bitid olema nullid, et tulemus oleks null; muidu on tulemus üks. Operaatori VÕI levinud kasutusala on tulemuse teatud bittide määramine bitideks. Seda tehakse, asetades need ühes operandis nendele bitipositsioonidele. Operatsiooni XOR puhul on tulemus null, kui mõlemad operandibitid on nullid või kui mõlemad operandibitid on üks – vastasel juhul on tulemus üks.
Vasak nihe ja parem nihe liigutavad operandi bitte vasakule või paremale määratud bitipositsioonide arvu võrra. Loogiline nihe paremale nihutab nihke osana nulli kõige vasakpoolsemasse bitti. Aritmeetiline nihe paremale kopeerib vasakpoolseima biti – märgibiti – enne nihet samasse kohta pärast nihet. Algne bitt nihutatakse ka koos ülejäänud osaga paremale. Mõlemat tüüpi vasak nihe liigutab nulli kõige parempoolsemasse bitti.
Kui operandi nihutatakse paremale, visatakse parempoolseim bitt enne nihet lihtsalt minema. Samamoodi kõrvaldatakse vasakpoolseim bitt enne vasakpoolset nihet. See ei keerdu ümber operandi teise otsa.
Bitipõhise nihke toimingud sõltuvad keelest ja rakendusest. Näiteks C ja C++, >> ja sooritage loogilisi nihkeid, kui operandiks on märgita täisarv. Kui operandiks on märgiga täisarv, tehakse selle asemel tõenäoliselt aritmeetiline nihe. Javas loetakse kõik operandid märgituks ja aritmeetilised nihked sooritatakse alati nuppudega >> ja . Operaatorit >>> kasutatakse loogilise paremale nihutamisel, kuid selle asemel on siiski võimalik teha kogemata aritmeetiline paremale nihe ilma hoolika tüübihäälestamiseta.
Tüsistused võivad tekkida ka siis, kui operandid on erineva bitipikkusega või kui mõned on märgistatud ja mõned märgita. Bitioperaatoreid ja arvulisi konstante kompleksavaldise keskel ei pruugita ootuspäraselt hinnata. Tuleb jälgida, et avaldises oleks täpsustatud iga suuruse suurus ja allkirjastatud/allkirjata olemus. Seda saab teha hoolika tüübihäälestamise või programmikoodi teatud muutujatüüpidele vahepealse määramisega.