Az alacsony szintű programozási nyelv (low-level programing language) olyan programozási nyelv , amely közel áll a közvetlenül a használt valós vagy virtuális (például bytecode, IL) processzor gépi kódjaiban történő programozáshoz. A mnemonikus jelölést általában a gépi utasítások megjelölésére használják. Ez lehetővé teszi a parancsok memorizálását nem bináris nullák és egyesek sorozataként, hanem az emberi nyelv (általában angol) szavak értelmes rövidítéseként.
Néha egy mnemonikus megjelölés a gépi utasítások egész csoportjának felel meg, amelyek ugyanazt a műveletet hajtják végre különböző operandusokon . A gépi utasítások mellett az alacsony szintű programozási nyelvek további funkciókat is biztosíthatnak, például makródefiníciókat (makrókat). Direktívák segítségével lehet vezérelni a gépi kódok lefordításának folyamatát, lehetőséget biztosítva konstansok és literális karakterláncok bevitelére, a változók számára memória lefoglalására, valamint a végrehajtható kód meghatározott címekre történő elhelyezésére. Ezek a nyelvek gyakran lehetővé teszik, hogy meghatározott memóriahelyek helyett változókkal dolgozzon.
Az alacsony szintű nyelvek általában egy adott processzorcsalád jellemzőit használják. Az alacsony szintű nyelvek jól ismert példája az assembly nyelv , bár helyesebb assembly nyelvek csoportjáról beszélni. Sőt, ugyanannál a processzornál többféle összeállítási nyelv létezhet, amelyek egybeesnek a gépi utasításokban, de különböznek egy sor további funkcióban (irányelvek és makrók).
Továbbá a Microsoft .NET platformon használt CIL , Forth