Analyse lexicale Analyse lexicale Chapitre Analyse lexicale Introduction Dé ?nitions Expressions régulières Automates Erreurs Lexicales Mis en ?uvre d'un analyseur lexical Outil Lex générateur d ? analyseur Lexical Introduction L'analyseur lexical constit

Analyse lexicale Chapitre Analyse lexicale Introduction Dé ?nitions Expressions régulières Automates Erreurs Lexicales Mis en ?uvre d'un analyseur lexical Outil Lex générateur d ? analyseur Lexical Introduction L'analyseur lexical constitue la première étape d'un compilateur Sa t? che principale est de lire les caractères d'entrée et de produire comme résultat une suite d'unités lexicales que l'analyseur syntaxique aura à traiter Code source Analyseur Lexicale Ensemble des lexèmes Messages d ? erreurs Code source Analyseur lexical U L U L suivante Analyseur syntaxique Analyse sémantique Table des symboles En plus l'analyseur lexical réalise certaines t? ches secondaires comme l'élimination de caractères super us commentaires tabulations ?n de lignes et gère aussi les numéros de ligne dans le programme source pour pouvoir associer à chaque erreur rencontrée par la suite la ligne dans laquelle elle intervient Compilation LMD - Université de Biskra Mr Meadi M Nadjib CAnalyse lexicale Dé ?nitions Une unité lexicale est une suite de caractères qui a une signi ?cation collective Un lexème toute suite de caractère du programme source qui concorde avec le modèle d'une unité lexicale Un modèle Règle lexicale est une règle associée à une unité lexicale qui décrit l'ensemble des cha? nes du programme qui peuvent correspondre à cette unité lexicale Attributs informations concernant le lexème champs dans la table des symboles Exemples L'unité lexicale IDENT identi ?cateurs en C a pour modèle toute suite non vide de caractères composée de chi ?res lettres ou du symbole et qui commencent par une lettre Des exemples de lexèmes pour cette unité lexicale sont truc i a ajoutervaleur L'unité lexicale NOMBRE entier signé a pour modèle toute suite non vide de chi ?res précédée éventuellement d'un seul caractère parmi Comme par exemple - L'unité lexicale REEL a pour modèle tout lexème correspondant à l'unité lexicale NOMBRE suivi éventuellement d'un point et d'une suite vide ou non de chi ?res le tout suivi éventuellement du caractère E ou e et d'un lexème correspondant à l'unité lexicale NOMBRE Cela peut également être un point suivi d'une suite de chi ?res et éventuellement du caractère E ou e et d'un lexème correspondant à l'unité lexicale NOMBRE Exemples de lexèmes e - e- - e Erreurs Lexicales Peu d'erreurs sont détectables au seul niveau Lexical Plusieurs stratégies sont possibles mode panique on ignore les caractères qui posent problème et on continue Cette technique se contente de re ?ler le problème à l'analyseur syntaxique transformations du texte source insérer un caractère remplacer échanger etc Elle se fait en calculant le nombre minimum de transformations à apporter au mot qui pose problème pour en obtenir un qui ne pose plus de problèmes Cette technique de récupération d'erreur est très peu utilisée en pratique car elle est trop coûteuse à implanter Expressions régulières Une expression régulière est une notation pour décrire un langage régulier Soit A un alphabet un ensemble de lettres une expression régulière est donc Les éléments de A ? et ? sont des expressions régulières Si ?? et ? sont des

  • 28
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager