Lågnivåspråk
![]() | Den här artikeln behöver källhänvisningar för att kunna verifieras. (2020-12) Å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. |
Begreppet lågnivåspråk används inom programmering som en motsats till högnivåspråk. Ett lågnivåspråk är vanligtvis ett programspråk som är ett maskinnära eller hårdvarunära språk, till exempel assemblerspråk, som ligger nära en viss hårdvaras maskinkod, men ibland också till exempel programspråket C, som i viss mening är mindre abstrakt och mer primitivt än andra högnivåspråk.
Att ligga nära en viss hårdvaras maskinkod betyder att vissa kommandon hos programspråket är lika de som processorn själv använder. Detta gäller till exempel registernamn och manipulationen av dem. Det är också möjligt att till exempel göra bitvisa operationer såsom logisk AND för att läsa och skriva registervärden.
Att använda ett lågnivåspråk kräver i allmänhet mer tid och leder lättare till programmeringsfel än om man skulle använda ett högnivåspråk. Fördelen är att programmeraren har god kontroll över hur programmet beter sig, och en duktig programmerare kan då utnyttja den tillgängliga hårdvaran bättre. I datorernas barndom på 1950–1970-talet var lågnivåspråk ett vanligt sätt att utveckla vissa typer av programvara där kraven på effektivitet var höga, till exempel operativsystem eller styrprogram i telefonstationer. Numera brukar lågnivåspråk reserveras för vissa delar av operativsystem.
För exempel på lågnivåspråk, se forth, som ibland även kan betraktas som ett högnivåspråk, och assembler.