Programuotojai naudoja įvairių tipų kompiuterių kalbas.
Kompiuterio kalba arba programavimo kalba yra užkoduota sintaksė, kurią kompiuterių programuotojai naudoja bendravimui su kompiuteriu. Tai vienintelė kalba, kurią gali suprasti kompiuteriai, programinės įrangos programos ir kompiuterių aparatinė įranga. Kompiuterio kalba sukuria ryšio tarp programinės įrangos srautą. Kalba leidžia kompiuterio vartotojui diktuoti, kokias komandas kompiuteris turi atlikti, kad apdorotų duomenis. Kompiuterių kalbos yra įvairių tipų, kuriose naudojami skirtingi sintaksės rinkiniai.
Mašinos kalba
Mašinos kalba arba mašinos kodas yra gimtoji kalba, kurią tiesiogiai supranta kompiuterio centrinis procesorius arba CPU. Tokio tipo kompiuterių kalbą nėra lengva suprasti, nes komandoms sudaryti naudojama tik dvejetainė sistema, žymėjimo elementas, susidedantis tik iš skaičių serijos, susidedančios iš vieneto ir nulio. Kompiuterio procesorius turi konvertuoti aukšto lygio kalbas į šią kalbą, kad galėtų paleisti programą arba atlikti vartotojo apibrėžtą komandą. Norint konvertuoti tam tikrą kalbą į mašininį kodą, kompiuterio procesoriui reikia kompiliatoriaus – programos, kuri viena kalba parašytą šaltinio kodą konvertuoja į kitos kalbos sintaksę. Kompiliatorius sukuria dvejetainį failą arba vykdomąjį failą, kurį CPU vykdys. Kiekvienas kompiuterio procesorius turi savo mašininio kodo rinkinį. Mašinos kodas nustatys, ką ir kaip turėtų daryti kompiuterio procesorius.
Dienos vaizdo įrašas
Surinkimo lygio kalba
Praėjusio amžiaus šeštojo dešimtmečio pradžioje atliktas tyrimas paskatino žemo lygio kalbų arba asamblėjos lygio kalbų vystymąsi. Assembly Level Language taip pat laikoma antrosios kartos kalba, tai yra kodų rinkinys, kuris gali veikti tiesiogiai kompiuterio procesoriuje. Šio tipo kalba labiausiai tinka rašant operacines sistemas ir prižiūrint darbalaukio programas. Tai leidžia programuotojui atlikti keletą užduočių, pvz., prieigą prie registro, atminties valdymą ir laikrodžio ciklo korespondenciją. Naudojant surinkimo lygio kalbą, programuotojui lengviau apibrėžti komandas, nes jis turi prerogatyvą įvardyti kintamuosius. Tačiau ši kalba nėra lanksti, nes vartotojas negali pakartotinai naudoti kodų, parašytų šia kalba, rinkinio. Tai nėra taip paaiškinama, palyginti su kitais kolegomis. Vartotojas turi užšifruoti šią kalbą į mašinos kalbą, kad kompiuteris apdorotų programuotojo parašytas komandas.
Aukšto lygio kalba
Aukšto lygio kalbų kūrimas atsirado, kai kompiuterių programuotojai pradėjo turėti problemų dėl didėjančio kompiuterio nešiojamumo trūkumo. Aukšto lygio kalbose nepaisoma žemo lygio kalbų nesvarbios detalės. Daugelis programuotojų mano, kad aukšto lygio kalba yra reikšmingas sprendimas kompiuterinių kalbų sukeliamiems rūpesčiams dėl jos naudojimo paprastumo ir mažos tendencijos kurti klaidas. Programuotojai aukšto lygio kalbas dažnai vadina vidutinio lygio kalbomis, kuriose vartojamos tik abstrakcijos ir konstrukcijų sąvokos iki kraštutinumų.