Det er ingen eneste, universelt avtalt antall nivåer på dataspråk. Den vanligste måten å kategorisere dem på er imidlertid i tre nivåer:
* Lavnivåspråk: Disse språkene er nærmere maskinkode, de binære instruksjonene som er direkte forstått av datamaskinens prosessor. De krever en dyp forståelse av maskinvare og er vanskeligere å lære og bruke, men de gir programmereren finkornet kontroll over systemressursene.
* Maskinspråk: Dette er det mest grunnleggende nivået, bestående av binære koder som datamaskinen direkte utfører.
* Assembly Language: Dette bruker mnemonics (korte koder) for å representere maskininstruksjoner, noe som gjør dem mer menneskelig lesbare enn ren maskinkode.
* mellomnivåspråk: Disse språkene tar sikte på å bygge bro mellom språket mellom lavt nivå og høyt nivå. De tilbyr funksjoner som forenkler programmering sammenlignet med språk på lavt nivå, men som fremdeles gir en viss grad av kontroll over maskinvare.
* c: Ofte betraktet som et språk på mellomnivå på grunn av dens evne til å samhandle med systemmaskinvare samtidig som en syntaks på høyere nivå.
* språk på høyt nivå: Disse språkene er designet for menneskelig lesbarhet og brukervennlighet. De abstrakte bort kompleksiteten i maskinvare, slik at programmerere kan fokusere på problemet de prøver å løse.
* Eksempler inkluderer:Python, Java, JavaScript, C ++, Ruby, Swift, etc.
Det er viktig å merke seg at linjene mellom disse nivåene kan bli uskarpe. For eksempel tilbyr noen språk, som C ++, funksjoner som lar dem fungere på et lavere nivå når det er nødvendig, men de anses generelt som høyt nivå.
Til syvende og sist er antall nivåer mindre viktig enn å forstå hvordan de forholder seg til hverandre og fordelene og ulempene på hvert nivå.