In computer programmering terminologie , programmeertalen worden vaak gescheiden in " high - level " en " low - level " talen . Het verschil tussen de twee is een kwestie van hardware interactie . Simpel gezegd , low - level talen verblijven " lager " op het computersysteem , dichter bij de actuele hard- interactie . High - level talen zijn geabstraheerd uit de buurt van de hardware . Het resultaat van deze abstractie kan resulteren in snellere , meer leesbare code , maar lagere snelheid voordelen en minder toegang tot systeembronnen . Abstractie Wat maakt high - level talen verschillen van low - level talen is het niveau van abstractie een taal heeft van systeembronnen . Omgaan met systeembronnen op een dagelijkse basis kan langzaam en pijnlijk worden . High - level talen zijn gemaakt om te gaan met dit probleem door het hanteren van het systeem voor de programmeur , bevrijden ze meer geavanceerde taak te voltooien terwijl het negeren van de kleinste details van het systeem, zoals geheugenbeheer . Dit heeft echter als nadeel dat een programmeur zich zou kunnen vinden in een situatie waarin toegang tot het systeem nodig is , en een high - level taal kan die toegang niet geven . Een high - level taal is meestal niet geschikt voor systemen programmeren . Speed High - level talen zijn typisch " geïnterpreteerd " talen in plaats van de " gecompileerde " low - level talen . " Uitgelegd " betekent eenvoudig dat een taal gebruikt een interpreter die broncode een regel uitgevoerd tegelijk plaats opstellen van een binair bestand . Echter , tolken zijn vaak programma's geschreven in gecompileerde talen . Hierdoor geïnterpreteerde taal - Python , als voorbeeld - draait alleen bovenop de Python interpreter , die is geschreven in C. Dit verhoogt het geheugen overhead tijd voor geïnterpreteerde programma en voeren vaak langzamer < . br > Eigenaardigheden Systeem Een schijnbare kracht van high - level code is de draagbaarheid . High - level code kan draaien op elk systeem dat de juiste tolk geïnstalleerd . Echter , wanneer een programma is samengesteld voor een computer , houdt zij rekening met de gehele omgeving van dat systeem in zijn compilatie . Een geïnterpreteerde taal is al geabstraheerd van het systeem tot zo'n punt , dat het geïnterpreteerd programma weet niets over het systeem , behalve voor wat de tolk kan leveren . Programmering van de Grenzen Door de aard van hogere talen , zijn er bepaalde taken waarvoor zij zijn niet geschikt voor , of althans nog niet geschikt voor . Zonder toegang tot systeembronnen , het ontwikkelen van snelle , OS - native applicaties is moeilijk . Zelfs ontwikkeling van een besturingssysteem problematisch . Naarmate er meer software beweegt online , dit feit wordt minder groot probleem , maar , voor commercieel en industrieel gebruik , kan geïnterpreteerde talen te langzaam werken , of te ver van hardware interactie . < Br > |