Script et interpreteur

Résolu/Fermé
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 - Modifié par imadossebest le 17/12/2010 à 20:33
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 - 25 déc. 2010 à 23:05
Bonjour,

slt tous le monde :

j'ai besoin de votre aide,je veux les reponse de ces question SVP:

1- est ce que l'interpreteur fait la traduction d'un code source vers le langage interpret puis il fait l'execution instruction par instruction ou le code source est deja en langage interpret??

2- qu'elle est la difference entre langage script et langage interpret puis que le script c'est le code ecrit dans le langage interpret pour le traiter apres par un interpreteur.

3- est ce que l'interpreteur et le compilateur ont les meme phase c'est à dire méme le l'interpreteur lui aussi fait l'analyse lexical et syntaxique et semantique ms pas de generation du code ??

merci pour votre aide


A voir également:

2 réponses

Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
Modifié par Groarh le 17/12/2010 à 22:42
Salut,

questions de prof ça hein ? ;) Je vais te donner des pistes pour répondre toi-même à ces questions.

Mais d'abord, le terme « langage interpret » que tu utilises est un peu ambigü : est-ce que ça veut dire « langage interprété » ou est-ce que c'est un langage particulier que tu étudies en cours ? Je suppose que c'est « langage interprété ».

1 - Ça dépend :P
Autrefois, les scripts étaient exécutés instruction par instruction, sans compilation, mais aujourd'hui, on voit apparaître de plus en plus, des compilateurs Just-In-Time (JIT) qui compilent des scripts juste avant qu'ils soient exécutés. Par exemple, TraceMonkey est le compilateur JIT de Firefox, pour traiter du JavaScript.

2 - Aucune différence ! Script et langage interprété ça veut dire la même chose.

3 - Un compilateur et un interpréteur ont tous deux des phases d'analyse lexicale et d'analyse syntaxique (un interpréteur peut très bien te sortir une syntax error). Par contre, l'interpréteur ne fait pas vraiment d'analyse sémantique, disons juste que s'il y a un problème dans le code, ça causera une erreur à l'exécution (variable pas définie, erreur de type, etc.).

;)
1
très bonne réponse !
Je me suis moi-même gratté la tête un bon moment en cherchant la différence entre script et interpréteur en ayant en tête des exemples de langages pour lequel on utilise la dénomination "script" comme les scripts web côté client comme javascript que tu as cité ou encore les langages qualifiés de "semi-interprétés" comme java !
0
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
17 déc. 2010 à 23:16
Java c'est encore autre chose. Pour moi c'est un langage compilé, car il est compilé en code intermédiaire, le bytecode, qu'on peut considérer comme le code machine de la Java Virtual Machine (JVM). Et la JVM n'est rien de plus qu'un interpréteur de bytecode.
0
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 1
18 déc. 2010 à 00:24
merci bcccccccp vraiment votre reponse m'a aidé,

pour votre question je parle de langage interpreté.

alors aprés que j'ai lu votre reponse j'ai constaté :

1- script est un simple code rédigé dans un langage informatique qui va etre interpreté par un interpreteur.

2- le terme script est utilisé dans les langage interpretés

3- interpreteur fait l'analyse lexical et syntaxique comme un compilateur mais pas de l'analyse semantique il passe directement vers l'execution


c'est ça ???
0
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
18 déc. 2010 à 00:40
Oui !
Mais suivant le langage, il peut y avoir des subtilités. C'est une question d'expérience...
;)
0
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 1
Modifié par imadossebest le 18/12/2010 à 02:08
merci encore j'ai aussi une question et desolé si je vous derrange mais l'interpreteur est ce qu'il fait la traduction de l'instruction avant d'executé?

1-si oui alors la traduction de quel langage vers quel langage???

2- est ce que l'analyse lexical et syntaxique dans le compilateur sont les meme dans l'interpreteur c'est à dire que j'ai besoin d'une grammaire et analyse lexical me donne les token et analyse syntaxique me donne les arbre abstrait pour evaluer une expression dans le lagange interprete??

merci de repondre
0
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
18 déc. 2010 à 02:06
Il faut garder à l'esprit que les programmes ne sont rien d'autre que du texte : un code source que l'on tape au clavier, puis qui est stocké dans un fichier. La différence entre le compilateur et l'interpréteur, c'est que le compilateur transforme un fichier en un autre, alors que l'interpréteur ne produit rien, il traduit simplement le code en instructions pour le processeur.

Le langage des instructions est ce qu'on appelle le code machine et qui ne relève plus du domaine de l'informatique, mais de celui de l'électronique. Si ça t'intéresse, tu peux trouver des cours d'architecture des ordinateurs sur le Net ;)
0
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 1
18 déc. 2010 à 13:50
merci bcp j'ai bien compris je crois , je sais que le compilateur produit un fichier .exe par exemple, qui va etre executé.

et l'interpreteur traduit le code comme ceci:
expression(ou ligne) de code source(langage interpreté) vers instruction executable (langage machine)

c'est ça ??
0
imadossebest Messages postés 12 Date d'inscription dimanche 15 août 2010 Statut Membre Dernière intervention 20 mars 2011 1
25 déc. 2010 à 23:05
merci bcp
0