On 12/27/2015 09:50 PM, enae wrote:
Bonjour,
J'aurai une petite question complémentaire:
vu que les compilateurs génèrent du "code machine", j'aurai tendance à dire que les langages compilés sont syntaxiquement de "haut niveau" par opposition à un langage type "assembleur". Suis-je dans le vrai?

L'assembleur n'est quasiment plus utilisé (sauf peut-être dans l'embarqué de bas niveau, sur des petits microcontroleurs 8 bits avec quelques kilo-octets de mémoire). Un compilateur optimiseur génère aujourdhui un code plus rapide que n'est capable de coder un developpeur humain experimenté en assembleur. Et de nos jours des processeurs de marques différentes (par exemple AMD et Intel) executent le même jeu d'instruction différemment. Concrètement un compilateur optimiseur va générer du code un peu différent pour un AMD

Par contre, certains langages (principalement le C) permettent de mélanger un peu de code assembleur avec beaucoup d'autre code (en C). Et certaines fonctions ne peuvent pas être codées en C (par exemple, la fonction longjmp du standard C).

A mon avis, il y a plusieurs niveaux de langages, et tous les langages ne sont pas de haut niveau. En particulier, le langage C est un langage de bas niveau, proche de la machine. Il existe des langages de plus haut niveau, par exemple Ocaml ou Common Lisp ou Prolog ou Clojure ou Scala. Ces langages sont plus concis et plus expressifs que le langage C. Parfois, un langage de haut niveau est compilé en du code C. http://programmers.stackexchange.com/a/257873/40065 http://bootstrappingartificialintelligence.fr/WordPress3/2014/01/stop-programming/

Pour un panorama de plusieurs langages de programmation, voir http://www.cs.rochester.edu/~scott/pragmatics/

Bonne année à tous!

PS. Pour enae: il est difficile de répondre plus précisément sans savoir si vous savez programmer, et quels languages de programmation connaissez vou...

--
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***

Répondre à