Le langage Z minimal Pr ZEGOUR DJAMEL EDDINE

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Structures de données avancées : Principales structures de fichiers
Structures de données avancées : Principales structures de données
Structures de données avancées : MBT ( Multidimensional B-trees )
Structures de données avancées : MTH ( Multidimensional trie hashing )
Structures de données avancées : Introduction
Premier programme en C :
Traitement sémantique et grammaire dattributs Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI)
Le langage Z Pr ZEGOUR DJAMEL EDDINE
Vue générale Pr ZEGOUR DJAMEL EDDINE
Machines de Turing Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI)
Sémantique des déclarations pour le langage Z minimal
Algorithmique Résume.
C.
Introduction : Compilation et Traduction
Les bases de l’Algorithmique
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Introduction : Compilation et Traduction
Partie 1 Etude de l'existant
Démarche de résolution de problèmes
Les éléments de base de l’algorithmique
Analyse lexicale Généralités Expressions rationnelles Automates finis
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Chapitre 3 Syntaxe et sémantique.
Séance d’introduction
Analyse lexicale Pr ZEGOUR DJAMEL EDDINE
Table des symboles Pr ZEGOUR DJAMEL EDDINE
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI) Plate-forme.NET.
Algorithmique et structure de données
Types de données fondamentaux
Structures de données avancées : Arbres AVL & Arbres Rouge et Noir
Structures de données avancées : Hachage dynamique
Structures complexes Pr ZEGOUR DJAMEL EDDINE
Expressions logiques Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
ALGORITHMIQUE ET PROGRAMMATION C
Procédures et fonctions Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Listes linéaires chaînées Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Un survol du language C.
Sémantique des expressions arithmétiques pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Tables de compilation pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
 Syntaxe du langage PHP
Module I3 algorithmique et programmation
D.E ZEGOUR Ecole Supérieure d’Informatique. Problèmes de décision Concepts de base Expressions régulières Notation particulière pour exprimer certaines.
Structures de données avancées : Fichiers uni-dimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
L’analyse lexicale Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Arbres AA
Structures de contrôle Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Sémantique des instructions pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures simples et tableaux Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
Interprétation/Génération de code pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Expressions sur les chaînes de caractères Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. Tél Fax Jean-Jacques Girardot
ISBN Chapitre 10 L'implémentation des sous- programmes.
Introduction et Généralités sur l’Algorithmique
Une brève présentation de C# Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Fonctions standards Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Introduction à la compilation
Module algorithmique et programmation
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) C O M P I L Z.
COMPIL - Z Compilateur visible
Fichiers Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Objets et Actions Élémentaires.
Les Structures simples
Organisation de la mémoire pour le langage minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Philippe Gandy – 10 novembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Transcription de la présentation:

Le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) www.zegour.uuuq.com email: d_zegour@esi.dz

Le langage Z minimal : Objectif Définir un sous langage de Z pour développer toutes les phases de compilation et avoir un compilateur qui tourne. Étendre progressivement le langage minimal jusqu’à obtenir le langage Z. Étendre encore plus pour une extension possible du langage Z.

Le langage Z minimal : Définition Pas de procédures et fonctions    Se limiter au type Entier et Booleen Se limiter aux expressions arithmétiques Se limiter aux seules instructions: Affectation, Lecture et Écriture 

Étape 1 : Compilateur pour le langage Z minimal Analyse lexicale et Implémentation  Analyse syntaxique et Implémentation Organisation de la mémoire (Zone de données, Attribution des adresses) Tables (Table des symboles, Les tables de compilation générées) Sémantique des déclarations ( Forme interne) Sémantique des expressions arithmétiques ( Forme interne) Sémantique des instructions d’affectation, de lecture et et d’écriture (Forme interne) Interprétation ou Génération de code

Étape 2 : Étendre le compilateur avec les expressions logiques Ajouter les expressions logiques et les expressions sur les chaînes de caractères dans la grammaire. Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 3 : Étendre le compilateur avec les expressions sur les chaînes de caractères Ajouter les chaînes de caractères dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 4 : Étendre le compilateur avec les structures de contrôle Ajouter les structures de contrôle "TANTQUE" et "POUR" dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 5 : Étendre le compilateur avec les structures simples et tableaux Ajouter les structures simples et tableaux dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 6 : Étendre le compilateur avec les procédures et fonctions Ajouter les procédures et fonctions dans la grammaire Ajouter les appels de procédures et fonctions dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 7 : Étendre le compilateur avec les structures complexes Ajouter les des structures complexes dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 8 : Étendre le compilateur avec les machines de Turing Ajouter les machines de Turing dans la grammaire Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 9 : Étendre le compilateur avec les listes linéaires chaînées Ajouter les déclarations des listes linéaires chaînées Ajouter les opérations sur les listes linéaires chaînées Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 10 : Étendre le compilateur avec les fichiers Ajouter les déclarations des fichiers Ajouter les opérations sur les fichiers Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Étape 11 : Étendre le compilateur avec les fonctions standards et autres Ajouter les fonctions Aleachaine et Aleanombre Autres … Reprendre (Lexique, Syntaxe, Sémantique, Forme interne, interprétation)

Grammaire du langage Z minimal : Conventions Sep dans {:, Un, Une, Des} Cste désigne une constante numérique entière Idf désigne un identificateur Opr dans { <, <=, >, >=, =, <> }; Opa dans { +, - } Opm dans { *, / }; Sign dans {+, -};

Grammaire du langage Z minimal : Déclarations <Algo Z>  [ ~Soit|Soient~ <Ps> ] Debut <Lis> Fin [;]   <Ps>  <S>;{ [~Soit|Soient~] <S>;}* <S>  <Li>[Sep <Typ> ] <Li>  Idf {, Idf}* <Typ>  Entier | Booleen

Grammaire du langage Z minimal : Instructions < Lis >  < Inst > { ; < Inst > }*   <Inst>  Idf := <Exp> |   Lire ( Idf {, Idf }* ) |   Ecrire (<Exp> {,<Exp>}* )

Grammaire du langage Z minimal : Expressions <Exp>  <Exps>[ Opr <Exps>]   <Exps>  [Sign] <Terme> { Opa <Terme> }* <Terme>  <Facteur>{Opm <Facteur>}* <Facteur>  Idf | Cste | ( <Exp>)