Loading AI tools
språk som en människa använder för att skapa datorprogram Från Wikipedia, den fria encyklopedin
Programspråk, eller programmeringsspråk, är ett formellt språk som en människa använder för att skapa datorprogram.
Den här artikeln behöver källhänvisningar för att kunna verifieras. (2017-07) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
Datorers grundspråk kallas maskinkod och består av ettor och nollor, som datorns centralprocessor (eller motsvarande enhet i kringutrustning) direkt kan tolka. Eftersom programmering på den nivån är svår och tidskrävande, och lätt leder till fel, har man tagit fram olika sorters programspråk, där man använder kodord för att beskriva vad datorn skall göra och som tillåter att text, siffror och räkneoperationer skrivs in ungefär som i kommunikation mellan människor. Ett skilt datorprogram används sedan för att översätta denna mer läsbara kod till maskinkod.
Datorprogrammets källkod, som skrivits för hand, måste alltså i de flesta fall översättas till maskinkod innan programmet skall köras. För assembler (som ganska direkt motsvarar maskinkoden, men med kodord, variabelnamn och en del andra abstraktioner) görs översättningen med en assemblator. För högnivåspråk använder man en kompilator (en del kompilatorer skapar assemblerkod som ett mellansteg). Maskinkoden lagras sedan i en exekverbar binärfil.
Vissa programspråk är inte avsedda att kompileras: ett interpreterat språk, tolkas (interpreteras) under själva exekveringen (när man "kör" programmet). Det finns även språk som kan kompileras allteftersom programmet körs, med hjälp av en JIT-kompilator, och språk som kompileras till en snabbtolkad bytekod.
En del programspråk är konstruerade för att ganska noga följa datorernas typiska sätt att arbeta. Nyttan är framförallt att programmeraren då har bättre kontroll över den maskinkod som kommer att skapas då programmet kompileras. Sådana språk kallas för maskin- eller hårdvarunära språk eller lågnivåspråk, med assembler som typexemplet. Motsatsen är högnivåspråk. Den mesta källkoden skrivs med högnivåspråk.
Man brukar även skilja mellan funktionella språk och objektorienterade språk. Ytterligare en uppdelning är mellan imperativa språk och deklarativa språk.
Det är 4:e generationens programspråk man talar om i vardagligt tal.
Det har skapats ett otal programmeringsspråk. Här är en alfabetisk lista på en del av dem.