Kas yra žemo lygio programavimo kalba?

Yra tam tikrų nesutarimų dėl tikslaus žemo lygio programavimo kalbos apibrėžimo, tačiau visi apibrėžimai turi bendrų dalykų, susijusių su tokios kompiuterinės kalbos savybėmis. Šios charakteristikos apima: panašumą į dvejetainį kodą, būtinų žinių apie centrinio procesoriaus (CPU) vaidmenį ir programuotojo gebėjimą valdyti aparatinę įrangą per kalbą. Kai kurie žmonės bet kurią kompiuterių kalbą laiko žemo lygio, jei ji nėra panaši į kalbą, kuria kalba žmonės. Kiti mano, kad bet kokia kalba, kuri reikalauja, kad programuotojas suprastų sudėtingą ir labai sudėtingą procesoriaus darbą, yra žemo lygio. Reikėtų prisiminti, kad tikrai žemo lygio programavimo kalba paprastai atitinka visus šiuos aprašymus.

Dvejetainis kodas, dar vadinamas mašininiu kodu, yra vienintelė kalba, kurią CPU arba kompiuterio „smegenys“ supranta ir „kalba“. Mašininis kodas, jei jį žiūri asmuo, atrodo kaip daug skaitmenų 1 ir 0 sekų; jie atspindi įjungimo arba išjungimo būseną, panašiai kaip įjungta arba išjungta šviesa. Aukšto lygio programavimo kalbos kodas labai skiriasi nuo mašininio kodo, nes jame yra simbolių ir žodžių, vartojamų kalba, dažniausiai anglų kalba, kuria žmonės kalba. Tačiau tai nereiškia, kad kažkas, kas nėra kompiuterių programuotojas, supras kodą aukšto lygio kalba geriau nei žemo lygio.

Vienas iš didžiausių žemo lygio programavimo kalbos pranašumų yra galimybė ir laisvė tiksliai valdyti tokius dalykus kaip atminties naudojimas ir apdorojimo laikas. Tai reiškia, kad programos, parašytos žemo lygio kalba, turėtų labai efektyviai išnaudoti sistemos išteklius, o tai gali būti labai pageidautina koduojant sistemas su labai ribotais ištekliais. Toks pranašumas neapsieina be kainos. Kūrėjai ir inžinieriai, koduojantys žemo lygio programavimo kalba, turi gerai suprasti procesoriaus funkcijas, kad galėtų rašyti instrukcijas, turinčias įtakos atminčiai ir apdorojimo laikui.

Kodavimas žemo lygio programavimo kalba yra labai daug laiko ir varginantis. Tai suprantama padidina išlaidas, susijusias su programos kūrimu tokia kalba, nes vos dviejų kodo eilučių atitikmeniui aukšto lygio kalba gali prireikti net 20 eilučių žemo lygio programavimo kalba. Dėl tokio lėto kūrimo žemo lygio kalbos pirmiausia tinka labai mažoms programoms. Jie beveik niekada nenaudojami kuriant didesnes programas.