Вы находитесь на странице: 1из 8

FERHAT ABBES- SETIF-1 UNIVERSITY ‫ سطيف‬-‫جامعة فرحات عباس‬

UNIVERSITE FERHAT ABBES – SETIF 1

Faculté des Sciences - Département d’Informatique

Cours de Compilation
(Analyse Lexicale)
3ème Année License Inf.
Dr. Abdelaziz LAKHFIF

2020- 2021
Introduction
 Architecture d’un Compilateur

Bibliographie
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

Compilers: Principles, Techniques, and Tools, Aho, Sethi and Ullman

—http://dragonbook.stanford.edu/

> Parsing Techniques, Grune and Jacobs

—http://www.cs.vu.nl/~dick/PT2Ed.html

> Advanced Compiler Design and Implementation, Muchnik

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2021-2020:1/270
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

Exercice 01
•Répondre avec Vrai (V) ou Faux (F) pour chaque question du tableau suivant :

1 Les entrées dans la table des symboles sont crées et utilisées


pendant la phase d’analyse syntaxique
2 Un compilateur peut construire une table de symboles pour
chaque classe
3 Dans une expression régulière le symbole * veut dire un ou
plus

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2020-2021:1/370
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

1 Les entrées dans la table des symboles sont crées et utilisées F


pendant la phase d’analyse syntaxique
2 Un compilateur peut construire une table de symboles pour V
chaque classe
3 Dans une expression régulière le symbole * veut dire un ou F
plus

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2020-2021:1/370
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

•Exercice 02
Décrire l’ensemble des chaines (langages) dénotées par les ERs suivantes :

1
(x|y)*x(x|y)
2
(x*y*)*xx (x | y)*
3
p(p|q)*p
4
a*ba*ba*ba*
5
1| (0|10)*11(0|01)*

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2021-2020:1/370
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

•Décrire l’ensemble des chaines (langages) dénotées par les ERs suivantes :

1 Toutes les chaines de x et y finissant par xx ou xy


(x|y)*x(x|y)

2 Toutes les chaines de x et y avec au moins une paire de x


(x*y*)*xx (x | y)*
adjacente
3 Toutes les chaines de p et q qui commencent et finissent par p
p(p|q)*p

4 Toutes les chaines de a et b contenant exactement 3 b


a*ba*ba*ba*

5 Toutes les chaines de 0 et 1 avec au plus une paire


1| (0|10)*11(0|01)*
consécutive de 1

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2021-2020:1/370
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

Exercice 03
•Ecrire une expression régulière pour toutes les chaines de ‘x’ et
‘y’ contenant la sous chaine ‘xyyx’

•Ecrire une expression régulière pour toutes les chaines de ‘a’ et


‘b’ où chaque ‘b’ est immédiatement suivi par au moins trois (3)
‘a’.

•Ecrire une expression régulière pour toutes les chaines de ‘a’ et


‘b’ contenant un nombre impair de ‘b’.

Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2021-2020:1/370
Introduction
 Architecture d’un Compilateur

Exercices
 Analyse Lexicale
 Analyse Syntaxique
 Analyse Sémantique
 Génération de Code Intermédiare

Exercice 03
•Ecrire une expression régulière pour toutes les chaines de ‘x’ et ‘y’ contenant
la sous chaine ‘xyyx’

(x | y)* xyyx (x | y)*

•Ecrire une expression régulière pour toutes les chaines de ‘a’ et ‘b’ où chaque
‘b’ est immédiatement suivi par au moins trois (3) ‘a’.

(a|(baaa))*
•Ecrire une expression régulière pour toutes les chaines de ‘a’ et ‘b’ contenant
un nombre impair de ‘b’.

a* b ( (b a* b) | a)*
Université Ferhat Abbas-Sétif-1 Compilation - 3ème Année License Informatique Semestre 2021-2020:1/370

Вам также может понравиться