“ Nivelul “ unui limbaj este apreciat prin pozitia pe care o ocupa
pe scara constituita de limbajul recunoscut de microprocesor ( limbaj masina ) si limbajul natural
al programatorului ( limba romana , limba engleza …) . i6d11dr
Un limbaj de nivel scazut este foarte apropiat de masina , el manipuleaza cu
elemente de nivel hardware , fizic , cum ar fi : registru , microprocesor ,
locatie de memorie , port de intrare / iesire etc .
Un limbaj de nivel inalt sau foarte inalt manipuleaza cu concepte
apropiate de limbajul natural , concepte de nivel logic , cum ar fi : colectie
de date , nume de operatie ( sort , writeln , open ) , variabile , constante
( asemanatoare ca inteles cu cele din matematica).
Cu ajutorul unui limbaj de nivel inalt programatorul se face mult mai
usor inteles de catre calculator . Uneori o singura limie de program scrisa
cu un astfel de limbaj poate echivala cu sute de linii de program scrise in
limbaj masina . Deci din punct de vedere al reducerii timpului de realizare
a unui program si al sigurantei in functionare ( absenta erorilor de programare
) este de preferat un limbaj de nivel cat mai ridicat ( inalt sau
foarte inalt ) .In schimb , pe masura ce limbajul are un nivel mai
ridicat executia programului conceput cu ajutorul sau va fi mai lenta , decat
a unui program ce realizeaza aceleasi operatii dar este scris in limbaj
de asamblare .
O alta diferenta esentiala intre cele doua tipuri de limbaje o reprezinta
portabilitatea , adica posibilitatea transferarii programelor pe un alt tip
de masina decat cea pe care au fost construite . Din acest punct de vedere
limbajul de asamblare este neportabil deoarece el este specific microprocesorului
. Programele realizate pe un tip de masina trebuie rescrise integral pentru
noul tip de masina , folosind un nou set de instructiuni -; care deobicei
difera foarte mult . Lucrurile stau altfel cu programele concepute cu ajutorul unui limbaj
de nivel inalt , deoarece acestea sunt detasate de masina . Intre
un astfel de program si calculator se interpune compilatorul ( sau interpretorul
) care rezolva corect transformarea fisierului-sursa in fisier-executabil
.