Changes between Version 25 and Version 26 of CaoCourseTme3


Ignore:
Timestamp:
Feb 17, 2007, 7:48:41 PM (18 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CaoCourseTme3

    v25 v26  
    4444et correspondant à une expression régulière : mot-clef, identificateur, etc...
    4545Le but de cette première étape est d'écrire le fichier ''vst.l'' qui définit les expressions
    46 régulières correspondant à tous les "tokens" utilisés par format ''.vst''.
     46régulières correspondant à tous les "tokens" utilisés dans un fichier texte respectant le format ''.vst''.
    4747
    4848  1. On rappelle qu'en VHDL, les lettres majuscules et minuscules ne sont pas différenciées. Cherchez dans le manuel de '''flex''' [wiki:CaoCourseTME3FlexManual Flex_Manual] une manière simple de générer un analyseur lexical qui ne fasse pas la différence entre majuscules et minuscules.
     
    201201
    202202Dessinez explicitement le graphe représentant la grammaire associée au format ''.vst''.
    203 Dans ce graphe, qui a - presque - une structure d'arbre, chaque noeud correspond à une construction grammaticale (c'est à dire une règle de grammaire), et un arc orienté entre deux noeuds X et Y signifie : "La construction grammaticale Y est contenue dans la construction grammaticale X". Les constructions grammaticales élémentaires sont les tokens,
    204 et constituent les "feuilles" de l'arbre.
    205 
    206 La syntaxe de la construction grammaticale correspondant à la déclaration d'un signal a déjà été définie. Il reste donc à :
     203Dans ce graphe, qui a - presque - une structure d'arbre, chaque noeud correspond à une construction grammaticale (c'est à dire une règle de grammaire), et un arc orienté entre deux noeuds X et Y signifie : "La construction grammaticale Y est contenue dans la construction grammaticale X". Les constructions grammaticales élémentaires sont les tokens, et constituent les "feuilles" de l'arbre.
     204
     205La syntaxe de la construction grammaticale correspondant à la déclaration d'un signal a déjà été définie. Il faut donc :
    207206  1. Définir la construction grammaticale correspondant à la délaration d'un port
    208207  1. Définir la construction grammaticale correspondant à la déclaration d'un composant
     
    210209  1. Définir la construction grammaticale correspondant à la déclaration d'une instance
    211210  1. Définir toutes les règles nécessaires à l'analyse du fichier complet.
    212  
    213 Vous pouvez faire des validations intermédiaires simplement en utilisant le symbole racine:
    214 {{{
    215 %start regle
    216 }}}
    217 Vous pouvez considérer que le TME est terminé lorsque le parser construit
    218 à partir des deux fichiers ''vst.l'' et ''vst.y'' est capable de lire et de reconnaitre
     211
     212Dans cette étape, on n'attachera aucune action de compilation aux règles grammaticales
     213définies dans le fichier ''vst.y''.
     214
     215Vous pouvez considérer que le TME est terminé lorsque le parser, construit automatiquement
     216par le Makefile à partir des deux fichiers ''vst.l'' et ''vst.y'', est capable de lire et de reconnaitre
    219217la totalité du fichier ''exemple.vst''.
     218Vous validerez le parser complet en lançant l'analyse syntaxique du fichier ''exemple.vst''.
     219{{{
     220$ parser ../exemple.vst
     221}}}
    220222
    221223= Compte-Rendu =
     
    223225Il n'y a pas de compte-rendu écrit à rendre pour ce TME.
    224226Il vous sera demandé une démonstration de votre analyseur lexical
    225 et de votre analyseur syntaxique au début du prochain TME... qui pourra
    226 porter su un autre fichier que le fichier exemple.vst.
    227 
     227et de votre analyseur syntaxique au début du TME4.
     228Attention... Cette démonstration pourra porter sur un autre fichier
     229que le fichier ''exemple.vst''.
     230