Langage de bas niveau

Langage de bas niveau

Un langage de programmation est dit de bas niveau lorsque le codage de celui-ci se rapproche du langage machine (dit "binaire"), et donc permet de programmer à un degré très avancé. Les langages de bas niveau sont à opposer aux langages de haut niveau, qui permettent de créer un programme sans tenir compte de la façon dont fonctionne le matériel de l'ordinateur censé exécuter le programme.

La définition reste malgré tout assez floue, et il n'existe pas de méthode particulière qui permettrait de déterminer objectivement si un langage peut être considéré de bas niveau.

On peut considérer qu'un langage de bas niveau permet de manipuler explicitement des registres, des adresses mémoires, voire des instructions machines.

Une autre définition qui n'est pas équivalente à la première est que tout langage bas niveau produit du code réversible : on peut ainsi remplacer les mots, expressions et types utilisés dans le langage dans un équivalent en langage machine.

Les langages machines et assembleurs sont la plupart du temps considérés comme des langages de bas niveau. D'autres langages, comme le C voir le C++, sont considérés par certains comme étant des langages de bas niveau. Cela est d'ailleurs cohérent avec la premiére définition. D'autres pensent au contraire que le C et le C++ sont des langages de haut niveau car ils ne permettent pas de gérer suffisamment finement le matériel dans certaines situations, ou encore parce que le C et le C++ sont des langages compilés et qui créent donc des programmes non-réversibles. Par opposition, le PHP est un langage de haut niveau qui se trouve être assez éloigné du langage machine.

Une citation attribuée à Alan Perlis dit que « A programming language is low level when its programs require attention to the irrelevant. » ; ce qui pourrait-être traduit par : « un langage de programmation est bas niveau lorsqu'il nécessite de faire attention aux choses qui ne sont pas pertinentes ». Néanmoins, cette citation doit être nuancée : dans cette citation, ce qui est considéré non-pertinent est la gestion du matériel et ses contraintes. Dans certains cas, la gestion du matériel est un impératif, et est loin d'être non-pertinente. Il est donc souvent nécessaire d'utiliser un langage de bas niveau, un langage de haut niveau ne pouvant permettre de coder le programme désiré.

Utilisation

Les langages de bas-niveau sont utilisés dans : l'informatique embarquée, industrielle, la création de drivers, de systèmes d'exploitation, voire le développement de jeux vidéo. Dans tous les autres domaines, les langages de bas niveau sont inutilisés et sont inutiles et contre-productifs. ( exception faite du langage C, pour ceux qui le considérent comme un langage de bas niveau ).

Les langages de bas niveau sont aujourd'hui assez peu utilisés. Il est en effet très difficile et très long de développer un programme informatique entièrement dans un langage de bas niveau comme l'assembleur. Les programmeurs préfèrent donc utiliser des langages de haut niveau, plus simples à utiliser.

Dans certains domaines, comme l'informatique embarquée ou en informatique industrielle, les langages de bas niveau sont encore assez utilisés, en complément d'un langage de "haut niveau". La majorité des applications en informatique industrielle/embarquée est programmée dans un langage de haut niveau (typiquement le C ou plus rarement le C++), et certaines portions assez limitées sont programmées en assembleur.

Performances

Contrairement aux idées reçues, programmer une application dans un langage de bas niveau comme l'assembleur ne permet pas forcément d'obtenir une application plus rapide. En effet, certains compilateurs utilisés pour les langages de haut niveau permettent d'optimiser le programme compilé de manière bien plus efficace qu'un programmeur ne pourrait le faire.

Voir aussi


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Langage de bas niveau de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • Langage De Bas Niveau — Un langage de bas niveau est un langage qui oblige le programmeur à se soucier de concepts proches du fonctionnement de la machine, comme la mémoire. Ceci rend pénible l élaboration de grosses applications, mais permet une gestion précise des… …   Wikipédia en Français

  • langage de bas niveau — žemojo lygmens kalba statusas T sritis automatika atitikmenys: angl. low level language vok. Grundsprache, f; niedere Maschinensprache, f rus. язык низкого уровня, m pranc. langage de bas niveau, m …   Automatikos terminų žodynas

  • Langage De Haut Niveau — En informatique, un langage de haut niveau (aussi appelé langage de programmation de haut niveau) est un langage de programmation qui permet au programmeur de s abstraire de détails inhérents au fonctionnement de l ordinateur, ceux ci étant pris… …   Wikipédia en Français

  • Langage de haut niveau — En informatique, un langage de haut niveau (aussi appelé langage de programmation de haut niveau) est un langage de programmation dont la grammaire permet de programmer sans tenir compte des détails inhérents au fonctionnement de l ordinateur.… …   Wikipédia en Français

  • Bas niveau — Langage de bas niveau Un langage de bas niveau est un langage qui oblige le programmeur à se soucier de concepts proches du fonctionnement de la machine, comme la mémoire. Ceci rend pénible l élaboration de grosses applications, mais permet une… …   Wikipédia en Français

  • bas niveau — ● loc. adj. ►SYSTM À un niveau proche du système, voire proche du matériel, carrément. Qui est peu développé: langage de bas niveau (LLL) …   Dictionnaire d'informatique francophone

  • Langages de bas niveau — Langage de bas niveau Un langage de bas niveau est un langage qui oblige le programmeur à se soucier de concepts proches du fonctionnement de la machine, comme la mémoire. Ceci rend pénible l élaboration de grosses applications, mais permet une… …   Wikipédia en Français

  • niveau — [ nivo ] n. m. • nivel 1311; altér. de livel XIIIe (cf. angl. level), lat. pop. °libellus, class. libella I ♦ Instrument qui sert à donner l horizontale, à vérifier l horizontalité. Niveau d eau : instrument à deux vases communicants qui, remplis …   Encyclopédie Universelle

  • Langage de programmation de haut niveau — Langage de haut niveau En informatique, un langage de haut niveau (aussi appelé langage de programmation de haut niveau) est un langage de programmation qui permet au programmeur de s abstraire de détails inhérents au fonctionnement de l… …   Wikipédia en Français

  • Langage Assembleur — Assembleur  Cet article concerne le langage d assemblage. Pour le programme produisant un exécutable à partir d un source écrit dans ce langage, voir Programme assembleur. Un langage d assemblage ou langage assembleur ou simplement… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”