SlideShare une entreprise Scribd logo
Dirigé par: Mr.Allaoui Taher
Travail Réalisé par :
BENYAMMI BACHIR & HASSANI Mustapha
4eme Année informatique cycle long
2006 - 2007
Ministère de l’Enseignement et de la Recherche Scientifique
UNIVERSITE AMAR TELIDJI
LAGHOUAT
FACULTE DES SCIENCES ET DE L’INGENIERIE
DEPARTEMENT DE GENIE INFORMATIQUE
Module Compilation
THÈME:
2
Plan du travail
 Introduction.
 Objectif.
 Définition du Khawarizmi
 Conclusion.
P
L
A
N
D
U
T
R
A
V
A
I
L
12/01/2016 Rélisation d'un interpréteur Khawarizmi
3
Introduction
 Les langages de programmation ont été nés
avec l’apparition des ordinateurs.
 Les langages de programmation ont été fondus
essentiellement pour effectuer les grands
calculs.
 La majorité des langages utilisent les lettres
Anglo-Saxons pour définir l’ensemble des
identifications.
 Les messages d’erreurs sont exprimés en
anglais.
I
N
T
R
O
D
U
C
T
I
O
N
12/01/2016 Rélisation d'un interpréteur Khawarizmi
4
 Des dizaines du L.P arabes on été construites :
‫غريب‬–‫العراق‬1978
‫بيسك‬–‫الكويت‬1981
‫سينا‬–‫السودان‬1986
‫ال‬‫العربي‬ ‫باسكال‬–‫السعودية‬1996
...
 La plupart de ces langages n’ont été pas réussites,
parmi les causes on distingue :
 Les différents codage des lettres arabes.
 La faiblesse de la maintenance et de la mise à jour.
 Les problèmes de financement.
 L’existence des langages standards et puissants
(Pascal, C++, JAVA, …).
I
N
T
R
O
D
U
C
T
I
O
N
Introduction (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...

De nouvelles applications apparaissent chaque jour qui se déroulent à distance pour: vidéoconférence, assistance à distance (helpdesk), enseignement à distance, maintenance et télétravail. Le bureau distant garantissant: la sécurité de l’accès, la mobilité des utilisateurs et la mise à disposition des applications. Java Remote Desktop (jrdesktop) est un logiciel multi-plateforme pour le contrôle de bureau à distance, l'assistance à distance et le partage de bureau, l'outil est utile pour les réseaux domestiques, help desk, l'administration du système et de la collaboration.

bureaurapportjrdesktop
Métriques de qualité logicielle
Métriques de qualité logicielleMétriques de qualité logicielle
Métriques de qualité logicielle

Cette présentation présente les concepts basiques de la qualité logicielle, elle explique le principes de la mesure et l’évaluation de la qualité, l'importance des métriques dans un projet informatique, le rôle des modèles de qualité comme la norme ISO9126, ainsi que les métriques de code, à savoir: les métriques de McCabe, de Chidamber et Kemerer, etc.

métrique logiciellecomplexité cyclomatiqueiso9126
Python et son intégration avec Odoo
Python et son intégration avec OdooPython et son intégration avec Odoo
Python et son intégration avec Odoo

Présentation sur le langage python et son utilisation dans l'ERP Odoo

 Un langage de programmation en arabe
peut facilité la tâche aux élèves et aux lycéennes
à comprendre et à appliquer les principes et les
notions d’algorithmique et de la programmation.
 L'idée est de développer un langage
destiner à l'enseignement qui combine à la fois la
facilité du Pascal (utilisation des mots naturels tel
que Program, Read, Write, ..) et l'abréviation du
C ({}, ||, &&, !, …).
5
I
N
T
R
O
D
U
C
T
I
O
N
Objectif
12/01/2016 Rélisation d'un interpréteur Khawarizmi
6
Interpréteur ‫؟؟‬...
 Que ce qu’un interpréteur ?
 Quelle est la lexique du Khawarizmi ?
 Quelle est la syntaxe du Khawarizmi ?
 Quelle est la structure du”Khawarizmi ?
I
N
T
R
O
D
U
C
T
I
O
N
12/01/2016 Rélisation d'un interpréteur Khawarizmi
7
Interpréteur
 Un interpréteur est un programme informatique qui
exécute lui-même les opérations spécifiées par le
programme source, il analyse une instruction puis
l’exécute immédiatement;
 A l’inverse d’un compilateur, un interpréteur travaille
simultanément sur le programme et sur les données;
 L’interpréteur doit être présent sur le système à chaque
fois que le programme est exécuté;
 Exemples d’interpréteurs: BASIC, Perl, Prolog, LISP, …
C
O
M
P
L
A
T
E
U
R
12/01/2016 Rélisation d'un interpréteur Khawarizmi
8
Lexique du Khawarizmi
D
E
F
I
N
I
T
I
O
N
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt

Base de Donnée Avancées PL/SQL et Introduction au concept de Big Data et de Base de données NoSQL

big datapl/sqlview oracle
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école

Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école

Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services

Visitez http://liliasfaxi.wix.com/liliasfaxi

9
Jeu de caractères
)(}{"Espace
.،‫؛‬:/
»«#~<>
=+-*÷%
‫ا‬..‫ي‬A..Za..z0..9_
J
E
U
D
E
C
A
R
A
C
T
E
R
E
S
Les caractères autorisés dans un programme
écrit en ”Khawarizmi“ sont:
!|&
12/01/2016 Rélisation d'un interpréteur Khawarizmi
10
Unités lexicales « tokens »
1. Les mots réservés:
2. Les variables et les fixes:
Sont les identificateurs déclarés (ayant un type )
‫برنامج‬‫تصريح‬‫صحيح‬‫طبيعي‬
‫منطقي‬‫رمز‬‫سلسلة‬‫نعم‬
‫ال‬‫اقرا‬‫اطبع‬‫بينما‬
‫قم‬‫اذا‬‫فان‬‫واال‬
T
O
K
E
N
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
11
3. Les opérateurs:
Arithmétiques:
Conditionnels:
Logiques:
4. Les séparateurs:
=+-*÷%
~#<>»«
|&!
T
O
K
E
N
S
Espace " ( ) { }
/  : ‫؛‬ ، .
Unités lexicales (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
12
5. Identificateurs:
 Lettres (arabes et français), chiffres et ‘_’.
 Commençant obligatoirement par une lettre.
 Pas de case sensitive.
 Longueur max est de 64 caractères.
6. Nombres
 Suites de chiffre entre 0 et 9.
 Seulement les nombres entiers sont acceptés.
7. Commentaires
 ‘’ pour les commentaires d’une seule ligne.
 ‘’ et ‘’ pour les commentaires multi-lignes.
 Pas d’imprécation dans les commentaires.
T
O
K
E
N
S
Unités lexicales (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB

Visitez http://liliasfaxi.wix.com/liliasfaxi

Gestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiGestion des Chercheurs d’Emploi
Gestion des Chercheurs d’Emploi

Ceci est le rapport de mon stage de PFE au sein du cabinet Lider-gestion à tetouan-Maroc dont le thème est : " Gestion des Chercheurs d’Emploi "

rhrecrutementemploi
pfe book 2023 2024.pdf
pfe book 2023 2024.pdfpfe book 2023 2024.pdf
pfe book 2023 2024.pdf

pfe book 2023 2024 elitetech-consulting

pfe
Automates et expressions régulières
13
0 2
L | C
1
L # de L et C
1
C
C
2
# de C
0
0
‘"’ ‘"’
1 2
# de ‘"’
Ident -> Lettre (Lettre / Chiffre)* #
Nbr -> Chiffre (Chiffre)* #
Chaine -> '"' ( # )* '"'
A
U
T
O
M
A
T
E
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Automates et expressions régulières
(suite …)
14
A
U
T
O
M
A
T
E
S
Comm -> '' '' ( # )* EOL
Comm.multi -> '' # ( # )* ''
2
‘’
EOL 3
# de EOL
0
‘’
1
0 2
‘’ # de ‘’ ‘’
31
# de ‘’
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Automate union
15
A
U
T
O
M
A
T
E
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Table de Transitions
Etat
Sym
L C ‘’ Sep Opr Autres
_Initial _Ident _Nbr _Chaine _Sep _Opr _Erreur
_Ident _Ident _Ident _#Ident
_Nbr _Erreur _Nbr _#Nbr
_Chaine _Fin
_Chaine
_Chaine
_Slash _#Slash
_#Slash _#Slash
_#Eol _#EOL
_Carac _Carac _#Carac
16
T
R
A
N
S
I
T
I
O
N
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

CM processus-unifie
CM processus-unifieCM processus-unifie
CM processus-unifie
unified processup
Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1

Université de Bouira, Mathématique et informatique Cours codage et représentation de l'information S1

informatiquemicodage
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque

Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque

Table de Transitions (suite …)
Etat
Sym
EOL Blanc  / Autres
_Initial _Initial _Initial _Carac _Slash _Erreur
_Ident _#Ident
_Nbr _#Nbr
_Chaine _Chaine
_Slash _#EOL _#Slash
_#Slash _Muti
_Lignes
_Comm
_#Slash
_#Eol _Comm _#EOL
_Carac _#Carac
17
T
R
A
N
S
I
T
I
O
N
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Table de symboles
18
N° Nom Intituler Valeur Unité Type
01 Prog ‫برنامج‬ 0 Mot Réservé Vide
02 Conste ‫ثابت‬ 0 Mot Réservé Vide
…… …………… ……… ……… ……….. ……
19 Opr_Addi + 0 Opérateur Vide
…… …………… ……… ……… ……….. ……
34 Parent_Ouvr ( 0 Séparateur Vide
…… …………… ……… ……… ……….. ……
43 Ident_1 Factorielle Identificateur Vide
44 Ident_2 ‫أ‬ 120 Variable Entier
45 Const_1 ‫النتيجة‬ ‫النتيجة‬ Constante Chaine
46 Ident_3 ‫منعدم‬ ‫نعم‬ Variable Logic
45 Ident_4 ‫ن‬ 10 Fixe Naturel
T
A
B
L
E
S
Y
M
B
O
L
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Chaine de références
19
N° Symbole Nom Intituler Ligne Colonne
1 1 Prog ‫برنامج‬ 1 6
2 43 Ident_1 ‫محاولة‬ 1 16
3 39 Point_Virgule ‫؛‬ 1 17
4 3 Variable ‫متغير‬ 2 5
5 44 Ident_2 ‫أ‬ 3 1
6 40 Deux_Point : 3 3
7 5 Entier ‫صحيح‬ 3 16
..... … … … … …
61 35 Accolade_Ferm { 13 1
62 37 Point . 14 1
C
H
I
N
E
D
E
R
E
F
E
R
E
N
C
E
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
20
Syntaxe du Khawarizmi
S
Y
N
T
A
X
E
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web

Manuel des TP - Atelier de développement web (PHP) Niveau : Licence informatique - L2 Auteur : Houda TOUKABRI Bibliothèque ISET Kélibia [TPI11 : 02-01-2018]

phpwebserveur
Cours Génie Logiciel - Introduction
Cours Génie Logiciel - IntroductionCours Génie Logiciel - Introduction
Cours Génie Logiciel - Introduction

La présentation du premier cours du module GL

développementgénie logiciel
Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)

rapport de mémoire (projet fin d'études)

#bi#analyse data#power bi
Syntaxe
21
Programme = " ‫برنامج‬ " Ident "‫"؛‬ Bloc ".".
ProgrammeProgramme IdentIdent ..BlocBloc
Bloc = [Partie_Declaration_Constantes]
[Partie_Declaration_Variables]
Bloc_Instructions.
Partie_Declaration_
Constantes
Partie_Declaration_
ConstantesBlocBloc Partie_Declaration_
Variables
Partie_Declaration_
Variables Bloc_InstructionsBloc_Instructions
S
Y
N
T
A
X
E
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Syntaxe (suite …)
22
Partie_Declaration_Constantes = " "‫ثابت‬ Deffinition_Constante
{Deffinition_Constante}.
Partie_Declaration_
Constantes
Partie_Declaration_
Constantes Deffinition_ConstanteDeffinition_Constante
Partie_Declaration
_Variables
Partie_Declaration
_Variables
Deffinition_
Variables
Deffinition_
Variables
Partie_Declaration_Variables = " ‫متغير‬ " Deffinition_Variables
{Deffinition_Variables}.
S
Y
N
T
A
X
E
12/01/2016 Rélisation d'un interpréteur Khawarizmi
23
Deffinition_Constante = Ident "=" Constant "‫."؛‬
Deffinition_
Constante
Deffinition_
Constante IdentIdent == ConstantConstant
Constant = [Opr_Signe] Nombre | Chaine | "‫"نعم‬ | "‫."ال‬
ConstantConstant Opr_SigneOpr_Signe NombreNombre
ChaineChaine
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
24
Deffinition_Variables = Idents ":" Type "‫."؛‬
Deffinition_
Variables
Deffinition_
Variables IdentsIdents :: TypeType
Idents = Ident {'،' Ident}.
IdentsIdents IdentIdent ''
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)

Support Programmation Orientée Aspect (AOP) avec AspectJ

aopaspect oriented programmingprogrammation orientée aspect
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes

Conception et Développement d'une solution Web et Mobile pour le compte de la société Medor http://blog.hosni.me/2016/11/isimm-3eme-la-info-rapport-pfe.html

latexrapportpfe
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.

Скидки и акции в универсамах Верный

25
Bloc_Instructions = "}" Instructions "{".
Bloc_InstructionsBloc_Instructions }} InstructionsInstructions {{
Instructions = Instruction {"‫"؛‬ Instruction}.
InstructionsInstructions InstructionInstruction
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
26
Instruction = [Lecture | Ecriture | Affectation |
Instruction_Conditionelle | Instuction_Repetition].
InstructionInstruction
LectureLecture
EcritureEcriture AffectationAffectation Instruction_
Conditionelle
Instruction_
Conditionelle
Instuction_
Repetition
Instuction_
Repetition
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
27
Lecture = " ‫اقرا‬ " ")" Idents "(".
LectureLecture IdentsIdents (())
Ecriture = " ‫اطبع‬ " ")" Idents "(".
EcritureEcriture IdentsIdents (())
Affectation = Ident "=" Expression.
AffectationAffectation IdentIdent == ExpressionExpression
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
28
Expression = Expression_Simple [Opr_Rel Expression_Simple].
ExpressionExpression Expression_
Simple
Expression_
Simple Opr_RelOpr_Rel
Expression_Simple = [Opr_Signe] Terme {Opr_Add Terme}.
Expression_
Simple
Expression_
Simple Opr_SigneOpr_Signe TermeTerme Opr_AddOpr_Add
Terme = Facteur
{Opr_Mul Facteur}.
FacteurFacteur Opr_MulOpr_MulTermeTerme
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Un homme triste à en mourir
Un homme triste à en mourirUn homme triste à en mourir
Un homme triste à en mourir

Chanson / Poème Emmanuel Buriez 2015

singchansontriste
Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.

Este documento presenta una sesión sobre el compromiso misionero de San Antonio María Claret. Resalta su vida dedicada a la evangelización y fundación de la Congregación Claretiana. Propone analizar videos y presentaciones sobre Claret para entender mejor su ejemplo de fe y su legado de valores como la solidaridad y la responsabilidad. Finalmente, pide reflexionar sobre cómo seguir su ejemplo en la vida actual.

Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.

Este documento presenta información sobre la Iglesia católica como una comunidad de hermanos con una estructura jerárquica. Explica que el Papa y los obispos ejercen autoridad para servir, y que la Iglesia católica es la única fundada por Jesucristo. También incluye preguntas sobre un video y lectura relacionados con estos temas de la autoridad y liderazgo en la Iglesia.

29
FacteurFacteur
IdentIdent
ConstConst
ExpressionExpression
))
((
FacteurFacteur
!!
Facteur = Ident | Const | ")" Expression "(" | "!" " Facteur | " ‫"نعم‬ | "‫."ال‬
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
30
Instruction_Conditionelle = " ‫اذا‬ " Expression "‫"فان‬
Bloc_Instructions ["‫واال‬ " Bloc_Instructions].
Instruction_Con
ditionelle
Instruction_Con
ditionelle ExpressionExpression
Bloc_InstructionsBloc_Instructions
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
31
Instuction_Repetition = " ‫بينما‬ " Expression " ‫قم‬ " Bloc_Instructions.
Instuction_Repe
tition
Instuction_Repe
tition ExpressionExpression Bloc_InstructionsBloc_Instructions
S
Y
N
T
A
X
E
Syntaxe (suite …)
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Arbre Syntaxique
32
A
R
B
R
E
S
Y
N
T
A
X
I
Q
U
E 12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Kitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdfKitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdf
Manual bosch cong. vertical gsn32 v73eu
Manual bosch   cong. vertical gsn32 v73euManual bosch   cong. vertical gsn32 v73eu
Manual bosch cong. vertical gsn32 v73eu

O documento fornece instruções sobre o descarte correto do embalagem e do aparelho usado, além de conselhos de segurança para o uso do aparelho. Ele destaca a importância de entregar o aparelho usado em centros de coleta oficiais para reciclagem devido aos materiais valiosos nele contidos.

Télétravail mode d'emploi
Télétravail mode d'emploiTélétravail mode d'emploi
Télétravail mode d'emploi

Retour dessiné sur l'étape Bordelaise du tour de France du télétravail le 12 juin 2014 à Cap Sciences

cap sciencestélétravailtiers-lieux
33
Exemple d’un programme
‫برنامج‬‫حساب‬_‫القوى‬_‫النونية؛‬
‫متغير‬
،‫ن‬‫م‬‫أس‬ ،‫عدد‬ ،:‫صحيح‬‫؛‬
}
Initialisation des variables
‫ن‬=1‫؛‬
‫م‬=1‫؛‬
Lecture des variables
‫اقرا‬(‫أس‬ ،‫عدد‬)‫؛‬
Calcul de la puissance
‫بينما‬(‫ن‬»‫أس‬)‫قم‬
}
‫م‬=‫م‬*‫عدد؛‬
‫ن‬=‫ن‬+1‫؛‬
{‫؛‬
Affichage du résultat
‫اطبع‬(‫عدد‬+”‫أس‬”+‫أس‬+ +”‫يساوي‬”+‫م‬)‫؛‬
{.
E
X
E
M
P
L
E
12/01/2016 Rélisation d'un interpréteur Khawarizmi
34
C
O
M
P
I
L
A
T
I
O
N
Déroulement
de la
compilation
12/01/2016 Rélisation d'un interpréteur Khawarizmi
35
 Elimination des blancs et des caractères de contrôles;
 Elimination des commentaires;
 Reconnaissance des mots réservés, des opérateurs,
des séparateurs;
 Reconnaissance des identificateurs, constantes
(nombre, chaines de caractères);
 Remplissage de la table des symboles et de la chaîne
de références;
 Gestion des erreurs en parallèle.
Analyseur Lexical
L
E
X
I
C
A
L
12/01/2016 Rélisation d'un interpréteur Khawarizmi
36
 Méthode d'analyse par la descente récursive;
 Pour chaque non terminal, une procédure est associée;
 L'analyse est faite par des appels récursifs aux
procédures;
 Avancement lors de la reconnaissance des terminaux;
 L'arbre syntaxique est construit au fur et à mesure de
l'analyse;
 A la reconnaissance d'un terminal; un nœud est crée;
 Une feuille est crée lors de la reconnaissance d'un
terminal;
 Gestion des erreurs en parallèle.
Analyseur Syntaxique
S
Y
N
T
A
X
E
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...

Material utilizado en el Taller “Hacia la Construcción de una Estrategia Nacional de Datos Abiertos” (SGP OEA ProGobernabilidad), realizado el 2 de junio 2015 Expositora: Caroline Gibu, Ciudadanos al Día

Au Nouveau Bonheur
Au Nouveau BonheurAu Nouveau Bonheur
Au Nouveau Bonheur

restaurant paris

restaurant
37
 L'analyse est faite en parallèle avec l'analyse
syntaxique;
 Déclaration des constantes et des variables;
 Contrôle et conversion de types;
 Affectation des types et des valeurs;
 Evaluation des expressions;
 Mise à jour de la table de symboles;
 Gestion des erreurs;
Analyseur Sémantique
S
E
M
A
N
T
I
Q
U
E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
38
Erreurs Lexicales
 Pas de texte source;
 Caractère illégal ou code erroné;
 Identificateurs erroné ou trop long;
 Fin de commentaire attendu;
Erreurs Syntaxiques
Symbole attendu mais un autre est trouvé;
Erreurs Sémantiques
 Type attendu mais un autre est trouvé;
 Variable non déclaré;
 Constante ne peut pas être affecter;
 Opération interdit;
 Division par zéro;
Gestion des erreurs
E
R
R
E
U
R
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
39
S
T
R
U
C
T
U
R
E
Structure du Khawarizmi
12/01/2016 Rélisation d'un interpréteur Khawarizmi
40
Avantages du Khawarizmi
A
V
A
N
T
A
G
E
S
Au niveau de l‘utilisation:
 Code source en arabe;
 Lettres arabe et latins (plus de 60 lettres);
 Chiffres et caractères spéciaux;
 Déclaration des variables et des constantes;
 Divers types simples (Entier, Naturel, Logique, Caractère, Chaîne);
 Boucles et expressions conditionnelles;
 Commentaires simples et multi-lignes;
 Opérations arithmétiques, relationnelles, logiques, affectations, …
 Lecture et écriture (Entrée-sortie);
 Détection des erreurs avec possibilité de correction;
Au niveau du la programmation:
 Organisation du programme en unités et classes;
 Tableaux dynamiques;
 Interface utilisateur;
 Séparation entre l’interface et l’interpréteur;
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Cocina Smeg B91GMCX
Cocina Smeg B91GMCXCocina Smeg B91GMCX
Cocina Smeg B91GMCX

Este manual de uso proporciona instrucciones sobre el uso seguro y la limpieza de un horno. Describe las partes del horno como la encimera de cocción, el panel de controles y los accesorios. Explica cómo encender el horno y regular la temperatura, y ofrece consejos sobre la cocción de alimentos. También incluye advertencias de seguridad e instrucciones para la limpieza y el mantenimiento del horno.

smegb91gmcxcocina smeg
Nevera Smeg FAB50P
Nevera Smeg FAB50PNevera Smeg FAB50P
Nevera Smeg FAB50P

Este documento proporciona instrucciones para el uso y mantenimiento de un refrigerador. Describe las características del refrigerador como bandejas, cajones, estantes y compartimentos. Explica cómo usar cada parte del refrigerador para almacenar y conservar diferentes tipos de alimentos. También incluye consejos sobre seguridad, cuidado del medio ambiente, instalación y resolución de problemas.

nevera smegsmegfab50p
41
IHM
I
N
T
E
R
F
A
C
E
 Ouverture et sauvegarde des fichiers à l'aide des boites de dialogue;
 Coloration syntaxique des mots réservés;
 Affichages des données (Table de symboles, chaîne de référence,
arbre syntaxique, …);
 Insertion rapide des mots réservés, opérateurs, séparateurs et les
caractères ASCII;
 Gestion des erreurs (nature, erreur, ligne, colonne, correction);
 Consultation et enregistrement des erreurs;
 Commandes standard (Couper, Copier, Coller, Impression,
Recherche, …);
 Extension et icône particulier (.khw) aux fichiers source;
 Menus, raccourcis clavier, aide, images, …;
 Glisser et déposer;
 Inclusion du Rapport, Présentation, Code source, Exemples;
12/01/2016 Rélisation d'un interpréteur Khawarizmi
Historique du Khawarizmi
12/01/2016 Rélisation d'un interpréteur Khawarizmi 42
Date Version Tâche
02-12-06 Automate union.
23-12-06 0.030 Analyse lexicale.
16-01-07 Grammaire du Khawarizmi.
28-03-07 0.050 Analyse syntaxique.
04-04-07 0.060 Arbre syntaxique.
08-05-07 0.080 Analyse sémantique.
01-06-07 0.096 Transformation des unités du
programme en classes.
H
I
S
T
O
R
I
Q
U
E
43
Problèmes rencontrés
 Faible support de la langue arabe dans le système d’exploitation;
 Sens inverse de quelque caractères ( ‘}’, ‘{’, ‘)’, ‘(‘, ‘<’, ‘>’, …);
 Outil de développement Borland Delphi 07 ne support pas les
caractères Unicode tel que (≤, ≥, ≠, ≈, …);
 Saisie des lettres latins et arabes (orientation du texte);
 Difficulté de traitement des boucles et le conditionnel
(pas de branchements et pas étiquettes);
 Manque des ressource et d’outils au niveau de l’université
(Ouvrages, Documentation, PC, Internet, …);
P
R
O
B
L
E
M
E
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi
44
Futur améliorations
 Utilisation des procédures et des fonctions;
 Ajout des types complexes tel que les réels et les tableaux;
 Ajout d'autres types de boucles et d'expressions conditionnelles
(Répéter - jusqu’à, Pour faire fait, Cas de, …);
 Réalisation de la 2éme partie du Interpréteur
(synthèse : génération et optimisation du code, …);
 Réécriture du code par un langage orienté objet tel que JAVA;
 Adaptation pour d'autres plateformes tel que : Linux, Unix, ..;
 Support pour la langue arabe
(Interface, boite de dialogue, messages, …);
A
M
E
L
I
O
R
A
T
I
O
N
S
12/01/2016 Rélisation d'un interpréteur Khawarizmi

Recommandé pour vous

Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1

Este documento proporciona instrucciones para el usuario sobre el uso seguro y apropiado de un refrigerador. Incluye advertencias sobre seguridad eléctrica, la colocación de alimentos, el mantenimiento y la limpieza. También describe las características del refrigerador como estantes, cajones y compartimentos, y proporciona consejos sobre el ahorro de energía y la resolución de problemas.

nevera smegsmegfab28ruj1
Robot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEURobot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEU

Este documento proporciona instrucciones para el uso seguro de una amasadora. Incluye advertencias de seguridad, una descripción del producto y sus partes, instrucciones de uso y consejos de limpieza. También proporciona información sobre el fabricante y la eliminación del producto al final de su vida útil.

smegrobot de cocina smegsmf01sveu
45
Conclusion
La réalisation du Khawarizmi nous a aidés à
comprendre et à appliquer les différents techniques et
méthodes d’analyse, de la compilation et de la
programmation.
Le choix de la langue arabe à pour but d’encourager
des informaticiens à exploité cette langue dans leurs
systèmes d’information.
En fin, en remercie infiniment notre enseignent chargé
de cours monsieur ALLAOUI Taher pour son support, son
aide et son sollicitude durant toute l’année universitaire.
C
O
N
C
L
U
S
I
O
N
12/01/2016 Rélisation d'un interpréteur Khawarizmi
4612/01/2016 Rélisation d'un interpréteur Khawarizmi

Contenu connexe

Tendances

SOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : DémystificationSOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : Démystification
Khaled Ben Driss
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
Lilia Sfaxi
 
Gestion Comptable et Financiere Odoo V8
Gestion Comptable et Financiere Odoo V8Gestion Comptable et Financiere Odoo V8
Gestion Comptable et Financiere Odoo V8
Africa Performances
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Bachir Benyammi
 
Métriques de qualité logicielle
Métriques de qualité logicielleMétriques de qualité logicielle
Métriques de qualité logicielle
Youness Boukouchi
 
Python et son intégration avec Odoo
Python et son intégration avec OdooPython et son intégration avec Odoo
Python et son intégration avec Odoo
Hassan WAHSISS
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
Idriss22
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Mehdi Hamime
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
Lilia Sfaxi
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
Lilia Sfaxi
 
Gestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiGestion des Chercheurs d’Emploi
Gestion des Chercheurs d’Emploi
Azzeddine Elouadi
 
pfe book 2023 2024.pdf
pfe book 2023 2024.pdfpfe book 2023 2024.pdf
pfe book 2023 2024.pdf
khalil lakhdhar
 
Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1
linuxscout
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Mehdi Hamime
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
Houda TOUKABRI
 
Cours Génie Logiciel - Introduction
Cours Génie Logiciel - IntroductionCours Génie Logiciel - Introduction
Cours Génie Logiciel - Introduction
Mohammed Amine Mostefai
 
Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)
Ines Ben Kahla
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
ENSET, Université Hassan II Casablanca
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
Hosni Mansour
 

Tendances (20)

SOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : DémystificationSOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : Démystification
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Gestion Comptable et Financiere Odoo V8
Gestion Comptable et Financiere Odoo V8Gestion Comptable et Financiere Odoo V8
Gestion Comptable et Financiere Odoo V8
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
 
Métriques de qualité logicielle
Métriques de qualité logicielleMétriques de qualité logicielle
Métriques de qualité logicielle
 
Python et son intégration avec Odoo
Python et son intégration avec OdooPython et son intégration avec Odoo
Python et son intégration avec Odoo
 
Base de donnees Avancees et Intro à NoSQL.ppt
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
 
Gestion des Chercheurs d’Emploi
Gestion des Chercheurs d’EmploiGestion des Chercheurs d’Emploi
Gestion des Chercheurs d’Emploi
 
pfe book 2023 2024.pdf
pfe book 2023 2024.pdfpfe book 2023 2024.pdf
pfe book 2023 2024.pdf
 
CM processus-unifie
CM processus-unifieCM processus-unifie
CM processus-unifie
 
Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1Alg ebre de boole ionction-logique-p1
Alg ebre de boole ionction-logique-p1
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
 
Cours Génie Logiciel - Introduction
Cours Génie Logiciel - IntroductionCours Génie Logiciel - Introduction
Cours Génie Logiciel - Introduction
 
Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)Rapport de stage: mastère ISIC (Business Intelligence)
Rapport de stage: mastère ISIC (Business Intelligence)
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
 
Rapport Projet de Fin d'Etudes
Rapport Projet de Fin d'EtudesRapport Projet de Fin d'Etudes
Rapport Projet de Fin d'Etudes
 

En vedette

Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Михаил Бычков
 
Un homme triste à en mourir
Un homme triste à en mourirUn homme triste à en mourir
Un homme triste à en mourir
Emmanuel Buriez
 
Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.
Carlos Enrique Espinoza Caceres
 
Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.
Carlos Enrique Espinoza Caceres
 
Kitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdfKitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdf
Fanny Despouys
 
Manual bosch cong. vertical gsn32 v73eu
Manual bosch   cong. vertical gsn32 v73euManual bosch   cong. vertical gsn32 v73eu
Manual bosch cong. vertical gsn32 v73eu
Alsako Electrodomésticos
 
Télétravail mode d'emploi
Télétravail mode d'emploiTélétravail mode d'emploi
Télétravail mode d'emploi
Hélène Pouille
 
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
ProGobernabilidad Perú
 
Au Nouveau Bonheur
Au Nouveau BonheurAu Nouveau Bonheur
Au Nouveau Bonheur
boudonmichel
 
Cocina Smeg B91GMCX
Cocina Smeg B91GMCXCocina Smeg B91GMCX
Cocina Smeg B91GMCX
Alsako Electrodomésticos
 
Nevera Smeg FAB50P
Nevera Smeg FAB50PNevera Smeg FAB50P
Nevera Smeg FAB50P
Alsako Electrodomésticos
 
Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1
Alsako Electrodomésticos
 
Robot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEURobot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEU
Alsako Electrodomésticos
 
Nevera Smeg FAB30RO1
Nevera Smeg FAB30RO1Nevera Smeg FAB30RO1
Nevera Smeg FAB30RO1
Alsako Electrodomésticos
 
Lavavajillas Smeg ST2FABNE2
Lavavajillas Smeg ST2FABNE2Lavavajillas Smeg ST2FABNE2
Lavavajillas Smeg ST2FABNE2
Alsako Electrodomésticos
 
E réputation - protection des données en lignes
E réputation - protection des données en lignesE réputation - protection des données en lignes
E réputation - protection des données en lignes
Digital Thursday
 
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
Aart van der heide
 

En vedette (20)

Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
Скидки и акции в универсамах Верный с 8 по 14 сентября 2015г.
 
Un homme triste à en mourir
Un homme triste à en mourirUn homme triste à en mourir
Un homme triste à en mourir
 
Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.Sesión 13 edurel quinto sec.
Sesión 13 edurel quinto sec.
 
Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.Sesión 12 edurel tercero sec.
Sesión 12 edurel tercero sec.
 
Kitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdfKitmobilisation climat 21 pdf
Kitmobilisation climat 21 pdf
 
Manual bosch cong. vertical gsn32 v73eu
Manual bosch   cong. vertical gsn32 v73euManual bosch   cong. vertical gsn32 v73eu
Manual bosch cong. vertical gsn32 v73eu
 
Télétravail mode d'emploi
Télétravail mode d'emploiTélétravail mode d'emploi
Télétravail mode d'emploi
 
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
Iniciativas de la Sociedad Civil para una Estrategia de Datos Abiertos en el ...
 
Au Nouveau Bonheur
Au Nouveau BonheurAu Nouveau Bonheur
Au Nouveau Bonheur
 
Stats sites tcb 2014
Stats sites tcb 2014Stats sites tcb 2014
Stats sites tcb 2014
 
Cocina Smeg B91GMCX
Cocina Smeg B91GMCXCocina Smeg B91GMCX
Cocina Smeg B91GMCX
 
Cftc
CftcCftc
Cftc
 
Nevera Smeg FAB50P
Nevera Smeg FAB50PNevera Smeg FAB50P
Nevera Smeg FAB50P
 
Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1Nevera Smeg FAB28RUJ1
Nevera Smeg FAB28RUJ1
 
Robot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEURobot de cocina smeg SMF01SVEU
Robot de cocina smeg SMF01SVEU
 
Un monde fou 2
Un monde fou 2Un monde fou 2
Un monde fou 2
 
Nevera Smeg FAB30RO1
Nevera Smeg FAB30RO1Nevera Smeg FAB30RO1
Nevera Smeg FAB30RO1
 
Lavavajillas Smeg ST2FABNE2
Lavavajillas Smeg ST2FABNE2Lavavajillas Smeg ST2FABNE2
Lavavajillas Smeg ST2FABNE2
 
E réputation - protection des données en lignes
E réputation - protection des données en lignesE réputation - protection des données en lignes
E réputation - protection des données en lignes
 
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
RAPPORT FINAL_EVALUATION MI-PARCOURS_JANVIER 2013
 

Similaire à Réalisation d’un interpréteur en langue Arabe - Khawarizmi

Scripting Linux avec Python partie1.pptx
Scripting Linux avec Python partie1.pptxScripting Linux avec Python partie1.pptx
Scripting Linux avec Python partie1.pptx
FrancisRUKAN
 
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
Mohamed827334
 
Langage de Programmation.pdf
Langage de Programmation.pdfLangage de Programmation.pdf
Langage de Programmation.pdf
AboubacarDiarra10
 
Compilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
CompilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnCompilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Compilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
saraayoub440
 
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
ATPENSC-Group
 
compilation1-2020.pdf
compilation1-2020.pdfcompilation1-2020.pdf
compilation1-2020.pdf
aouatifelallaji
 
Soirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec SonarSoirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec Sonar
ElsassJUG
 
Le langage C.pdf
Le langage C.pdfLe langage C.pdf
Le langage C.pdf
NoamHaythem
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
MED B
 
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
OlyvierNzighou1
 
Test unitaires - refactoring - clean code
Test unitaires - refactoring - clean codeTest unitaires - refactoring - clean code
Test unitaires - refactoring - clean code
Hadrien Blanc
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptx
OlyvierNzighou1
 
Le langage C
Le langage CLe langage C
Le langage C
Bruno Delb
 
Internationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMXInternationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMX
pprem
 
0002- Introduction au Langage Pascal.ppsx
0002- Introduction au Langage Pascal.ppsx0002- Introduction au Langage Pascal.ppsx
0002- Introduction au Langage Pascal.ppsx
BenacerLeila
 
43_pps.pdf
43_pps.pdf43_pps.pdf
43_pps.pdf
ssuser192642
 
2_Ch II Programmation impérative avec C.pptx
2_Ch II Programmation impérative avec C.pptx2_Ch II Programmation impérative avec C.pptx
2_Ch II Programmation impérative avec C.pptx
AngelaBeub
 

Similaire à Réalisation d’un interpréteur en langue Arabe - Khawarizmi (20)

Scripting Linux avec Python partie1.pptx
Scripting Linux avec Python partie1.pptxScripting Linux avec Python partie1.pptx
Scripting Linux avec Python partie1.pptx
 
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
1758yyui3-jjjujujjiopoooooAcetatesA0.ppt
 
Langage de Programmation.pdf
Langage de Programmation.pdfLangage de Programmation.pdf
Langage de Programmation.pdf
 
Compilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
CompilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnCompilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
Compilationnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
 
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
Fiche de TD 1 de préparation probatoire (littéraire et scientifique) du Camer...
 
Drools
DroolsDrools
Drools
 
compilation1-2020.pdf
compilation1-2020.pdfcompilation1-2020.pdf
compilation1-2020.pdf
 
Python chapitre 1.pdf
Python chapitre 1.pdfPython chapitre 1.pdf
Python chapitre 1.pdf
 
Soirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec SonarSoirée Qualité Logicielle avec Sonar
Soirée Qualité Logicielle avec Sonar
 
Le langage C.pdf
Le langage C.pdfLe langage C.pdf
Le langage C.pdf
 
cours fortran.pptx
cours fortran.pptxcours fortran.pptx
cours fortran.pptx
 
Php seance1
Php seance1Php seance1
Php seance1
 
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
 
Test unitaires - refactoring - clean code
Test unitaires - refactoring - clean codeTest unitaires - refactoring - clean code
Test unitaires - refactoring - clean code
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptx
 
Le langage C
Le langage CLe langage C
Le langage C
 
Internationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMXInternationaliser les projets VCL / FMX
Internationaliser les projets VCL / FMX
 
0002- Introduction au Langage Pascal.ppsx
0002- Introduction au Langage Pascal.ppsx0002- Introduction au Langage Pascal.ppsx
0002- Introduction au Langage Pascal.ppsx
 
43_pps.pdf
43_pps.pdf43_pps.pdf
43_pps.pdf
 
2_Ch II Programmation impérative avec C.pptx
2_Ch II Programmation impérative avec C.pptx2_Ch II Programmation impérative avec C.pptx
2_Ch II Programmation impérative avec C.pptx
 

Plus de Bachir Benyammi

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
Bachir Benyammi
 
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Bachir Benyammi
 
Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013
Bachir Benyammi
 
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Bachir Benyammi
 
كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)
Bachir Benyammi
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air Algérie
Bachir Benyammi
 
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Bachir Benyammi
 
Simulation d’un système à temps partagé
Simulation d’un système à temps partagéSimulation d’un système à temps partagé
Simulation d’un système à temps partagé
Bachir Benyammi
 
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاجالموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
Bachir Benyammi
 
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis GhardaïaRéalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Bachir Benyammi
 
Le périphérique souris
Le périphérique sourisLe périphérique souris
Le périphérique souris
Bachir Benyammi
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
Bachir Benyammi
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
Bachir Benyammi
 
Le périphérique souris (programmation)
Le périphérique souris (programmation)Le périphérique souris (programmation)
Le périphérique souris (programmation)
Bachir Benyammi
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
Bachir Benyammi
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
Bachir Benyammi
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Bachir Benyammi
 

Plus de Bachir Benyammi (17)

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
 
Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013
 
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
 
كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air Algérie
 
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
 
Simulation d’un système à temps partagé
Simulation d’un système à temps partagéSimulation d’un système à temps partagé
Simulation d’un système à temps partagé
 
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاجالموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
 
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis GhardaïaRéalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
 
Le périphérique souris
Le périphérique sourisLe périphérique souris
Le périphérique souris
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
 
Le périphérique souris (programmation)
Le périphérique souris (programmation)Le périphérique souris (programmation)
Le périphérique souris (programmation)
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
 

Dernier

apprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdfapprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdf
kamouzou878
 
Cours Gestion d’actifs BNP -- CAMGESTION
Cours Gestion d’actifs BNP -- CAMGESTIONCours Gestion d’actifs BNP -- CAMGESTION
Cours Gestion d’actifs BNP -- CAMGESTION
Sékou Oumar SYLLA
 
A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)
lebaobabbleu
 
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptxMARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
Martin M Flynn
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
Friends of African Village Libraries
 
A2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiquesA2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiques
lebaobabbleu
 
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
Faga1939
 
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certificationMS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
OlivierLumeau1
 
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
dokposeverin
 
Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
Txaruka
 
Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.
MahouwetinJacquesGBO
 
1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire
NadineHG
 
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPrésentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
mcevapi3
 
Formation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimismeFormation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimisme
M2i Formation
 

Dernier (15)

apprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdfapprendre-a-programmer-avec-python-3.pdf
apprendre-a-programmer-avec-python-3.pdf
 
Cours Gestion d’actifs BNP -- CAMGESTION
Cours Gestion d’actifs BNP -- CAMGESTIONCours Gestion d’actifs BNP -- CAMGESTION
Cours Gestion d’actifs BNP -- CAMGESTION
 
A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)A2-Faire-une-appreciation positive et/ou négative (A2)
A2-Faire-une-appreciation positive et/ou négative (A2)
 
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptxMARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
MARTYRS DE HOLLANDE - La révolte hollandaise et les guerres de religion..pptx
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
 
A2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiquesA2-Critiques-gastronomiques activités critiques
A2-Critiques-gastronomiques activités critiques
 
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
L'ÉDUCATION AVEC INTELLIGENCE ARTIFICIELLE ET LES DÉFICIENCES DE SON APPLICAT...
 
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certificationMS-203 Microsoft 365 Messaging Study Guide to prepare the certification
MS-203 Microsoft 365 Messaging Study Guide to prepare the certification
 
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
Manuel-5.-Elevage-de-poisson-chat-africain-Clarias-gariepinus-en-bacs-hors-so...
 
Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
 
Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.Microbiologie: le monde microbien et les techniques de mise en évidence.
Microbiologie: le monde microbien et les techniques de mise en évidence.
 
1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire1eT Revolutions Empire Revolution Empire
1eT Revolutions Empire Revolution Empire
 
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPrésentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Présentation3.pptxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
[218_phot_d'Autriche-Hongrie_et_des_[...]Vaffier_Hubert_btv1b8594559c.pdf
 
Formation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimismeFormation M2i - Attitude constructive : développer l'art de l'optimisme
Formation M2i - Attitude constructive : développer l'art de l'optimisme
 

Réalisation d’un interpréteur en langue Arabe - Khawarizmi

  • 1. Dirigé par: Mr.Allaoui Taher Travail Réalisé par : BENYAMMI BACHIR & HASSANI Mustapha 4eme Année informatique cycle long 2006 - 2007 Ministère de l’Enseignement et de la Recherche Scientifique UNIVERSITE AMAR TELIDJI LAGHOUAT FACULTE DES SCIENCES ET DE L’INGENIERIE DEPARTEMENT DE GENIE INFORMATIQUE Module Compilation THÈME:
  • 2. 2 Plan du travail  Introduction.  Objectif.  Définition du Khawarizmi  Conclusion. P L A N D U T R A V A I L 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 3. 3 Introduction  Les langages de programmation ont été nés avec l’apparition des ordinateurs.  Les langages de programmation ont été fondus essentiellement pour effectuer les grands calculs.  La majorité des langages utilisent les lettres Anglo-Saxons pour définir l’ensemble des identifications.  Les messages d’erreurs sont exprimés en anglais. I N T R O D U C T I O N 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 4. 4  Des dizaines du L.P arabes on été construites : ‫غريب‬–‫العراق‬1978 ‫بيسك‬–‫الكويت‬1981 ‫سينا‬–‫السودان‬1986 ‫ال‬‫العربي‬ ‫باسكال‬–‫السعودية‬1996 ...  La plupart de ces langages n’ont été pas réussites, parmi les causes on distingue :  Les différents codage des lettres arabes.  La faiblesse de la maintenance et de la mise à jour.  Les problèmes de financement.  L’existence des langages standards et puissants (Pascal, C++, JAVA, …). I N T R O D U C T I O N Introduction (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 5.  Un langage de programmation en arabe peut facilité la tâche aux élèves et aux lycéennes à comprendre et à appliquer les principes et les notions d’algorithmique et de la programmation.  L'idée est de développer un langage destiner à l'enseignement qui combine à la fois la facilité du Pascal (utilisation des mots naturels tel que Program, Read, Write, ..) et l'abréviation du C ({}, ||, &&, !, …). 5 I N T R O D U C T I O N Objectif 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 6. 6 Interpréteur ‫؟؟‬...  Que ce qu’un interpréteur ?  Quelle est la lexique du Khawarizmi ?  Quelle est la syntaxe du Khawarizmi ?  Quelle est la structure du”Khawarizmi ? I N T R O D U C T I O N 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 7. 7 Interpréteur  Un interpréteur est un programme informatique qui exécute lui-même les opérations spécifiées par le programme source, il analyse une instruction puis l’exécute immédiatement;  A l’inverse d’un compilateur, un interpréteur travaille simultanément sur le programme et sur les données;  L’interpréteur doit être présent sur le système à chaque fois que le programme est exécuté;  Exemples d’interpréteurs: BASIC, Perl, Prolog, LISP, … C O M P L A T E U R 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 8. 8 Lexique du Khawarizmi D E F I N I T I O N 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 9. 9 Jeu de caractères )(}{"Espace .،‫؛‬:/ »«#~<> =+-*÷% ‫ا‬..‫ي‬A..Za..z0..9_ J E U D E C A R A C T E R E S Les caractères autorisés dans un programme écrit en ”Khawarizmi“ sont: !|& 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 10. 10 Unités lexicales « tokens » 1. Les mots réservés: 2. Les variables et les fixes: Sont les identificateurs déclarés (ayant un type ) ‫برنامج‬‫تصريح‬‫صحيح‬‫طبيعي‬ ‫منطقي‬‫رمز‬‫سلسلة‬‫نعم‬ ‫ال‬‫اقرا‬‫اطبع‬‫بينما‬ ‫قم‬‫اذا‬‫فان‬‫واال‬ T O K E N S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 11. 11 3. Les opérateurs: Arithmétiques: Conditionnels: Logiques: 4. Les séparateurs: =+-*÷% ~#<>»« |&! T O K E N S Espace " ( ) { } / : ‫؛‬ ، . Unités lexicales (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 12. 12 5. Identificateurs:  Lettres (arabes et français), chiffres et ‘_’.  Commençant obligatoirement par une lettre.  Pas de case sensitive.  Longueur max est de 64 caractères. 6. Nombres  Suites de chiffre entre 0 et 9.  Seulement les nombres entiers sont acceptés. 7. Commentaires  ‘’ pour les commentaires d’une seule ligne.  ‘’ et ‘’ pour les commentaires multi-lignes.  Pas d’imprécation dans les commentaires. T O K E N S Unités lexicales (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 13. Automates et expressions régulières 13 0 2 L | C 1 L # de L et C 1 C C 2 # de C 0 0 ‘"’ ‘"’ 1 2 # de ‘"’ Ident -> Lettre (Lettre / Chiffre)* # Nbr -> Chiffre (Chiffre)* # Chaine -> '"' ( # )* '"' A U T O M A T E S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 14. Automates et expressions régulières (suite …) 14 A U T O M A T E S Comm -> '' '' ( # )* EOL Comm.multi -> '' # ( # )* '' 2 ‘’ EOL 3 # de EOL 0 ‘’ 1 0 2 ‘’ # de ‘’ ‘’ 31 # de ‘’ 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 16. Table de Transitions Etat Sym L C ‘’ Sep Opr Autres _Initial _Ident _Nbr _Chaine _Sep _Opr _Erreur _Ident _Ident _Ident _#Ident _Nbr _Erreur _Nbr _#Nbr _Chaine _Fin _Chaine _Chaine _Slash _#Slash _#Slash _#Slash _#Eol _#EOL _Carac _Carac _#Carac 16 T R A N S I T I O N S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 17. Table de Transitions (suite …) Etat Sym EOL Blanc / Autres _Initial _Initial _Initial _Carac _Slash _Erreur _Ident _#Ident _Nbr _#Nbr _Chaine _Chaine _Slash _#EOL _#Slash _#Slash _Muti _Lignes _Comm _#Slash _#Eol _Comm _#EOL _Carac _#Carac 17 T R A N S I T I O N S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 18. Table de symboles 18 N° Nom Intituler Valeur Unité Type 01 Prog ‫برنامج‬ 0 Mot Réservé Vide 02 Conste ‫ثابت‬ 0 Mot Réservé Vide …… …………… ……… ……… ……….. …… 19 Opr_Addi + 0 Opérateur Vide …… …………… ……… ……… ……….. …… 34 Parent_Ouvr ( 0 Séparateur Vide …… …………… ……… ……… ……….. …… 43 Ident_1 Factorielle Identificateur Vide 44 Ident_2 ‫أ‬ 120 Variable Entier 45 Const_1 ‫النتيجة‬ ‫النتيجة‬ Constante Chaine 46 Ident_3 ‫منعدم‬ ‫نعم‬ Variable Logic 45 Ident_4 ‫ن‬ 10 Fixe Naturel T A B L E S Y M B O L S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 19. Chaine de références 19 N° Symbole Nom Intituler Ligne Colonne 1 1 Prog ‫برنامج‬ 1 6 2 43 Ident_1 ‫محاولة‬ 1 16 3 39 Point_Virgule ‫؛‬ 1 17 4 3 Variable ‫متغير‬ 2 5 5 44 Ident_2 ‫أ‬ 3 1 6 40 Deux_Point : 3 3 7 5 Entier ‫صحيح‬ 3 16 ..... … … … … … 61 35 Accolade_Ferm { 13 1 62 37 Point . 14 1 C H I N E D E R E F E R E N C E S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 20. 20 Syntaxe du Khawarizmi S Y N T A X E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 21. Syntaxe 21 Programme = " ‫برنامج‬ " Ident "‫"؛‬ Bloc ".". ProgrammeProgramme IdentIdent ..BlocBloc Bloc = [Partie_Declaration_Constantes] [Partie_Declaration_Variables] Bloc_Instructions. Partie_Declaration_ Constantes Partie_Declaration_ ConstantesBlocBloc Partie_Declaration_ Variables Partie_Declaration_ Variables Bloc_InstructionsBloc_Instructions S Y N T A X E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 22. Syntaxe (suite …) 22 Partie_Declaration_Constantes = " "‫ثابت‬ Deffinition_Constante {Deffinition_Constante}. Partie_Declaration_ Constantes Partie_Declaration_ Constantes Deffinition_ConstanteDeffinition_Constante Partie_Declaration _Variables Partie_Declaration _Variables Deffinition_ Variables Deffinition_ Variables Partie_Declaration_Variables = " ‫متغير‬ " Deffinition_Variables {Deffinition_Variables}. S Y N T A X E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 23. 23 Deffinition_Constante = Ident "=" Constant "‫."؛‬ Deffinition_ Constante Deffinition_ Constante IdentIdent == ConstantConstant Constant = [Opr_Signe] Nombre | Chaine | "‫"نعم‬ | "‫."ال‬ ConstantConstant Opr_SigneOpr_Signe NombreNombre ChaineChaine S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 24. 24 Deffinition_Variables = Idents ":" Type "‫."؛‬ Deffinition_ Variables Deffinition_ Variables IdentsIdents :: TypeType Idents = Ident {'،' Ident}. IdentsIdents IdentIdent '' S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 25. 25 Bloc_Instructions = "}" Instructions "{". Bloc_InstructionsBloc_Instructions }} InstructionsInstructions {{ Instructions = Instruction {"‫"؛‬ Instruction}. InstructionsInstructions InstructionInstruction S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 26. 26 Instruction = [Lecture | Ecriture | Affectation | Instruction_Conditionelle | Instuction_Repetition]. InstructionInstruction LectureLecture EcritureEcriture AffectationAffectation Instruction_ Conditionelle Instruction_ Conditionelle Instuction_ Repetition Instuction_ Repetition S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 27. 27 Lecture = " ‫اقرا‬ " ")" Idents "(". LectureLecture IdentsIdents (()) Ecriture = " ‫اطبع‬ " ")" Idents "(". EcritureEcriture IdentsIdents (()) Affectation = Ident "=" Expression. AffectationAffectation IdentIdent == ExpressionExpression S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 28. 28 Expression = Expression_Simple [Opr_Rel Expression_Simple]. ExpressionExpression Expression_ Simple Expression_ Simple Opr_RelOpr_Rel Expression_Simple = [Opr_Signe] Terme {Opr_Add Terme}. Expression_ Simple Expression_ Simple Opr_SigneOpr_Signe TermeTerme Opr_AddOpr_Add Terme = Facteur {Opr_Mul Facteur}. FacteurFacteur Opr_MulOpr_MulTermeTerme S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 29. 29 FacteurFacteur IdentIdent ConstConst ExpressionExpression )) (( FacteurFacteur !! Facteur = Ident | Const | ")" Expression "(" | "!" " Facteur | " ‫"نعم‬ | "‫."ال‬ S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 30. 30 Instruction_Conditionelle = " ‫اذا‬ " Expression "‫"فان‬ Bloc_Instructions ["‫واال‬ " Bloc_Instructions]. Instruction_Con ditionelle Instruction_Con ditionelle ExpressionExpression Bloc_InstructionsBloc_Instructions S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 31. 31 Instuction_Repetition = " ‫بينما‬ " Expression " ‫قم‬ " Bloc_Instructions. Instuction_Repe tition Instuction_Repe tition ExpressionExpression Bloc_InstructionsBloc_Instructions S Y N T A X E Syntaxe (suite …) 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 32. Arbre Syntaxique 32 A R B R E S Y N T A X I Q U E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 33. 33 Exemple d’un programme ‫برنامج‬‫حساب‬_‫القوى‬_‫النونية؛‬ ‫متغير‬ ،‫ن‬‫م‬‫أس‬ ،‫عدد‬ ،:‫صحيح‬‫؛‬ } Initialisation des variables ‫ن‬=1‫؛‬ ‫م‬=1‫؛‬ Lecture des variables ‫اقرا‬(‫أس‬ ،‫عدد‬)‫؛‬ Calcul de la puissance ‫بينما‬(‫ن‬»‫أس‬)‫قم‬ } ‫م‬=‫م‬*‫عدد؛‬ ‫ن‬=‫ن‬+1‫؛‬ {‫؛‬ Affichage du résultat ‫اطبع‬(‫عدد‬+”‫أس‬”+‫أس‬+ +”‫يساوي‬”+‫م‬)‫؛‬ {. E X E M P L E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 35. 35  Elimination des blancs et des caractères de contrôles;  Elimination des commentaires;  Reconnaissance des mots réservés, des opérateurs, des séparateurs;  Reconnaissance des identificateurs, constantes (nombre, chaines de caractères);  Remplissage de la table des symboles et de la chaîne de références;  Gestion des erreurs en parallèle. Analyseur Lexical L E X I C A L 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 36. 36  Méthode d'analyse par la descente récursive;  Pour chaque non terminal, une procédure est associée;  L'analyse est faite par des appels récursifs aux procédures;  Avancement lors de la reconnaissance des terminaux;  L'arbre syntaxique est construit au fur et à mesure de l'analyse;  A la reconnaissance d'un terminal; un nœud est crée;  Une feuille est crée lors de la reconnaissance d'un terminal;  Gestion des erreurs en parallèle. Analyseur Syntaxique S Y N T A X E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 37. 37  L'analyse est faite en parallèle avec l'analyse syntaxique;  Déclaration des constantes et des variables;  Contrôle et conversion de types;  Affectation des types et des valeurs;  Evaluation des expressions;  Mise à jour de la table de symboles;  Gestion des erreurs; Analyseur Sémantique S E M A N T I Q U E 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 38. 38 Erreurs Lexicales  Pas de texte source;  Caractère illégal ou code erroné;  Identificateurs erroné ou trop long;  Fin de commentaire attendu; Erreurs Syntaxiques Symbole attendu mais un autre est trouvé; Erreurs Sémantiques  Type attendu mais un autre est trouvé;  Variable non déclaré;  Constante ne peut pas être affecter;  Opération interdit;  Division par zéro; Gestion des erreurs E R R E U R S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 39. 39 S T R U C T U R E Structure du Khawarizmi 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 40. 40 Avantages du Khawarizmi A V A N T A G E S Au niveau de l‘utilisation:  Code source en arabe;  Lettres arabe et latins (plus de 60 lettres);  Chiffres et caractères spéciaux;  Déclaration des variables et des constantes;  Divers types simples (Entier, Naturel, Logique, Caractère, Chaîne);  Boucles et expressions conditionnelles;  Commentaires simples et multi-lignes;  Opérations arithmétiques, relationnelles, logiques, affectations, …  Lecture et écriture (Entrée-sortie);  Détection des erreurs avec possibilité de correction; Au niveau du la programmation:  Organisation du programme en unités et classes;  Tableaux dynamiques;  Interface utilisateur;  Séparation entre l’interface et l’interpréteur; 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 41. 41 IHM I N T E R F A C E  Ouverture et sauvegarde des fichiers à l'aide des boites de dialogue;  Coloration syntaxique des mots réservés;  Affichages des données (Table de symboles, chaîne de référence, arbre syntaxique, …);  Insertion rapide des mots réservés, opérateurs, séparateurs et les caractères ASCII;  Gestion des erreurs (nature, erreur, ligne, colonne, correction);  Consultation et enregistrement des erreurs;  Commandes standard (Couper, Copier, Coller, Impression, Recherche, …);  Extension et icône particulier (.khw) aux fichiers source;  Menus, raccourcis clavier, aide, images, …;  Glisser et déposer;  Inclusion du Rapport, Présentation, Code source, Exemples; 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 42. Historique du Khawarizmi 12/01/2016 Rélisation d'un interpréteur Khawarizmi 42 Date Version Tâche 02-12-06 Automate union. 23-12-06 0.030 Analyse lexicale. 16-01-07 Grammaire du Khawarizmi. 28-03-07 0.050 Analyse syntaxique. 04-04-07 0.060 Arbre syntaxique. 08-05-07 0.080 Analyse sémantique. 01-06-07 0.096 Transformation des unités du programme en classes. H I S T O R I Q U E
  • 43. 43 Problèmes rencontrés  Faible support de la langue arabe dans le système d’exploitation;  Sens inverse de quelque caractères ( ‘}’, ‘{’, ‘)’, ‘(‘, ‘<’, ‘>’, …);  Outil de développement Borland Delphi 07 ne support pas les caractères Unicode tel que (≤, ≥, ≠, ≈, …);  Saisie des lettres latins et arabes (orientation du texte);  Difficulté de traitement des boucles et le conditionnel (pas de branchements et pas étiquettes);  Manque des ressource et d’outils au niveau de l’université (Ouvrages, Documentation, PC, Internet, …); P R O B L E M E S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 44. 44 Futur améliorations  Utilisation des procédures et des fonctions;  Ajout des types complexes tel que les réels et les tableaux;  Ajout d'autres types de boucles et d'expressions conditionnelles (Répéter - jusqu’à, Pour faire fait, Cas de, …);  Réalisation de la 2éme partie du Interpréteur (synthèse : génération et optimisation du code, …);  Réécriture du code par un langage orienté objet tel que JAVA;  Adaptation pour d'autres plateformes tel que : Linux, Unix, ..;  Support pour la langue arabe (Interface, boite de dialogue, messages, …); A M E L I O R A T I O N S 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 45. 45 Conclusion La réalisation du Khawarizmi nous a aidés à comprendre et à appliquer les différents techniques et méthodes d’analyse, de la compilation et de la programmation. Le choix de la langue arabe à pour but d’encourager des informaticiens à exploité cette langue dans leurs systèmes d’information. En fin, en remercie infiniment notre enseignent chargé de cours monsieur ALLAOUI Taher pour son support, son aide et son sollicitude durant toute l’année universitaire. C O N C L U S I O N 12/01/2016 Rélisation d'un interpréteur Khawarizmi
  • 46. 4612/01/2016 Rélisation d'un interpréteur Khawarizmi