Ohjelmoinnissa lipun käsite viittaa yhteen tai useampaan muistibittiin , jota käytetään tallentamaan binääriyhdistelmä tai koodi , joka kuvaa jonkin kohteen tilaa. Liput löytyvät yleensä tietyistä tietorakenteista , kuten tietokantamerkinnöistä, ja niiden arvot liittyvät yleensä niiden tietorakenteiden merkitykseen, joihin ne kuuluvat. Monissa tapauksissa lipun binääriarvo on koodattu esitys yhdestä useista kohteen mahdollisista tiloista tai tiloista. Muissa tapauksissa binäärilippuarvot voivat edustaa yhtä tai useampaa bittikentän attribuuttia, joka liittyy usein ominaisuuksiin tai käyttöoikeuksiin, kuten "voidaan kirjoittaa" tai "voidaan poistaa". Lippuille voidaan kuitenkin määrittää muita arvoja. Eräs lippujen käyttötapa on merkitseminen, joka osoittaa tietorakenteen jatkokäsittelyä varten.
Esimerkki lippujen käytöstä C-kielellä ( C ):
int f_have_five = 0 ; // lippu viiden esiintymiselle taulukossa int i ; int a [ 10 ]; // 10 elementin matriisi for ( i = 0 ; i < 10 ; i ++ ) { a [ i ] = rand () % 10 ; // alusta taulukko satunnaisilla arvoilla 0 - 9 if ( a [ i ] == 5 ) // jos taulukko sisältää luvun 5, aseta lipuksi 1 f_have_five = 1 ; } if ( f_have_five ) { /* suorittaa joitain toimintoja */ }Joskus on hyödyllistä käyttää lipputaulukoita merkitsemään joitakin toisen taulukon elementtejä myöhempää käsittelyä varten.
Mikroprosessoreissa ja muissa logiikkalaitteissa lippuja käytetään yleisesti ohjaamaan ja osoittamaan väli- tai lopputilaa sekä karakterisoimaan eri toimintojen tulosta . Mikroprosessoreissa on tyypillisesti tilarekisteri, joka koostuu näistä lipuista ja joita käytetään osoittamaan erilaisia tiloja toiminnon jälkeen, kuten jos aritmeettinen ylivuoto on tapahtunut . Lippuja voidaan käyttää sekvenssiohjauksessa, erityisesti ehdollisten haarakäskyjen käsittelyssä . Esimerkiksi komento je (Jump if Equal, Jump by Equality) X86-asentajassa hyppää, jos Z (nolla, nolla) -lippu asetettiin edellisessä toiminnossa.