Tietokoneohjelmisto on ohjelma, jonka avulla omistaja voi käyttää tietokonettaan. Laitteisto koostuu kaikista tietokoneen fyysisistä osista ja ohjelmisto koostuu ohjelmista, jotka on koottu laitteiston toiminnan mahdollistamiseksi. Ohjelmistotyyppejä ovat käyttöjärjestelmät, sovellukset ja kääntäjät tietokoneohjelmien kirjoittamista varten. Suurin osa ohjelmistoista on suunniteltu helppokäyttöisiksi ja helppokäyttöisiksi, jotta kaikki kuluttajat voivat käyttää niitä. Muut tyypit ovat kehittyneempiä ja vaativat tietokoneohjelmointikielien tuntemusta voidakseen käyttää niitä.
Käyttöjärjestelmää pidetään usein tärkeimpänä tietokoneohjelmistona. Tämä on ohjelma, jonka avulla käyttäjä voi kommunikoida tietokoneen sisäisten osien kanssa esimerkiksi hiiren ja näppäimistön kautta ja välittää virtuaalikuvia tietokoneen näyttöön. Windows, Macintosh ja Linux ovat esimerkkejä käyttöjärjestelmistä. Näiden järjestelmien avulla käyttäjä voi suorittaa muita ohjelmistoja, tulostaa kohteita ja surffata Internetissä muun muassa. Ne auttavat myös kaikkia tietokoneen sisäisiä osia toimimaan sujuvasti antamalla niiden kommunikoida keskenään ja eri käyttäjän tulojen kanssa, jakaa osion muistiin ja käynnistää ja sammuttaa erilaisia ohjelmistoja.
Sovellus on tietokoneohjelmisto, joka lisätään käyttöjärjestelmän päälle. Termi tietokoneohjelma viittaa useimmiten sovelluksiin. Näitä voivat olla tekstinkäsittelyohjelmat, Internet -selaimet ja useimmat muut kuluttajaohjelmat. Tietokoneet myydään yleensä joissakin sovelluksissa, kuten tekstinkäsittelyohjelmassa, Internet -selaimessa ja musiikkisoittimessa. Kuluttajat voivat ostaa lisäsovelluksia lataamalla ne Internetistä tai ostamalla ne CD-ROM-, DVD- ja muissa muodoissa. Käyttäjän on asennettava sovellus, jotta se voi toimia. Jotkin sovellukset, kuten videon editointi- tai kirjanpito -ohjelmat, on käynnistettävä ja niitä on käytettävä käyttäjän toimesta. Muut tietokoneohjelmistot, kuten virustentorjuntaohjelmat, toimivat taustalla ilman erityistä ilmoitusta.
Edistyneemmät käyttäjät ostavat joskus tietokoneohjelmistoja, joita voidaan käyttää uusien tietokoneohjelmien kirjoittamiseen, testaamiseen ja toteuttamiseen. Näiden ohjelmien mukana tulee usein ohjelmistokääntäjä, joka on spesifinen yksittäiselle tietokoneohjelmointikielelle, kuten Java tai Visual Basic. Ohjelmiston avulla ohjelmoija voi kirjoittaa tietokoneohjelman, testata sitä ja suorittaa muita lisätoimintoja.