Magas szintű programozási nyelv
A magas szintű programozási nyelvek olyan nyelvek, melyek – az alacsony szintű nyelvekkel szemben – elvontabbak, könnyebben használhatóak és platform-függetlenebbek.
Az ilyen nyelvekben a CPU műveletek, mint a memóriaelérési modellek és a hatókörök kezelése elvonatkoztatottak.
A magas szintű nyelvek jellemzői
[szerkesztés]A magas szintű nem azt jelenti, hogy a nyelv magasabbrendű lenne az alacsony szintű társaihoz képest – ennek inkább az ellenkezője lehet igaz a számítógép működéséről való ismeretek mélysége tekintetében. A magas szintű elnevezés sokkal inkább arra utal, hogy nagyobb mértékű az elvonatkoztatás (absztrakció) a gépi kódtól. A magas szintű nyelvekben a regiszterek, memóriacímek és a vermek helyett változókkal, tömbökkel és összetett (komplex) aritmetikai vagy logikai kifejezésekkel lehet dolgozni. Ezen kívül nincsenek bennük olyan opcode-ok, amelyek közvetlenül gépi kódra lehetne fordítani, mint az alacsony szintű (pl. assembly) nyelvekben. Ezen kívül jelen lehetnek bennük karakterlánc (string) kezelő rutinok, objektumorientált nyelvi funkciók és file input/output.
Általánosságban elmondható, hogy míg a magas szintű programok az összetett programok írását egyszerűbbé teszik, addig az alacsony szintű nyelveken hatékonyabb kódot írhatunk. A magas szintű nyelvekben az összetett elemeket fel lehet bontani egyszerűbb, de még mindig meglehetősen komplex elemekre, amelyekhez a nyelvben találunk absztrakt eszközöket, és ez megkíméli attól a programozót, hogy mindig újra „feltalálja a spanyolviaszt”. Emiatt az olyan kódokat, amelyeknek különösen nagy sebességgel és hatékonysággal kell futniuk, gyakran akkor is alacsony szintű nyelven írják, ha egy magasabb szintű nyelven könnyebb lenne.
Ennek ellenére az újabb mikroprocesszor-architektúrák egyre nagyobb bonyolultsága/összetettsége miatt a magas szintű nyelvekhez íródott, jól tervezett fordítók gyakran hatékonyabb programokat hoznak létre alacsony szintű nyelveken írt társaikhoz képest.
Lásd még
[szerkesztés]Külső hivatkozások
[szerkesztés]- http://c2.com/cgi/wiki?HighLevelLanguage – The WikiWikiWeb's article on high-level programming languages