Compilateur et interpréteurs

bnath Messages postés 5 Date d'inscription vendredi 29 juillet 2005 Statut Membre Dernière intervention 4 août 2005 - 4 août 2005 à 00:16
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 - 4 août 2005 à 13:05
quel est la diff entre un interpreteur et un compilateur

4 réponses

ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
4 août 2005 à 00:35
Langages Interprétés ou Compilés ?

Classiquement, on oppose les langages interprétés aux langages
compilés. La première série de langages correspond à des langages dont
l'exécution se fait, en gros, en suivant pas à pas le code source et en
donnant au fur et à mesure les instructions qui s'imposent au
processeur. La compilation, quant à elle, correspond à la traduction de
l'intégralité du programme en langage machine. On n'aura donc plus
besoin par la suite d'utiliser un utilitaire annexe pour faire tourner
le programme. Enfin, il existe une classe intermédiaire de langages
dits "pseudo-compilés", dans laquelle le programme est d'abord traduit
vers un langage intermédiaire entre le bas niveau et le langage de
départ, et qui sera interprété. Il est à noter que cette classification
ne concerne pas tant les langages de programmation que les
implémentations elle-mêmes, car ce n'est pas une propriété intrinsèque
au langage (sauf quelques rares exceptions, comme l'assembleur).
D'autre part, de nombreux langages mélangent les deux styles. Forth est
un tel langage, certains LISP en sont un autre exemple.

Langages compilés

On trouve dans cette catégorie le langage assembleur, les langages C et
C++, la plupart des versions de Pascal, Delphi, Caml... De façon
générale, l'exécution d'un langage compilé est plus rapide que dans les
autres cas. Mais l'écriture d'un compilateur est une opération très
complexe. Ce type de langage a permis une plus grande liberté dans
l'écriture du code, et ainsi la création de logiciels plus subtils.

Langages interprétés

Cela concerne des langages tels que certains LISP, Perl, Python, les
vieux BASIC's... Ces langages sont généralement plus lents, mais sont
moins dépendants de la machine sur laquelle ils tourneront. De plus, le
fait d'être interprété donne une plus grande souplesse, permettant par
exemple de créer des bouts de programme "à la volée".

Langages pseudo-compilés

On trouve dans cette section le langage Java, certains LISP, mais aussi
les vieilles versions de Visual Basic et de Caml. L'avantage de ce
choix d'implémentation tient à ce que l'utilisation du pseudo-code
permet une exécutions plus rapide qu'une simple interprétation, tout en
pouvant être portable (c'est la raison historique pour laquelle Java
entre dans cette catégorie).



En espérant que cela t'aura éclairé

@+
Bonne Prog'
Nico [www.ni69.new.fr]
<hr size="2" width="100%">
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
4 août 2005 à 00:39
PS : la politesse est d'usage sur ce forum... C'est pourquoi un " s'il vous plaît " ou un " merci de me répondre " seraient appréciés...

@+
Bonne Prog'
Nico [www.ni69.new.fr]
<hr size="2" width="100%">
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
4 août 2005 à 09:22
Une petite précision en ce qui concerne les langages pseudo-compilés : tous les langages supportant le .Net Framework rentrent dans cette catégorie. En effet, le compilateur produit un code intermédiaire appelé CIL (Common Intermediate Language) qui sera traduit en langage machine (selon le processeur cible) au moment de l'exécution par une machine virtuelle nommé CLR (Common Language Runtime) et selon le processeur cible.


<HR color=#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
4 août 2005 à 13:05
En effet DelphiProg, je n'ai pas mentionné cette catégorie (honte à moi ! ).

Merci de le signaler

@+
Bonne Prog'
Nico [www.ni69.new.fr]
<hr size="2" width="100%">
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
Rejoignez-nous