diff --git a/eval-fourni/Makefile b/eval-fourni/Makefile deleted file mode 100644 index d5b0874..0000000 --- a/eval-fourni/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -CC = gcc - -LIBS = -lm -CCFLAGS = -Wall -ggdb - -all: compare_arbres_xml - -compare_arbres_xml: compare_arbres_xml.c analyseur_xml.o - $(CC) $(CCFLAGS) -o compare_arbres_xml compare_arbres_xml.c analyseur_xml.o - -analyseur_xml.o: analyseur_xml.c - $(CC) $(CCFLAGS) -c analyseur_xml.c - -.PHONY : clean - -clean: - - rm -rf *.o compare_arbres_xml output diff --git a/eval-fourni/Mars4_5.jar b/eval-fourni/Mars4_5.jar deleted file mode 100644 index 0021281..0000000 Binary files a/eval-fourni/Mars4_5.jar and /dev/null differ diff --git a/eval-fourni/analyseur_xml.c b/eval-fourni/analyseur_xml.c deleted file mode 100644 index 164345b..0000000 --- a/eval-fourni/analyseur_xml.c +++ /dev/null @@ -1,323 +0,0 @@ -#include -#include -#include -#include"analyseur_xml.h" - -/* symboles terminaux */ - -#define CHEVRON_FERMANT 1 -#define DEBUT_BF 2 -#define DEBUT_BO 3 -#define CHAINE 4 -#define FIN 5 - -#define ISSPACE(a) (a == ' ') || (a == '\n') || (a == '\t') - -#define YYTEXT_MAX 100 - -/* fonctions pour arbre abstrait */ - -noeud *cree_noeud(char *nom) -{ - noeud *n = malloc(sizeof(noeud)); - if(n == NULL){ - fprintf(stderr, "erreur d'allocation\n"); - exit(1); - } - n->nom = nom; - n->premier_fils = NULL; - n->dernier_fils = NULL; - n->suiv = NULL; - return n; -} - -noeud *ajoute_fils(noeud *pere, noeud *fils) -{ - if(pere->premier_fils == NULL){ - pere->premier_fils = pere->dernier_fils = fils; - return pere; - } - pere->dernier_fils->suiv = fils; - pere->dernier_fils = fils; - return pere; - -} - -void affiche_arbre(noeud *racine){ - noeud *n; - printf("<%s> ", racine->nom); - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - affiche_arbre(n); - } - printf(" ", racine->nom); -} - - -int compare_arbres_rec(noeud *racine1, noeud *racine2, int verbose, int profondeur) -{ - noeud *f1, *f2; - int resultat = 1; - int i; - if(verbose){ - for(i=0; i %s\n", racine1->nom, racine2->nom); - } - if(strcmp(racine1->nom, racine2->nom)) - return 0; - - for(f1 = racine1->premier_fils, f2 = racine2->premier_fils; - f1 && f2 && resultat; - f1 = f1->suiv, f2 = f2->suiv){ - resultat = compare_arbres_rec(f1, f2, verbose, profondeur+1); - } - return ((f1 == NULL) && (f2 == NULL) && resultat); -} - -int compare_arbres(noeud *racine1, noeud *racine2, int verbose) -{ - return compare_arbres_rec(racine1, racine2, verbose, 0); -} - -void libere_arbre(noeud *racine) -{ - noeud *n; - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - libere_arbre(n); - } - free(racine); -} - -/* analyseur lexical */ - -int DEBUG = 0; -char yytext[YYTEXT_MAX]; -int yyleng; -int yylval; -/* Compter les lignes pour afficher les messages d'erreur avec numero ligne */ -int nb_ligne; -int cc; - -/******************************************************************************* - * Fonction qui ignore les espaces et commentaires. - * Renvoie -1 si arrivé à la fin du fichier, 0 si tout va bien - ******************************************************************************/ -int mangeEspaces() -{ - char c = fgetc(yyin); - while( ISSPACE(c) ) { - if( c == '\n' ) { - nb_ligne++; - } - c = fgetc(yyin); - } - if ( feof(yyin) ) { - return -1; - } - ungetc(c, yyin); - return 0; -} - -/******************************************************************************* - * Lit un caractère et le stocke dans le buffer yytext - ******************************************************************************/ -char lireCar(void) -{ - yytext[yyleng++] = fgetc(yyin); - yytext[yyleng] = '\0'; - return yytext[yyleng - 1]; -} - -/******************************************************************************* - * Remet le dernier caractère lu au buffer clavier et enlève du buffer yytext - ******************************************************************************/ -void delireCar() -{ - char c; - c = yytext[yyleng - 1]; - yytext[--yyleng] = '\0'; - ungetc(c, yyin); -} -/******************************************************************************* - * Fonction principale de l'analyseur lexical, lit les caractères de yyin et - * renvoie les tokens sous forme d'entier. Le code de chaque unité est défini - * dans symboles.h sinon (mot clé, idententifiant, etc.). Pour les tokens de - * type ID_FCT, ID_VAR et NOMBRE la valeur du token est dans yytext, visible - * dans l'analyseur syntaxique. - ******************************************************************************/ -int inTag = 0; - -int yylex(void) -{ - char c; - yytext[yyleng = 0] = '\0'; - - /* Si j'ai trouvé la fin du fichier en lisant des espaces ... */ - if( !inTag && mangeEspaces() == -1 ) { - return FIN; /* Renvoie le marqueur de fin d'entrée */ - } - - c = lireCar(); - if(c == '>'){ - if(DEBUG) { printf("CHEVRON_FERMANT\n"); } - //inTag = 0; - return CHEVRON_FERMANT; - } - if(c == '<'){ - inTag = 1; - c = lireCar(); - if(c == '/'){ - if(DEBUG) { printf("DEBUT_BF\n"); } - return DEBUT_BF; - } - else{ - delireCar(); - if(DEBUG) { printf("DEBUT_BO\n"); } - return DEBUT_BO; - } - } - do{ - c = lireCar(); - inTag = 0; - }while((c!= '<') && (c!= '>') && !feof(yyin) && !(ISSPACE(c))); - delireCar(); - if(DEBUG) { printf("CHAINE\n"); } - - return CHAINE; - } - - - /******************************************************************************* - * Fonction auxiliaire appelée par l'analyseur syntaxique tout simplement pour - * afficher des messages d'erreur et l'arbre XML - ******************************************************************************/ -void nom_token( int token, char *nom, char *valeur ) { - //int i; - - strcpy( nom, "symbole" ); - if(token == CHEVRON_FERMANT) strcpy( valeur, "CHEVRON_FERMANT"); - else if(token == DEBUT_BF) strcpy( valeur, "DEBUT_BF"); - else if(token == DEBUT_BO) strcpy( valeur, "DEBUT_BO"); - else if(token == CHAINE) strcpy( valeur, "CHAINE"); -} - -/* analyse syntaxique */ - -noeud *B(void); -void LB(noeud *pere); -char *BO(void); -char *BF(void); -void LCHAINE(void); - -void erreur(char *msg){ - fprintf(stderr, "Ligne %d : erreur : %s\n", nb_ligne, msg); - exit(1); -} - - - -/* B -> BO LCHAINE LB LCHAINE BF */ -noeud *B(void){ - char *nom_bo; - char *nom_bf; - noeud *n; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - nom_bo = BO(); - n = cree_noeud(nom_bo); - LCHAINE(); - LB(n); - LCHAINE(); - nom_bf = BF(); - if(strcmp(nom_bo, nom_bf)){ - fprintf(stderr, "Ligne %d : arbre mal forme: balise ouvrante : \"%s\" balise fermante : \"%s\"\n", nb_ligne, nom_bo, nom_bf); - exit(1); - } - free(nom_bf); - if(DEBUG) { printf("\n"); } - return n; - } - erreur("B"); - return NULL; -} - -/* LCHAINE -> CHAINE LCHAINE */ -/* | */ - -void LCHAINE(void){ - if(cc == CHAINE){ - cc = yylex(); - LCHAINE(); - return; - } - if((cc == DEBUT_BO) ||(cc == DEBUT_BF)){ - return; - } - erreur("LCHAINE"); -} - -/* LB -> B LB - | */ - -void LB(noeud *pere) -{ - noeud *fils = NULL; - if(cc == DEBUT_BO){ - fils = B(); - ajoute_fils(pere, fils); - LB(pere); - return; - } - if(cc == DEBUT_BF){ - return; - } - erreur("LB"); -} - -/* BO -> DEBUT_BO CHAINE CHEVRON_FERMANT */ -char *BO(void) -{ - char *nom = NULL; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - if(DEBUG) { printf("\n"); } - return nom; - } - } - } - erreur("BO"); - return NULL; -} - -/* BF -> DEBUT_BF CHAINE CHEVRON_FERMANT */ -char *BF(void) -{ - char *nom = NULL; - if(cc == DEBUT_BF){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - return nom; - } - } - } - erreur("BF"); - return NULL; -} - -noeud *analyseur_xml(void) -{ - nb_ligne = 0; - cc = yylex(); - return B(); -} - - diff --git a/eval-fourni/analyseur_xml.h b/eval-fourni/analyseur_xml.h deleted file mode 100644 index 1ec5aa1..0000000 --- a/eval-fourni/analyseur_xml.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __ANALYSEUR_XML__ -#define __ANALYSEUR_XML__ - -/* structures de donnees et fonctions pour arbre abstrait */ - -typedef struct n noeud; - -struct n{ - char *nom; - struct n *premier_fils; - struct n *dernier_fils; - struct n *suiv; -}; - -FILE *yyin; - - -void affiche_arbre(noeud *racine); -int compare_arbres(noeud *racine1, noeud *racine2, int verbose); -void libere_arbre(noeud *r); - -/* analyseur */ - -noeud *analyseur_xml(void); -#endif diff --git a/eval-fourni/compare_arbres_xml b/eval-fourni/compare_arbres_xml deleted file mode 100755 index 8d4555b..0000000 Binary files a/eval-fourni/compare_arbres_xml and /dev/null differ diff --git a/eval-fourni/compare_arbres_xml.c b/eval-fourni/compare_arbres_xml.c deleted file mode 100644 index 1231486..0000000 --- a/eval-fourni/compare_arbres_xml.c +++ /dev/null @@ -1,63 +0,0 @@ -#include -#include -#include"analyseur_xml.h" - -int main(int argc, char *argv[]) - { - noeud *racine1; - noeud *racine2; - int resultat; - int verbose; - - if((argc != 3) && (argc != 4)){ - fprintf(stderr, "usage: %s fichier_xml fichier_xml [v]\n", argv[0]); - exit(1); - - } - verbose = (argc == 4); - - yyin = fopen(argv[1], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[1]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[1]); - racine1 = analyseur_xml(); - - - fclose(yyin); - - yyin = fopen(argv[2], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[2]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[2]); - racine2 = analyseur_xml(); - - fclose(yyin); - - - - /* affiche_arbre(racine1); - printf("\n"); - affiche_arbre(racine2);*/ - - fprintf(stderr, "comparaison des arbres\n"); - resultat = compare_arbres(racine1, racine2, verbose); - libere_arbre(racine1); - libere_arbre(racine2); - - - if(resultat){ - printf("arbres egaux\n"); - return 0; - } - else{ - printf("arbres différents\n"); - return 1; - } - - } diff --git a/eval-fourni/input/affect-err.l b/eval-fourni/input/affect-err.l deleted file mode 100644 index f142572..0000000 --- a/eval-fourni/input/affect-err.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -$a = 5; -ecrire( $a ); -} -$extra = 0; diff --git a/eval-fourni/input/affect.l b/eval-fourni/input/affect.l deleted file mode 100644 index 576dc8d..0000000 --- a/eval-fourni/input/affect.l +++ /dev/null @@ -1,6 +0,0 @@ -entier $a; -main() -{ -$a = 1; -ecrire($a); -} diff --git a/eval-fourni/input/boucle.l b/eval-fourni/input/boucle.l deleted file mode 100644 index 4821457..0000000 --- a/eval-fourni/input/boucle.l +++ /dev/null @@ -1,11 +0,0 @@ -entier $i, entier $carre; -main() -{ - $i = 0; - tantque $i < 10 faire - { - $carre = $i * $i; - ecrire( $carre ); - $i = $i + 1; - } -} diff --git a/eval-fourni/input/eval1.l b/eval-fourni/input/eval1.l deleted file mode 100644 index 2bcd814..0000000 --- a/eval-fourni/input/eval1.l +++ /dev/null @@ -1,25 +0,0 @@ -add (entier $a, entier $b) -{ - retour $a + $b; -} - -mult (entier $a, entier $b) -{ - retour $a * $b; -} - -main() -entier $a, entier $b, entier $op; -{ - $a = lire(); - $b = lire(); - $op = lire(); - si $op = 1 alors { - ecrire(add($a, $b)); - } - sinon { - si $op = 2 alors { - ecrire(mult($a, $b)); - } - } -} diff --git a/eval-fourni/input/eval1err.l b/eval-fourni/input/eval1err.l deleted file mode 100644 index b1d4456..0000000 --- a/eval-fourni/input/eval1err.l +++ /dev/null @@ -1 +0,0 @@ -33a diff --git a/eval-fourni/input/eval2.l b/eval-fourni/input/eval2.l deleted file mode 100644 index 6008853..0000000 --- a/eval-fourni/input/eval2.l +++ /dev/null @@ -1,14 +0,0 @@ -fibo( entier $n ) -{ - si $n < 2 alors { - retour 1; - } - sinon { - retour fibo( $n - 1 ) + fibo( $n - 2 ); - } -} - -main() -{ - ecrire( fibo( lire() ) ); -} diff --git a/eval-fourni/input/eval2err.l b/eval-fourni/input/eval2err.l deleted file mode 100644 index f142572..0000000 --- a/eval-fourni/input/eval2err.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -$a = 5; -ecrire( $a ); -} -$extra = 0; diff --git a/eval-fourni/input/eval3.l b/eval-fourni/input/eval3.l deleted file mode 100644 index 816745e..0000000 --- a/eval-fourni/input/eval3.l +++ /dev/null @@ -1,12 +0,0 @@ -entier $i, entier $j, entier $k, entier $somme; -main() { - $somme = 0; - pour $i = 0; $i < 10; $i = $i + 1; faire { - pour $j = 0; $j < $i; $j = $j + 1; faire { - pour $k = 0; $k < $j; $k = $k + 1; faire { - $somme = $somme + $i + $j + $k; - } - } - } - ecrire ( $somme ); -} diff --git a/eval-fourni/input/eval3err.l b/eval-fourni/input/eval3err.l deleted file mode 100644 index 645279c..0000000 --- a/eval-fourni/input/eval3err.l +++ /dev/null @@ -1,12 +0,0 @@ -entier $i; -main() -{ - entier $carre; - $i = 0; - tantque $i < 10 faire - { - $carre = $i * $i; - ecrire( $carre ); - $i = $i + 1; - } -} diff --git a/eval-fourni/input/eval4.l b/eval-fourni/input/eval4.l deleted file mode 100644 index 7b37cf3..0000000 --- a/eval-fourni/input/eval4.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -si 1 alors -{ecrire(1); -} -} diff --git a/eval-fourni/input/eval4err.l b/eval-fourni/input/eval4err.l deleted file mode 100644 index 155d4ab..0000000 --- a/eval-fourni/input/eval4err.l +++ /dev/null @@ -1 +0,0 @@ -entier entier entier diff --git a/eval-fourni/input/eval5.l b/eval-fourni/input/eval5.l deleted file mode 100644 index beeda13..0000000 --- a/eval-fourni/input/eval5.l +++ /dev/null @@ -1,9 +0,0 @@ -entier $a; -main() -{ -si 0 alors -{ecrire(1); -} -sinon -{ecrire(0);} -} diff --git a/eval-fourni/input/eval5err.l b/eval-fourni/input/eval5err.l deleted file mode 100644 index 964acba..0000000 --- a/eval-fourni/input/eval5err.l +++ /dev/null @@ -1 +0,0 @@ -entier ? diff --git a/eval-fourni/input/eval6.l b/eval-fourni/input/eval6.l deleted file mode 100644 index 01c44dc..0000000 --- a/eval-fourni/input/eval6.l +++ /dev/null @@ -1,11 +0,0 @@ -entier $a[10], entier $b; -main() { - $a[0] = 10; - $b = 5; - ecrire( $a ); # erreur de type ou ecrit 10? - ecrire( $a + 1 ); # erreur de type ou ecrit 11? - ecrire( $b[0] ); # erreur de type ou ecrit 5? - ecrire( $a[10] ); # erreur de type ou ecrit 5? - retour 0; - ecrire( $b ); # ecrit 5 ou pas? -} diff --git a/eval-fourni/input/eval7.l b/eval-fourni/input/eval7.l deleted file mode 100644 index e69de29..0000000 diff --git a/eval-fourni/input/eval8.l b/eval-fourni/input/eval8.l deleted file mode 100644 index 4f35eff..0000000 --- a/eval-fourni/input/eval8.l +++ /dev/null @@ -1,9 +0,0 @@ -entier $a; -main() -{ -$a = 0; -tantque $a < 10 faire{ -ecrire($a); -$a = $a + 1; -} -} diff --git a/eval-fourni/input/expression.l b/eval-fourni/input/expression.l deleted file mode 100644 index a33fb9e..0000000 --- a/eval-fourni/input/expression.l +++ /dev/null @@ -1,5 +0,0 @@ -entier $a; -main() -{ -ecrire(5 * 2); -} diff --git a/eval-fourni/input/max.l b/eval-fourni/input/max.l deleted file mode 100644 index ef3e9c8..0000000 --- a/eval-fourni/input/max.l +++ /dev/null @@ -1,23 +0,0 @@ -max( entier $a, entier $b ) -{ - si $a < $b alors { - retour $b; - } - retour $a; -} - -main() -entier $v_1, entier $v_2; -{ - $v_1 = lire(); - $v_2 = lire(); - si max( $v_1, $v_2 ) = $v_1 alors - { - ecrire( $v_1 ); - } - sinon - { - ecrire( $v_2 ); - } - -} diff --git a/eval-fourni/input/test1.l b/eval-fourni/input/test1.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-fourni/input/test1.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-fourni/input/test1err.l b/eval-fourni/input/test1err.l deleted file mode 100644 index e436203..0000000 --- a/eval-fourni/input/test1err.l +++ /dev/null @@ -1,6 +0,0 @@ -entier $i; -main() { - pour $i = 5; $i < 10; $i faire { - ecrire ( $i ); - } -} diff --git a/eval-fourni/input/test2.l b/eval-fourni/input/test2.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-fourni/input/test2.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-fourni/input/test3.l b/eval-fourni/input/test3.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-fourni/input/test3.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-fourni/input/tri.l b/eval-fourni/input/tri.l deleted file mode 100644 index a39cba6..0000000 --- a/eval-fourni/input/tri.l +++ /dev/null @@ -1,57 +0,0 @@ -entier $tab[ 10 ]; - -initialiser() -{ - $tab[0] = 8; $tab[1] = 6; $tab[2] = 9; - $tab[3] = 9; $tab[4] = 4; $tab[5] = 2; - $tab[6] = 3; $tab[7] = 1; $tab[8] = 4; - $tab[9] = 5; -} - -afficher( entier $n ) -entier $i; -{ - $i = 0; - tantque $i < $n faire { - ecrire( $tab[ $i ] ); - $i = $i + 1; - } - ecrire( 0 ); # marqueur fin de tableau -} - -echanger( entier $i, entier $j ) -entier $temp; -{ - $temp = $tab[ $j ]; - $tab[ $j ] = $tab[ $i ]; - $tab[ $i ] = $temp; -} - -trier( entier $n ) -entier $echange, entier $j, entier $m; -{ - $m = $n; - $echange = 1; - tantque $echange = 1 faire - { - $echange = 0; - $j = 0; - tantque $j < $m - 1 faire - { - si $tab[ $j + 1 ] < $tab[ $j ] alors { - echanger( $j, $j + 1 ); - $echange = 1; - } - $j = $j + 1; - } - $m = $m - 1; - } -} - -main() -{ - initialiser(); - afficher( 10 ); - trier( 10 ); - afficher( 10 ); -} diff --git a/eval-fourni/output/affect.asynt b/eval-fourni/output/affect.asynt deleted file mode 100644 index f92de39..0000000 --- a/eval-fourni/output/affect.asynt +++ /dev/null @@ -1,23 +0,0 @@ - - - $a - - - - main - - - $a - 1 - - - - - $a - - - - - - - diff --git a/eval-fourni/output/affect.lex b/eval-fourni/output/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/eval-fourni/output/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/output/affect.mips b/eval-fourni/output/affect.mips deleted file mode 100644 index fad66f2..0000000 --- a/eval-fourni/output/affect.mips +++ /dev/null @@ -1,36 +0,0 @@ -.data -$$a: .space 4 -.text -__start: -jal main -li $v0, 10 -syscall -main : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, $$a -lw $t0, $$a -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra diff --git a/eval-fourni/output/affect.synt b/eval-fourni/output/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/eval-fourni/output/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/output/affect.tab b/eval-fourni/output/affect.tab deleted file mode 100644 index 91bc69d..0000000 --- a/eval-fourni/output/affect.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/output/boucle.asynt b/eval-fourni/output/boucle.asynt deleted file mode 100644 index 3f2aace..0000000 --- a/eval-fourni/output/boucle.asynt +++ /dev/null @@ -1,63 +0,0 @@ - - - $i - - $carre - - - - - main - - - $i - 0 - - - - - inf - - $i - - 10 - - - - $carre - - fois - - $i - - - $i - - - - - - - $carre - - - - - $i - - plus - - $i - - 1 - - - - - - - - - - - diff --git a/eval-fourni/output/boucle.lex b/eval-fourni/output/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/eval-fourni/output/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/output/boucle.mips b/eval-fourni/output/boucle.mips deleted file mode 100644 index c67db88..0000000 --- a/eval-fourni/output/boucle.mips +++ /dev/null @@ -1,92 +0,0 @@ -.data -$$i: .space 4 -$$carre: .space 4 -.text -__start: -jal main -li $v0, 10 -syscall -main : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, $$i -e0: -lw $t0, $$i -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 10 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -blt $t1, $t2 e2 -li $t0, 0 -e2: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $0 e1 -lw $t0, $$i -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, $$i -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -mult $t1, $t2 -mflo $t0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, $$carre -lw $t0, $$carre -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -lw $t0, $$i -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -add $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, $$i -j e0 -e1: -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra diff --git a/eval-fourni/output/boucle.synt b/eval-fourni/output/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/eval-fourni/output/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/output/boucle.tab b/eval-fourni/output/boucle.tab deleted file mode 100644 index f37700e..0000000 --- a/eval-fourni/output/boucle.tab +++ /dev/null @@ -1,7 +0,0 @@ ------------------------------------------- -base = 3 -sommet = 3 -0 $i GLOBALE ENTIER 0 -1 -1 $carre GLOBALE ENTIER 4 -1 -2 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/output/expression.asynt b/eval-fourni/output/expression.asynt deleted file mode 100644 index 5a3244d..0000000 --- a/eval-fourni/output/expression.asynt +++ /dev/null @@ -1,19 +0,0 @@ - - - $a - - - - main - - - - fois - 5 - 2 - - - - - - diff --git a/eval-fourni/output/expression.lex b/eval-fourni/output/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/eval-fourni/output/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/output/expression.mips b/eval-fourni/output/expression.mips deleted file mode 100644 index 9795a00..0000000 --- a/eval-fourni/output/expression.mips +++ /dev/null @@ -1,41 +0,0 @@ -.data -$$a: .space 4 -.text -__start: -jal main -li $v0, 10 -syscall -main : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -li $t0, 5 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -mult $t1, $t2 -mflo $t0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra diff --git a/eval-fourni/output/expression.synt b/eval-fourni/output/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/eval-fourni/output/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/output/expression.tab b/eval-fourni/output/expression.tab deleted file mode 100644 index 91bc69d..0000000 --- a/eval-fourni/output/expression.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/output/max.asynt b/eval-fourni/output/max.asynt deleted file mode 100644 index e419965..0000000 --- a/eval-fourni/output/max.asynt +++ /dev/null @@ -1,106 +0,0 @@ - - - - max - - $a - - $b - - - - - - inf - - $a - - - $b - - - - - - $b - - - - - - - - $a - - - - - - - - main - - $v_1 - - $v_2 - - - - - $v_1 - - - - - - $v_2 - - - - - - - egal - - - max - - - $v_1 - - - - $v_2 - - - - - - - - - $v_1 - - - - - - $v_1 - - - - - - - $v_2 - - - - - - - - - - - diff --git a/eval-fourni/output/max.lex b/eval-fourni/output/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/eval-fourni/output/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/output/max.mips b/eval-fourni/output/max.mips deleted file mode 100644 index 98b68f3..0000000 --- a/eval-fourni/output/max.mips +++ /dev/null @@ -1,142 +0,0 @@ -.data -.text -__start: -jal main -li $v0, 10 -syscall -max : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -lw $t0, 8($fp) #variable argument $a -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 4($fp) #variable argument $b -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -blt $t1, $t2 e0 -li $t0, 0 -e0: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $zero e1 -lw $t0, 4($fp) #variable argument $b -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0 12($fp) #Adresse de retour -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -j e2 -e1: -e2: -lw $t0, 8($fp) #variable argument $a -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0 12($fp) #Adresse de retour -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -main : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -subi $sp, $sp, 4 -subi $sp, $sp, 4 -li $v0 5 -syscall -move $t0, $v0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -li $v0 5 -syscall -move $t0, $v0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -12($fp) #variable locale -sub $sp, $sp, 4 #Val Retour -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -jal max -addi $sp, $sp, 8 -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -beq $t1, $t2 e3 -li $t0, 0 -e3: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $zero e4 -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -j e5 -e4: -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -e5: -addi $sp, $sp 8 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra diff --git a/eval-fourni/output/max.synt b/eval-fourni/output/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/eval-fourni/output/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-fourni/output/max.tab b/eval-fourni/output/max.tab deleted file mode 100644 index 3d3086c..0000000 --- a/eval-fourni/output/max.tab +++ /dev/null @@ -1,15 +0,0 @@ ------------------------------------------- -base = 1 -sommet = 3 -0 max GLOBALE FONCTION 0 2 -1 $a ARGUMENT ENTIER 0 -1 -2 $b ARGUMENT ENTIER 4 -1 ------------------------------------------- ------------------------------------------- -base = 2 -sommet = 4 -0 max GLOBALE FONCTION 0 2 -1 main GLOBALE FONCTION 0 0 -2 $v_1 LOCALE ENTIER 0 -1 -3 $v_2 LOCALE ENTIER 4 -1 ------------------------------------------- diff --git a/eval-fourni/output/tri.asynt b/eval-fourni/output/tri.asynt deleted file mode 100644 index f1106e5..0000000 --- a/eval-fourni/output/tri.asynt +++ /dev/null @@ -1,418 +0,0 @@ - - - $tab[10] - - - - initialiser - - - - $tab - 0 - - 8 - - - - - $tab - 1 - - 6 - - - - - $tab - 2 - - 9 - - - - - $tab - 3 - - 9 - - - - - $tab - 4 - - 4 - - - - - $tab - 5 - - 2 - - - - - $tab - 6 - - 3 - - - - - $tab - 7 - - 1 - - - - - $tab - 8 - - 4 - - - - - $tab - 9 - - 5 - - - - - - - - - - - - - - - afficher - - $n - - - $i - - - - $i - 0 - - - - - inf - - $i - - - $n - - - - - - - $tab - - $i - - - - - - - $i - - plus - - $i - - 1 - - - - - - - - 0 - - - - - - - - echanger - - $i - - $j - - - - $temp - - - - $temp - - - $tab - - $j - - - - - - - - $tab - - $j - - - - - $tab - - $i - - - - - - - - $tab - - $i - - - - $temp - - - - - - - - - trier - - $n - - - $echange - - $j - - $m - - - - - - $m - - $n - - - - - $echange - 1 - - - - - egal - - $echange - - 1 - - - - $echange - 0 - - - - $j - 0 - - - - - inf - - $j - - - moins - - $m - - 1 - - - - - - inf - - - $tab - - plus - - $j - - 1 - - - - - - $tab - - $j - - - - - - - - echanger - - - $j - - - - plus - - $j - - 1 - - - - - - - - - - $echange - 1 - - - - - - - $j - - plus - - $j - - 1 - - - - - - - - $m - - moins - - $m - - 1 - - - - - - - - - - - - - - main - - - - initialiser - - - - - - - - afficher - - 10 - - - - - - - - - trier - - 10 - - - - - - - - - afficher - - 10 - - - - - - - - - - - - - - - - diff --git a/eval-fourni/output/tri.lex b/eval-fourni/output/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/eval-fourni/output/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/output/tri.mips b/eval-fourni/output/tri.mips deleted file mode 100644 index efc70cb..0000000 --- a/eval-fourni/output/tri.mips +++ /dev/null @@ -1,455 +0,0 @@ -.data -$$tab: .space 40 -.text -__start: -jal main -li $v0, 10 -syscall -initialiser : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 8 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 6 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -li $t0, 2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 9 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -li $t0, 3 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 9 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, P`ǁ -li $t0, 4 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 4 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0,  -li $t0, 5 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -li $t0, 6 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 3 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, @^ǁ -li $t0, 7 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -li $t0, 8 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 4 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, sw $t0, -li $t0, 9 -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 5 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, sw $t0, -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -afficher : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -subi $sp, $sp, 4 -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -e0: -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 4($fp) #variable argument $n -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -blt $t1, $t2 e2 -li $t0, 0 -e2: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $0 e1 -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0,  -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -add $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -j e0 -e1: -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -move $a0, $t0 -li $v0, 1 -syscall -li $a0, '\n' -li $v0, 11 -syscall -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -echanger : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -subi $sp, $sp, 4 -lw $t0, 4($fp) #variable argument $j -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, ]ǁ -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -lw $t0, 4($fp) #variable argument $j -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 8($fp) #variable argument $i -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -lw $t0, 8($fp) #variable argument $i -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, $@ -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -trier : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -subi $sp, $sp, 4 -subi $sp, $sp, 4 -subi $sp, $sp, 4 -lw $t0, 4($fp) #variable argument $n -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -16($fp) #variable locale -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -e3: -lw $t0, -8($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -beq $t1, $t2 e5 -li $t0, 0 -e5: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $0 e4 -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -li $t0, 0 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -12($fp) #variable locale -e6: -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -16($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -sub $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -blt $t1, $t2 e8 -li $t0, 0 -e8: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $0 e7 -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -add $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -li $t0, 1 -blt $t1, $t2 e9 -li $t0, 0 -e9: -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -beq $t0 $zero e10 -sub $sp, $sp, 4 #Val Retour -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -add $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -jal echanger -addi $sp, $sp, 8 -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -8($fp) #variable locale -j e11 -e10: -e11: -lw $t0, -12($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -add $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -12($fp) #variable locale -j e6 -e7: -lw $t0, -16($fp) #variable locale -subi $sp, $sp, 4 -sw $t0, 0($sp) -li $t0, 1 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t2, 0($sp) -addi $sp, $sp, 4 -lw $t1, 0($sp) -addi $sp, $sp, 4 -sub $t0, $t1, $t2 -subi $sp, $sp, 4 -sw $t0, 0($sp) -lw $t0, 0($sp) -addi $sp, $sp, 4 -sw $t0, -16($fp) #variable locale -j e3 -e4: -addi $sp, $sp 0 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra -main : -subi $sp, $sp, 4 -sw $fp, 0($sp) -move $fp, $sp -subi $sp, $sp, 4 -sw $ra, 0($sp) -sub $sp, $sp, 4 #Val Retour -jal initialiser -addi $sp, $sp, 0 -sub $sp, $sp, 4 #Val Retour -li $t0, 10 -subi $sp, $sp, 4 -sw $t0, 0($sp) -jal afficher -addi $sp, $sp, 4 -sub $sp, $sp, 4 #Val Retour -li $t0, 10 -subi $sp, $sp, 4 -sw $t0, 0($sp) -jal trier -addi $sp, $sp, 4 -sub $sp, $sp, 4 #Val Retour -li $t0, 10 -subi $sp, $sp, 4 -sw $t0, 0($sp) -jal afficher -addi $sp, $sp, 4 -addi $sp, $sp 12 # desallocation variables locales -lw $ra, 0($sp) -addi $sp, $sp, 4 -lw $fp, 0($sp) -addi $sp, $sp, 4 -jr $ra diff --git a/eval-fourni/output/tri.synt b/eval-fourni/output/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/eval-fourni/output/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/eval-fourni/output/tri.tab b/eval-fourni/output/tri.tab deleted file mode 100644 index b248a59..0000000 --- a/eval-fourni/output/tri.tab +++ /dev/null @@ -1,49 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 ------------------------------------------- ------------------------------------------- -base = 3 -sommet = 5 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 $n ARGUMENT ENTIER 0 -1 -4 $i LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 4 -sommet = 7 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 $i ARGUMENT ENTIER 0 -1 -5 $j ARGUMENT ENTIER 4 -1 -6 $temp LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 5 -sommet = 9 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 $n ARGUMENT ENTIER 0 -1 -6 $echange LOCALE ENTIER 0 -1 -7 $j LOCALE ENTIER 4 -1 -8 $m LOCALE ENTIER 8 -1 ------------------------------------------- ------------------------------------------- -base = 6 -sommet = 6 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/ref-asynt/affect.asynt b/eval-fourni/ref-asynt/affect.asynt deleted file mode 100644 index f92de39..0000000 --- a/eval-fourni/ref-asynt/affect.asynt +++ /dev/null @@ -1,23 +0,0 @@ - - - $a - - - - main - - - $a - 1 - - - - - $a - - - - - - - diff --git a/eval-fourni/ref-asynt/boucle.asynt b/eval-fourni/ref-asynt/boucle.asynt deleted file mode 100644 index 3f2aace..0000000 --- a/eval-fourni/ref-asynt/boucle.asynt +++ /dev/null @@ -1,63 +0,0 @@ - - - $i - - $carre - - - - - main - - - $i - 0 - - - - - inf - - $i - - 10 - - - - $carre - - fois - - $i - - - $i - - - - - - - $carre - - - - - $i - - plus - - $i - - 1 - - - - - - - - - - - diff --git a/eval-fourni/ref-asynt/expression.asynt b/eval-fourni/ref-asynt/expression.asynt deleted file mode 100644 index 5a3244d..0000000 --- a/eval-fourni/ref-asynt/expression.asynt +++ /dev/null @@ -1,19 +0,0 @@ - - - $a - - - - main - - - - fois - 5 - 2 - - - - - - diff --git a/eval-fourni/ref-asynt/max.asynt b/eval-fourni/ref-asynt/max.asynt deleted file mode 100644 index e419965..0000000 --- a/eval-fourni/ref-asynt/max.asynt +++ /dev/null @@ -1,106 +0,0 @@ - - - - max - - $a - - $b - - - - - - inf - - $a - - - $b - - - - - - $b - - - - - - - - $a - - - - - - - - main - - $v_1 - - $v_2 - - - - - $v_1 - - - - - - $v_2 - - - - - - - egal - - - max - - - $v_1 - - - - $v_2 - - - - - - - - - $v_1 - - - - - - $v_1 - - - - - - - $v_2 - - - - - - - - - - - diff --git a/eval-fourni/ref-asynt/tri.asynt b/eval-fourni/ref-asynt/tri.asynt deleted file mode 100644 index f1106e5..0000000 --- a/eval-fourni/ref-asynt/tri.asynt +++ /dev/null @@ -1,418 +0,0 @@ - - - $tab[10] - - - - initialiser - - - - $tab - 0 - - 8 - - - - - $tab - 1 - - 6 - - - - - $tab - 2 - - 9 - - - - - $tab - 3 - - 9 - - - - - $tab - 4 - - 4 - - - - - $tab - 5 - - 2 - - - - - $tab - 6 - - 3 - - - - - $tab - 7 - - 1 - - - - - $tab - 8 - - 4 - - - - - $tab - 9 - - 5 - - - - - - - - - - - - - - - afficher - - $n - - - $i - - - - $i - 0 - - - - - inf - - $i - - - $n - - - - - - - $tab - - $i - - - - - - - $i - - plus - - $i - - 1 - - - - - - - - 0 - - - - - - - - echanger - - $i - - $j - - - - $temp - - - - $temp - - - $tab - - $j - - - - - - - - $tab - - $j - - - - - $tab - - $i - - - - - - - - $tab - - $i - - - - $temp - - - - - - - - - trier - - $n - - - $echange - - $j - - $m - - - - - - $m - - $n - - - - - $echange - 1 - - - - - egal - - $echange - - 1 - - - - $echange - 0 - - - - $j - 0 - - - - - inf - - $j - - - moins - - $m - - 1 - - - - - - inf - - - $tab - - plus - - $j - - 1 - - - - - - $tab - - $j - - - - - - - - echanger - - - $j - - - - plus - - $j - - 1 - - - - - - - - - - $echange - 1 - - - - - - - $j - - plus - - $j - - 1 - - - - - - - - $m - - moins - - $m - - 1 - - - - - - - - - - - - - - main - - - - initialiser - - - - - - - - afficher - - 10 - - - - - - - - - trier - - 10 - - - - - - - - - afficher - - 10 - - - - - - - - - - - - - - - - diff --git a/eval-fourni/ref-lex/affect.lex b/eval-fourni/ref-lex/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/eval-fourni/ref-lex/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/ref-lex/boucle.lex b/eval-fourni/ref-lex/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/eval-fourni/ref-lex/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/ref-lex/expression.lex b/eval-fourni/ref-lex/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/eval-fourni/ref-lex/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/ref-lex/max.lex b/eval-fourni/ref-lex/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/eval-fourni/ref-lex/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/ref-lex/tri.lex b/eval-fourni/ref-lex/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/eval-fourni/ref-lex/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-fourni/ref-mips/affect.mips b/eval-fourni/ref-mips/affect.mips deleted file mode 100644 index c357402..0000000 --- a/eval-fourni/ref-mips/affect.mips +++ /dev/null @@ -1,35 +0,0 @@ - .data -$a: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $a # stocke variable - lw $t1, $a # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/eval-fourni/ref-mips/boucle.mips b/eval-fourni/ref-mips/boucle.mips deleted file mode 100644 index fc771f5..0000000 --- a/eval-fourni/ref-mips/boucle.mips +++ /dev/null @@ -1,91 +0,0 @@ - .data -$i: .space 4 -$carre: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $i # stocke variable -e0: - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - mult $t0, $t1 - mflo $t2 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $carre # stocke variable - lw $t1, $carre # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $i # stocke variable - j e0 -e1: - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/eval-fourni/ref-mips/expression.mips b/eval-fourni/ref-mips/expression.mips deleted file mode 100644 index 5f52e36..0000000 --- a/eval-fourni/ref-mips/expression.mips +++ /dev/null @@ -1,40 +0,0 @@ - .data -$a: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - mult $t0, $t1 - mflo $t2 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/eval-fourni/ref-mips/max.mips b/eval-fourni/ref-mips/max.mips deleted file mode 100644 index 4d04e55..0000000 --- a/eval-fourni/ref-mips/max.mips +++ /dev/null @@ -1,137 +0,0 @@ - .data - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -max: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t0, 12($fp) # ecriture de la valeur de retour - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -e1: - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t0, 12($fp) # ecriture de la valeur de retour - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 8 # allocation variables locales - li $v0, 5 - syscall # lecture - subi $sp, $sp, 4 # empile registre - sw $v0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - li $v0, 5 - syscall # lecture - subi $sp, $sp, 4 # empile registre - sw $v0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - # empile arg 1 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - jal max - addi $sp, $sp, 8 # desallocation parametres - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # egal - beq $t0, $t1, e5 - li $t2, 0 -e5: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e3 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - j e4 -e3: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char -e4: - addi $sp, $sp, 8 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/eval-fourni/ref-mips/tri.mips b/eval-fourni/ref-mips/tri.mips deleted file mode 100644 index 359190d..0000000 --- a/eval-fourni/ref-mips/tri.mips +++ /dev/null @@ -1,525 +0,0 @@ - .data -$tab: .space 40 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -initialiser: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 8 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 6 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 3 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 3 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 6 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 7 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 8 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -afficher: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation variables locales - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e0: - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - j e0 -e1: - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - addi $sp, $sp, 4 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -echanger: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation variables locales - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - addi $sp, $sp, 4 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -trier: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 12 # allocation variables locales - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -16($fp) # stocke variable - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e3: - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # egal - beq $t0, $t1, e5 - li $t2, 0 -e5: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e4 - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable -e6: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, -16($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sub $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e8 - li $t2, 0 -e8: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e7 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e11 - li $t2, 0 -e11: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e10 - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - # empile arg 1 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - jal echanger - addi $sp, $sp, 8 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e10: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable - j e6 -e7: - lw $t1, -16($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sub $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -16($fp) # stocke variable - j e3 -e4: - addi $sp, $sp, 12 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation valeur de retour - jal initialiser - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal afficher - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal trier - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal afficher - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/eval-fourni/ref-synt/affect.synt b/eval-fourni/ref-synt/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/eval-fourni/ref-synt/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/ref-synt/boucle.synt b/eval-fourni/ref-synt/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/eval-fourni/ref-synt/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/ref-synt/expression.synt b/eval-fourni/ref-synt/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/eval-fourni/ref-synt/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-fourni/ref-synt/max.synt b/eval-fourni/ref-synt/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/eval-fourni/ref-synt/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-fourni/ref-synt/tri.synt b/eval-fourni/ref-synt/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/eval-fourni/ref-synt/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/eval-fourni/ref-tab/affect.tab b/eval-fourni/ref-tab/affect.tab deleted file mode 100644 index 91bc69d..0000000 --- a/eval-fourni/ref-tab/affect.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/ref-tab/boucle.tab b/eval-fourni/ref-tab/boucle.tab deleted file mode 100644 index f37700e..0000000 --- a/eval-fourni/ref-tab/boucle.tab +++ /dev/null @@ -1,7 +0,0 @@ ------------------------------------------- -base = 3 -sommet = 3 -0 $i GLOBALE ENTIER 0 -1 -1 $carre GLOBALE ENTIER 4 -1 -2 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/ref-tab/expression.tab b/eval-fourni/ref-tab/expression.tab deleted file mode 100644 index 91bc69d..0000000 --- a/eval-fourni/ref-tab/expression.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/ref-tab/max.tab b/eval-fourni/ref-tab/max.tab deleted file mode 100644 index 3d3086c..0000000 --- a/eval-fourni/ref-tab/max.tab +++ /dev/null @@ -1,15 +0,0 @@ ------------------------------------------- -base = 1 -sommet = 3 -0 max GLOBALE FONCTION 0 2 -1 $a ARGUMENT ENTIER 0 -1 -2 $b ARGUMENT ENTIER 4 -1 ------------------------------------------- ------------------------------------------- -base = 2 -sommet = 4 -0 max GLOBALE FONCTION 0 2 -1 main GLOBALE FONCTION 0 0 -2 $v_1 LOCALE ENTIER 0 -1 -3 $v_2 LOCALE ENTIER 4 -1 ------------------------------------------- diff --git a/eval-fourni/ref-tab/tri.tab b/eval-fourni/ref-tab/tri.tab deleted file mode 100644 index b248a59..0000000 --- a/eval-fourni/ref-tab/tri.tab +++ /dev/null @@ -1,49 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 ------------------------------------------- ------------------------------------------- -base = 3 -sommet = 5 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 $n ARGUMENT ENTIER 0 -1 -4 $i LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 4 -sommet = 7 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 $i ARGUMENT ENTIER 0 -1 -5 $j ARGUMENT ENTIER 4 -1 -6 $temp LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 5 -sommet = 9 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 $n ARGUMENT ENTIER 0 -1 -6 $echange LOCALE ENTIER 0 -1 -7 $j LOCALE ENTIER 4 -1 -8 $m LOCALE ENTIER 8 -1 ------------------------------------------- ------------------------------------------- -base = 6 -sommet = 6 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/eval-fourni/testAll.sh b/eval-fourni/testAll.sh deleted file mode 100755 index 2b17e1f..0000000 --- a/eval-fourni/testAll.sh +++ /dev/null @@ -1,251 +0,0 @@ -#!/bin/bash -############################################################################## -# -# Script d'évaluation automatique du compilateur. -# Compile le programme source et compare la sortie avec la référence. -# Pour le code MIPS, compare la SORTIE de l'exécution sur Mars -# Comprend -# * analyse lexicale, -# * analyse syntaxique, -# * arbre abstrait, -# * table des symboles et -# * code MIPS. -# -# ATTENTION : pour que le script marche, votre compilateur doit returner 0 em -# cas de succès, autre valeur en cas d'erreur (entrée ne compile pas -# correctement) et doit permettre d'afficher les sorties sur stdout, sauf -# éventuels messages d'erreur, sur stderr. On doit pouvoir, à tout moment, -# changer le type de sortie (lex, synt, asynt, tab, mips) avec des options. -# -############################################################################## -### LLL IIIIIII RRRRRRR EEEEEEEEE |||| -### LLL III RRR RRR EEEEEEEEE |||| -### LLL III RRR RR EEE |||| -### LLL III RRR RRR EEEEEEEE |||| -### LLL III RRRRRRR EEEEEEEE \\\\//// -### LLL III RRR RRR EEE \\\/// -### LLLLLLLL III RRR RRR EEEEEEEE \\// -### LLLLLLLL IIIIIII RRR RRR EEEEEEEEE \/ -############################################################################## - -# 1) MODIFIEZ LA VARIABLE CI-DESSOUS AVEC LE CHEMIN VERS VOTRE COMPILATEUR - -MYCOMPILO="../compilateur-l" - -# 2) DÉCOMMENTEZ + MODIFIEZ LES COMMANDES POUR GÉNÉRER LES DIFFÉRENTES SORTIES - -MYCOMPILODEFAULT="${MYCOMPILO}" # utilisé pour test reconnaissance et erreur -MYCOMPILOLEX="${MYCOMPILO} -l" # exécuter l'analyseur lexical -MYCOMPILOSYNT="${MYCOMPILO} -s" # exécuter l'analyseur syntaxique -MYCOMPILOASYNT="${MYCOMPILO} -a" # afficher l'arbre abstrait -MYCOMPILOTAB="${MYCOMPILO} -t" # afficher les tables des symboles -MYCOMPILOMIPS="${MYCOMPILO} -m" # générer code MIPS -EXITONFAIL=1 # mettre à zéro pour continuer après erreurs -MARS="./Mars4_5.jar" # utilisez autre version de Mars si besoin -############################################################################## -# NE PLUS LIRE À PARTIR D'ICI ;-) -############################################################################## - -declare -A testname -testname["lex"]="Analyse lexicale" -testname["synt"]="Analyse syntaxique" -testname["asynt"]="Arbre abstrait" -testname["tab"]="Table des symboles" -testname["mips"]="Code machine MIPS" - -############################################################################## -# Fonction pour faire le diff textuel régulier (lex et tab). -# Cette fonction peut être passée en paramètre à la fonction diff_prog. -# @param $1 Fichier 1 -# @param $2 Fichier 2 -# @return 0 si pas de différence, autre sinon - -function REGDIFF() { - diff -q -w $1 $2 -} - -############################################################################## -# Fonction pour faire le diff entre deux fichiers XML (syn et asyn). -# Cette fonction peut être passée en paramètre à la fonction diff_prog. -# @param $1 Fichier XML 1 -# @param $2 Fichier XML 2 -# @return 0 si pas de différence, autre sinon - -function XMLDIFF() { - ./compare_arbres_xml $1 $2 -} - -############################################################################## -# Fonction pour faire le diff entre deux sorties d'exécution Mars (mips). -# Cette fonction peut être passée en paramètre à la fonction diff_prog. -# @param $1 Fichier mips 1 -# @param $2 Fichier mips 2 -# @param $3 Entrée à donner à l'exécution du programme (optionnel) -# @return 0 si pas de différence, autre sinon - -function MARSOUTDIFF() { - diff <(echo -e "$3" | java -jar $MARS $1 | tail -n +2 | sed ':a;N;$!ba;s/[ \n]//g') <(echo -e "$3" | java -jar $MARS $2 | tail -n +2 | sed ':a;N;$!ba;s/[ \n]//g') -} - -############################################################################## -# Fonction pour faire le diff entre deux fichiers, vérifier et afficher le -# résultat avec de belles couleurs. -# @param $1 Nom de la fonction utilisée pour faire le diff (parmi 3 ci-dessus) -# @param $2 Nom du fichier d'entrée à tester sans extension (p. ex. affect) -# @param $3 Extension du fichier à tester (p. ex. synt) -# @param $4 Entrée à donner à l'exécution du programme (optionnel) - -function diff_prog() { - diffprog=$1 - input=$2 - suffix=$3 - values=$4 - refoutput="ref-${suffix}/${input}.${suffix}" - sysoutput="output/${input}.${suffix}" - echo -e "\033[35m > ${testname[${suffix}]} (.${suffix})\033[0m" - echo -e "`wc -l output/${input}.${suffix} | awk '{print $1}'` lignes" - if [ -f ref-${suffix}/$input.${suffix} ]; then - ${diffprog} output/${input}.${suffix} ref-${suffix}/${input}.${suffix} ${values} 2>&1 2> /dev/null - if [ $? != 0 ]; then - echo -e "\033[31mTEST ${testname[${suffix}]} ÉCHOUÉ\033[0m" - echo -e "Différences entre output/${input}.${suffix} ref-${suffix}/${input}.${suffix} en utilisant $diffprog:" - ${diffprog} output/${input}.${suffix} ref-${suffix}/${input}.${suffix} ${values} - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST ${testname[${suffix}]} OK\033[0m" - fi - else - echo -e "\033[34mRéférence ref-${suffix}/${input}.${suffix} absente\033[0m" - fi -} - -############################################################################## -# Exécute tous les tests (reco, lex, synt, asynt, tab, mips) pour un exemple -# donné qui doit être correctement compilé à tous les niveaux. -# @param $1 Nom du fichier d'entrée à tester sans extension (p. ex. affect) -# @param $2 Entrée à donner à l'exécution du programme (optionnel) - -function test_fichier_ok() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - if [ -n "$2" ]; then - echo "Input : $2" - fi - if [ -f input/$input.l ]; then - # Reconnaissance : programme correct doit être accepté - if [ -n "${MYCOMPILODEFAULT}" ]; then - echo -e "\033[35m > Reconnaissance (accepte l'entrée)\033[0m" - ${MYCOMPILODEFAULT} input/$input.l > output/$input.synt - if [ $? != 0 ]; then - echo -e "\033[31mTEST Reconnaissance ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l n'a pas été compilé correctement" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST Reconnaissance OK\033[0m" - fi - fi - # Teste analyseur lexical - if [ -n "${MYCOMPILOLEX}" ]; then - ${MYCOMPILOLEX} input/$input.l > output/$input.lex - diff_prog REGDIFF $input lex - fi - # Teste analyseur syntaxique - if [ -n "${MYCOMPILOSYNT}" ]; then - ${MYCOMPILOSYNT} input/$input.l > output/$input.synt - diff_prog XMLDIFF $input synt - fi - # Teste création de l'arbre abstrait - if [ -n "${MYCOMPILOASYNT}" ]; then - ${MYCOMPILOASYNT} input/$input.l > output/$input.asynt - diff_prog XMLDIFF $input asynt - fi - # Teste replissage de la table des symboles - if [ -n "${MYCOMPILOTAB}" ]; then - ${MYCOMPILOTAB} input/$input.l > output/$input.tab - diff_prog REGDIFF $input tab - fi - # Teste génération de code MIPS - if [ -n "${MYCOMPILOMIPS}" ]; then - ${MYCOMPILOMIPS} input/$input.l > output/$input.mips - diff_prog MARSOUTDIFF $input mips "$2" - fi - else - echo -e "\033[31minput/$input.l non trouvé\033[0m" - echo -e "\033[31mTest impossible\033[0m" - fi -} - -############################################################################## -# Vérifie qu'un programme contenant des erreurs n'est pas reconnu/compilé. -# @param $1 Nom du fichier d'entrée à tester sans extension (p. ex. affect) - -function test_fichier_fail() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - ${MYCOMPILODEFAULT} input/$input.l > output/$input.synt.xml - if [ $? = 0 ]; then - echo -e "\033[31mTEST REJET ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l est accepté mais il devrait être rejeté" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST REJET OK\033[0m" - fi -} - -############################################################################## -####### ##### ###### ###### ### ##### ############################### -####### ### ##### # ###### #### ### ############################### -####### # #### ### ##### #### ## # ############################### -####### # # ### #### #### ### ############################### -####### ## ## ## ####### ## ### #### ############################### -############################################################################## - -make clean -make -mkdir -p output - -################################################################################ -# Vérifications initiales : MYCOMPILO et MARS bien configurés? - -echo -e "Votre compilateur : ${MYCOMPILO}" -if [ ! -f ${MYCOMPILO} ]; then - echo -e "\033[31mCompilateur introuvable" - echo -e "Modifiez la variable MYCOMPILO avant de lancer l'éval\033[0m" - exit 1 -fi -if [ -n "${MYCOMPILOMIPS}" -a ! -f ${MARS} ]; then - echo -e "\033[31mMARS introuvable" - echo -e "Modifiez la variable MARS avant de lancer l'éval\033[0m" - exit 1 -fi - -################################################################################ - -echo -e "\033[1m\n>> 1) Tests connus OK\033[0m" - -test_fichier_ok affect -test_fichier_ok boucle -test_fichier_ok expression -# 3 cas de figure selon les entrées tapées -test_fichier_ok max "3\n10\n" -test_fichier_ok max "10\n10\n" -test_fichier_ok max "-3\n-10\n" -test_fichier_ok tri - -################################################################################ - -echo -e "\033[1m\n>> 2) Tests connus FAIL\033[0m" - -test_fichier_fail affect-err - -################################################################################ - -echo -e "\033[1m\n>> 3) Tests nouveaux OK\033[0m" - -# Coming soon ;-) - -################################################################################ - -echo -e "\033[1m\n>> 4) Tests nouveaux FAIL\033[0m" - -# Coming soon ;-) diff --git a/eval-partiel/Makefile b/eval-partiel/Makefile deleted file mode 100644 index 9022348..0000000 --- a/eval-partiel/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -CC = gcc - -LIBS = -lm -CCFLAGS = -Wall -ggdb - -all: compare_arbres_xml - -compare_arbres_xml: compare_arbres_xml.c analyseur_xml.o - $(CC) $(CCFLAGS) -o compare_arbres_xml compare_arbres_xml.c analyseur_xml.o - -analyseur_xml.o: analyseur_xml.c - $(CC) $(CCFLAGS) -c analyseur_xml.c - -.PHONY : clean - -clean: - - rm -f *.o compare_arbres_xml diff --git a/eval-partiel/README.html b/eval-partiel/README.html deleted file mode 100644 index 3cf923a..0000000 --- a/eval-partiel/README.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - Carlos Ramisch - personal page - - - - -
-

Evaluation de l'analyseur syntaxique 2015/2016

- -

1 - Compilation du compilateur

- -Compilez votre analyseur à l'aide d'un Makefile. - -

2 - Exécution sur des exemples existants

- - -

Vous pouvez modifier le script runEval.sh en modifiant le chemin vers l'exécutable de votre compilateur. Ensuite, exécutez-le pour effectuer les tests ci-dessous 100% automatiquement

- -

Analysez les programmes suivants :

- - - - - - - - -
affect.l
boucle.l
expression.l
max.l
tri.l
affect-err.l
- -

3 - Exécution sur de nouveaux exemples

- -

3.1 Exemples compilés OK

- -

Compilez à l'aide de votre compilateur, les programmes suivants :

- - - - - - - - - - -
eval1.l
eval2.l
eval3.l
eval4.l
eval5.l
eval6.l
eval7.l
eval8.l
- -

3.1 Exemples pas compilés

- -

Vérifiez que les programmes suivants ne compilent pas :

- - - - - - - -
eval1err.l
eval2err.l
eval3err.l
eval4err.l
eval5err.l
- - - - -

4 - Ajout de la boucle pour

- -

On désire ajouter à notre langage une boucle de type pour, dont voici la syntaxe:

- -

pour IAFFinit E; IAFFincr faire IB

- -

Une telle instruction exécute d'abord la première affectation, contenue dans IAFFinit, pour l'initialisation. Ensuite, tant que la valeur de l'expression E est vraie, c'est-à-dire, ne vaut pas zéro, elle exécute le bloc d'instructions dans IB suivi de l'instruction d'incrément IAFFincr. Cette boucle est similaire à la boucle for en C. Cependant, il n'est pas possible de mettre autre chose qu'une affectation dans les parties d'initialisation et d'incrément (en C, elles peuvent être vides ou contenir n'importe quelle instruction-expression).

- - - -

Modifiez l'analyseur lexical et l'analyseur syntaxique afin de prendre en compte cette nouvelle instruction.

- -

5 - Tests

-

Vous testerez votre nouvel analyseur sur les programmes suivants:

- - - - - - -
test1.l
test2.l
test3.l
test1err.l - ne doit pas compiler
-
-
- - - diff --git a/eval-partiel/analyseur_xml.c b/eval-partiel/analyseur_xml.c deleted file mode 100644 index 164345b..0000000 --- a/eval-partiel/analyseur_xml.c +++ /dev/null @@ -1,323 +0,0 @@ -#include -#include -#include -#include"analyseur_xml.h" - -/* symboles terminaux */ - -#define CHEVRON_FERMANT 1 -#define DEBUT_BF 2 -#define DEBUT_BO 3 -#define CHAINE 4 -#define FIN 5 - -#define ISSPACE(a) (a == ' ') || (a == '\n') || (a == '\t') - -#define YYTEXT_MAX 100 - -/* fonctions pour arbre abstrait */ - -noeud *cree_noeud(char *nom) -{ - noeud *n = malloc(sizeof(noeud)); - if(n == NULL){ - fprintf(stderr, "erreur d'allocation\n"); - exit(1); - } - n->nom = nom; - n->premier_fils = NULL; - n->dernier_fils = NULL; - n->suiv = NULL; - return n; -} - -noeud *ajoute_fils(noeud *pere, noeud *fils) -{ - if(pere->premier_fils == NULL){ - pere->premier_fils = pere->dernier_fils = fils; - return pere; - } - pere->dernier_fils->suiv = fils; - pere->dernier_fils = fils; - return pere; - -} - -void affiche_arbre(noeud *racine){ - noeud *n; - printf("<%s> ", racine->nom); - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - affiche_arbre(n); - } - printf(" ", racine->nom); -} - - -int compare_arbres_rec(noeud *racine1, noeud *racine2, int verbose, int profondeur) -{ - noeud *f1, *f2; - int resultat = 1; - int i; - if(verbose){ - for(i=0; i %s\n", racine1->nom, racine2->nom); - } - if(strcmp(racine1->nom, racine2->nom)) - return 0; - - for(f1 = racine1->premier_fils, f2 = racine2->premier_fils; - f1 && f2 && resultat; - f1 = f1->suiv, f2 = f2->suiv){ - resultat = compare_arbres_rec(f1, f2, verbose, profondeur+1); - } - return ((f1 == NULL) && (f2 == NULL) && resultat); -} - -int compare_arbres(noeud *racine1, noeud *racine2, int verbose) -{ - return compare_arbres_rec(racine1, racine2, verbose, 0); -} - -void libere_arbre(noeud *racine) -{ - noeud *n; - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - libere_arbre(n); - } - free(racine); -} - -/* analyseur lexical */ - -int DEBUG = 0; -char yytext[YYTEXT_MAX]; -int yyleng; -int yylval; -/* Compter les lignes pour afficher les messages d'erreur avec numero ligne */ -int nb_ligne; -int cc; - -/******************************************************************************* - * Fonction qui ignore les espaces et commentaires. - * Renvoie -1 si arrivé à la fin du fichier, 0 si tout va bien - ******************************************************************************/ -int mangeEspaces() -{ - char c = fgetc(yyin); - while( ISSPACE(c) ) { - if( c == '\n' ) { - nb_ligne++; - } - c = fgetc(yyin); - } - if ( feof(yyin) ) { - return -1; - } - ungetc(c, yyin); - return 0; -} - -/******************************************************************************* - * Lit un caractère et le stocke dans le buffer yytext - ******************************************************************************/ -char lireCar(void) -{ - yytext[yyleng++] = fgetc(yyin); - yytext[yyleng] = '\0'; - return yytext[yyleng - 1]; -} - -/******************************************************************************* - * Remet le dernier caractère lu au buffer clavier et enlève du buffer yytext - ******************************************************************************/ -void delireCar() -{ - char c; - c = yytext[yyleng - 1]; - yytext[--yyleng] = '\0'; - ungetc(c, yyin); -} -/******************************************************************************* - * Fonction principale de l'analyseur lexical, lit les caractères de yyin et - * renvoie les tokens sous forme d'entier. Le code de chaque unité est défini - * dans symboles.h sinon (mot clé, idententifiant, etc.). Pour les tokens de - * type ID_FCT, ID_VAR et NOMBRE la valeur du token est dans yytext, visible - * dans l'analyseur syntaxique. - ******************************************************************************/ -int inTag = 0; - -int yylex(void) -{ - char c; - yytext[yyleng = 0] = '\0'; - - /* Si j'ai trouvé la fin du fichier en lisant des espaces ... */ - if( !inTag && mangeEspaces() == -1 ) { - return FIN; /* Renvoie le marqueur de fin d'entrée */ - } - - c = lireCar(); - if(c == '>'){ - if(DEBUG) { printf("CHEVRON_FERMANT\n"); } - //inTag = 0; - return CHEVRON_FERMANT; - } - if(c == '<'){ - inTag = 1; - c = lireCar(); - if(c == '/'){ - if(DEBUG) { printf("DEBUT_BF\n"); } - return DEBUT_BF; - } - else{ - delireCar(); - if(DEBUG) { printf("DEBUT_BO\n"); } - return DEBUT_BO; - } - } - do{ - c = lireCar(); - inTag = 0; - }while((c!= '<') && (c!= '>') && !feof(yyin) && !(ISSPACE(c))); - delireCar(); - if(DEBUG) { printf("CHAINE\n"); } - - return CHAINE; - } - - - /******************************************************************************* - * Fonction auxiliaire appelée par l'analyseur syntaxique tout simplement pour - * afficher des messages d'erreur et l'arbre XML - ******************************************************************************/ -void nom_token( int token, char *nom, char *valeur ) { - //int i; - - strcpy( nom, "symbole" ); - if(token == CHEVRON_FERMANT) strcpy( valeur, "CHEVRON_FERMANT"); - else if(token == DEBUT_BF) strcpy( valeur, "DEBUT_BF"); - else if(token == DEBUT_BO) strcpy( valeur, "DEBUT_BO"); - else if(token == CHAINE) strcpy( valeur, "CHAINE"); -} - -/* analyse syntaxique */ - -noeud *B(void); -void LB(noeud *pere); -char *BO(void); -char *BF(void); -void LCHAINE(void); - -void erreur(char *msg){ - fprintf(stderr, "Ligne %d : erreur : %s\n", nb_ligne, msg); - exit(1); -} - - - -/* B -> BO LCHAINE LB LCHAINE BF */ -noeud *B(void){ - char *nom_bo; - char *nom_bf; - noeud *n; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - nom_bo = BO(); - n = cree_noeud(nom_bo); - LCHAINE(); - LB(n); - LCHAINE(); - nom_bf = BF(); - if(strcmp(nom_bo, nom_bf)){ - fprintf(stderr, "Ligne %d : arbre mal forme: balise ouvrante : \"%s\" balise fermante : \"%s\"\n", nb_ligne, nom_bo, nom_bf); - exit(1); - } - free(nom_bf); - if(DEBUG) { printf("\n"); } - return n; - } - erreur("B"); - return NULL; -} - -/* LCHAINE -> CHAINE LCHAINE */ -/* | */ - -void LCHAINE(void){ - if(cc == CHAINE){ - cc = yylex(); - LCHAINE(); - return; - } - if((cc == DEBUT_BO) ||(cc == DEBUT_BF)){ - return; - } - erreur("LCHAINE"); -} - -/* LB -> B LB - | */ - -void LB(noeud *pere) -{ - noeud *fils = NULL; - if(cc == DEBUT_BO){ - fils = B(); - ajoute_fils(pere, fils); - LB(pere); - return; - } - if(cc == DEBUT_BF){ - return; - } - erreur("LB"); -} - -/* BO -> DEBUT_BO CHAINE CHEVRON_FERMANT */ -char *BO(void) -{ - char *nom = NULL; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - if(DEBUG) { printf("\n"); } - return nom; - } - } - } - erreur("BO"); - return NULL; -} - -/* BF -> DEBUT_BF CHAINE CHEVRON_FERMANT */ -char *BF(void) -{ - char *nom = NULL; - if(cc == DEBUT_BF){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - return nom; - } - } - } - erreur("BF"); - return NULL; -} - -noeud *analyseur_xml(void) -{ - nb_ligne = 0; - cc = yylex(); - return B(); -} - - diff --git a/eval-partiel/analyseur_xml.h b/eval-partiel/analyseur_xml.h deleted file mode 100644 index 1ec5aa1..0000000 --- a/eval-partiel/analyseur_xml.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __ANALYSEUR_XML__ -#define __ANALYSEUR_XML__ - -/* structures de donnees et fonctions pour arbre abstrait */ - -typedef struct n noeud; - -struct n{ - char *nom; - struct n *premier_fils; - struct n *dernier_fils; - struct n *suiv; -}; - -FILE *yyin; - - -void affiche_arbre(noeud *racine); -int compare_arbres(noeud *racine1, noeud *racine2, int verbose); -void libere_arbre(noeud *r); - -/* analyseur */ - -noeud *analyseur_xml(void); -#endif diff --git a/eval-partiel/compare_arbres_xml b/eval-partiel/compare_arbres_xml deleted file mode 100755 index 8849245..0000000 Binary files a/eval-partiel/compare_arbres_xml and /dev/null differ diff --git a/eval-partiel/compare_arbres_xml.c b/eval-partiel/compare_arbres_xml.c deleted file mode 100644 index 1231486..0000000 --- a/eval-partiel/compare_arbres_xml.c +++ /dev/null @@ -1,63 +0,0 @@ -#include -#include -#include"analyseur_xml.h" - -int main(int argc, char *argv[]) - { - noeud *racine1; - noeud *racine2; - int resultat; - int verbose; - - if((argc != 3) && (argc != 4)){ - fprintf(stderr, "usage: %s fichier_xml fichier_xml [v]\n", argv[0]); - exit(1); - - } - verbose = (argc == 4); - - yyin = fopen(argv[1], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[1]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[1]); - racine1 = analyseur_xml(); - - - fclose(yyin); - - yyin = fopen(argv[2], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[2]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[2]); - racine2 = analyseur_xml(); - - fclose(yyin); - - - - /* affiche_arbre(racine1); - printf("\n"); - affiche_arbre(racine2);*/ - - fprintf(stderr, "comparaison des arbres\n"); - resultat = compare_arbres(racine1, racine2, verbose); - libere_arbre(racine1); - libere_arbre(racine2); - - - if(resultat){ - printf("arbres egaux\n"); - return 0; - } - else{ - printf("arbres différents\n"); - return 1; - } - - } diff --git a/eval-partiel/fiche_eval_partiel_2016.pdf b/eval-partiel/fiche_eval_partiel_2016.pdf deleted file mode 100644 index ee00776..0000000 Binary files a/eval-partiel/fiche_eval_partiel_2016.pdf and /dev/null differ diff --git a/eval-partiel/input/affect-err.l b/eval-partiel/input/affect-err.l deleted file mode 100644 index f142572..0000000 --- a/eval-partiel/input/affect-err.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -$a = 5; -ecrire( $a ); -} -$extra = 0; diff --git a/eval-partiel/input/affect.l b/eval-partiel/input/affect.l deleted file mode 100644 index 576dc8d..0000000 --- a/eval-partiel/input/affect.l +++ /dev/null @@ -1,6 +0,0 @@ -entier $a; -main() -{ -$a = 1; -ecrire($a); -} diff --git a/eval-partiel/input/boucle.l b/eval-partiel/input/boucle.l deleted file mode 100644 index 4821457..0000000 --- a/eval-partiel/input/boucle.l +++ /dev/null @@ -1,11 +0,0 @@ -entier $i, entier $carre; -main() -{ - $i = 0; - tantque $i < 10 faire - { - $carre = $i * $i; - ecrire( $carre ); - $i = $i + 1; - } -} diff --git a/eval-partiel/input/eval1.l b/eval-partiel/input/eval1.l deleted file mode 100644 index 2bcd814..0000000 --- a/eval-partiel/input/eval1.l +++ /dev/null @@ -1,25 +0,0 @@ -add (entier $a, entier $b) -{ - retour $a + $b; -} - -mult (entier $a, entier $b) -{ - retour $a * $b; -} - -main() -entier $a, entier $b, entier $op; -{ - $a = lire(); - $b = lire(); - $op = lire(); - si $op = 1 alors { - ecrire(add($a, $b)); - } - sinon { - si $op = 2 alors { - ecrire(mult($a, $b)); - } - } -} diff --git a/eval-partiel/input/eval1err.l b/eval-partiel/input/eval1err.l deleted file mode 100644 index b1d4456..0000000 --- a/eval-partiel/input/eval1err.l +++ /dev/null @@ -1 +0,0 @@ -33a diff --git a/eval-partiel/input/eval2.l b/eval-partiel/input/eval2.l deleted file mode 100644 index 6008853..0000000 --- a/eval-partiel/input/eval2.l +++ /dev/null @@ -1,14 +0,0 @@ -fibo( entier $n ) -{ - si $n < 2 alors { - retour 1; - } - sinon { - retour fibo( $n - 1 ) + fibo( $n - 2 ); - } -} - -main() -{ - ecrire( fibo( lire() ) ); -} diff --git a/eval-partiel/input/eval2err.l b/eval-partiel/input/eval2err.l deleted file mode 100644 index f142572..0000000 --- a/eval-partiel/input/eval2err.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -$a = 5; -ecrire( $a ); -} -$extra = 0; diff --git a/eval-partiel/input/eval3.l b/eval-partiel/input/eval3.l deleted file mode 100644 index 816745e..0000000 --- a/eval-partiel/input/eval3.l +++ /dev/null @@ -1,12 +0,0 @@ -entier $i, entier $j, entier $k, entier $somme; -main() { - $somme = 0; - pour $i = 0; $i < 10; $i = $i + 1; faire { - pour $j = 0; $j < $i; $j = $j + 1; faire { - pour $k = 0; $k < $j; $k = $k + 1; faire { - $somme = $somme + $i + $j + $k; - } - } - } - ecrire ( $somme ); -} diff --git a/eval-partiel/input/eval3err.l b/eval-partiel/input/eval3err.l deleted file mode 100644 index 645279c..0000000 --- a/eval-partiel/input/eval3err.l +++ /dev/null @@ -1,12 +0,0 @@ -entier $i; -main() -{ - entier $carre; - $i = 0; - tantque $i < 10 faire - { - $carre = $i * $i; - ecrire( $carre ); - $i = $i + 1; - } -} diff --git a/eval-partiel/input/eval4.l b/eval-partiel/input/eval4.l deleted file mode 100644 index 7b37cf3..0000000 --- a/eval-partiel/input/eval4.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -si 1 alors -{ecrire(1); -} -} diff --git a/eval-partiel/input/eval4err.l b/eval-partiel/input/eval4err.l deleted file mode 100644 index 155d4ab..0000000 --- a/eval-partiel/input/eval4err.l +++ /dev/null @@ -1 +0,0 @@ -entier entier entier diff --git a/eval-partiel/input/eval5.l b/eval-partiel/input/eval5.l deleted file mode 100644 index beeda13..0000000 --- a/eval-partiel/input/eval5.l +++ /dev/null @@ -1,9 +0,0 @@ -entier $a; -main() -{ -si 0 alors -{ecrire(1); -} -sinon -{ecrire(0);} -} diff --git a/eval-partiel/input/eval5err.l b/eval-partiel/input/eval5err.l deleted file mode 100644 index 964acba..0000000 --- a/eval-partiel/input/eval5err.l +++ /dev/null @@ -1 +0,0 @@ -entier ? diff --git a/eval-partiel/input/eval6.l b/eval-partiel/input/eval6.l deleted file mode 100644 index 01c44dc..0000000 --- a/eval-partiel/input/eval6.l +++ /dev/null @@ -1,11 +0,0 @@ -entier $a[10], entier $b; -main() { - $a[0] = 10; - $b = 5; - ecrire( $a ); # erreur de type ou ecrit 10? - ecrire( $a + 1 ); # erreur de type ou ecrit 11? - ecrire( $b[0] ); # erreur de type ou ecrit 5? - ecrire( $a[10] ); # erreur de type ou ecrit 5? - retour 0; - ecrire( $b ); # ecrit 5 ou pas? -} diff --git a/eval-partiel/input/eval7.l b/eval-partiel/input/eval7.l deleted file mode 100644 index e69de29..0000000 diff --git a/eval-partiel/input/eval8.l b/eval-partiel/input/eval8.l deleted file mode 100644 index 4f35eff..0000000 --- a/eval-partiel/input/eval8.l +++ /dev/null @@ -1,9 +0,0 @@ -entier $a; -main() -{ -$a = 0; -tantque $a < 10 faire{ -ecrire($a); -$a = $a + 1; -} -} diff --git a/eval-partiel/input/expression.l b/eval-partiel/input/expression.l deleted file mode 100644 index a33fb9e..0000000 --- a/eval-partiel/input/expression.l +++ /dev/null @@ -1,5 +0,0 @@ -entier $a; -main() -{ -ecrire(5 * 2); -} diff --git a/eval-partiel/input/max.l b/eval-partiel/input/max.l deleted file mode 100644 index ef3e9c8..0000000 --- a/eval-partiel/input/max.l +++ /dev/null @@ -1,23 +0,0 @@ -max( entier $a, entier $b ) -{ - si $a < $b alors { - retour $b; - } - retour $a; -} - -main() -entier $v_1, entier $v_2; -{ - $v_1 = lire(); - $v_2 = lire(); - si max( $v_1, $v_2 ) = $v_1 alors - { - ecrire( $v_1 ); - } - sinon - { - ecrire( $v_2 ); - } - -} diff --git a/eval-partiel/input/test1.l b/eval-partiel/input/test1.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-partiel/input/test1.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-partiel/input/test1err.l b/eval-partiel/input/test1err.l deleted file mode 100644 index e436203..0000000 --- a/eval-partiel/input/test1err.l +++ /dev/null @@ -1,6 +0,0 @@ -entier $i; -main() { - pour $i = 5; $i < 10; $i faire { - ecrire ( $i ); - } -} diff --git a/eval-partiel/input/test2.l b/eval-partiel/input/test2.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-partiel/input/test2.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-partiel/input/test3.l b/eval-partiel/input/test3.l deleted file mode 100644 index 058f2b5..0000000 --- a/eval-partiel/input/test3.l +++ /dev/null @@ -1,8 +0,0 @@ -entier $a; -main() -{ -pour $a=1; $a<10; $a = $a + 1; faire -{ -ecrire( $a ); -} -} diff --git a/eval-partiel/input/tri.l b/eval-partiel/input/tri.l deleted file mode 100644 index a39cba6..0000000 --- a/eval-partiel/input/tri.l +++ /dev/null @@ -1,57 +0,0 @@ -entier $tab[ 10 ]; - -initialiser() -{ - $tab[0] = 8; $tab[1] = 6; $tab[2] = 9; - $tab[3] = 9; $tab[4] = 4; $tab[5] = 2; - $tab[6] = 3; $tab[7] = 1; $tab[8] = 4; - $tab[9] = 5; -} - -afficher( entier $n ) -entier $i; -{ - $i = 0; - tantque $i < $n faire { - ecrire( $tab[ $i ] ); - $i = $i + 1; - } - ecrire( 0 ); # marqueur fin de tableau -} - -echanger( entier $i, entier $j ) -entier $temp; -{ - $temp = $tab[ $j ]; - $tab[ $j ] = $tab[ $i ]; - $tab[ $i ] = $temp; -} - -trier( entier $n ) -entier $echange, entier $j, entier $m; -{ - $m = $n; - $echange = 1; - tantque $echange = 1 faire - { - $echange = 0; - $j = 0; - tantque $j < $m - 1 faire - { - si $tab[ $j + 1 ] < $tab[ $j ] alors { - echanger( $j, $j + 1 ); - $echange = 1; - } - $j = $j + 1; - } - $m = $m - 1; - } -} - -main() -{ - initialiser(); - afficher( 10 ); - trier( 10 ); - afficher( 10 ); -} diff --git a/eval-partiel/main.css b/eval-partiel/main.css deleted file mode 100755 index fed6e77..0000000 --- a/eval-partiel/main.css +++ /dev/null @@ -1,196 +0,0 @@ -body{ - font-family: "Trebuchet MS", arial, helvetica, sans-serif; - margin: 0; -} - -#header{ - color: #ffffff; - background-color: #c01010; - width: 100%; - height: 70px; -} - -#header h1{ - margin: 0; - font-size: 140%; - padding: 20px 0 0 20px; -} - -#header ul{ - margin: 0; - padding: 0; -} - -#lang_bar{ - list-style-type: none; -} - -#lang_bar li{ - float: right; -} - -#lang_bar a{ - color: #dddddd; - padding: 0 7px; - font-weight: bold; - font-size: 80%; -} - -#lang_bar a:hover{ - color: #dddddd; - background-color: #c01010; -} - -#main_menu{ - margin: 0; - padding: 0; - list-style-type: none; - clear: right; - width: 100%; - background-color: #330000; - height: 32px; -} - -#main_menu li{ - float: left; -} - -#main_menu a{ - float: left; - background-color: #dddddd; - padding: 5px 10px; - font-size: 90%; - font-style: italic; - font-weight: bold; - text-align: center; - color: #990000; - margin: 2px 1px; -} - -#main_menu a:hover{ - background-color: #c01010; - color: #ff0000; -} - -#main_menu a.active{ - background-color: #c01010; - color: #ffffff; -} - - -#links li{ - list-style-type: none; - color: #990000; - padding: 0; -} - -#links ul{ - margin: 0; - padding: 0; -} - -#links img{ - height: 40px; - border: 0; -} - -#links{ - border: solid 2px #FFA273; - margin: 5px; - text-align: center; - float: right; -} - -#links h1{ - font-size: 100%; - color: #a63800; - margin: 5px; -} - -a{ - text-decoration: none; - color: #c01010; -} - -#page_body a:hover{ - text-decoration: none; - color: #ff0000; -} - -#page_body p{ - color: #000000; -} - -#page_body{ - font-size: 90%; - margin: 10px 20px 0 40px; - -} - -#page_body h1{ - font-size: 130%; - margin: 15px 0 5px -30px; - color: #c01010; -} - -#page_body h2{ - font-size: 110%; - margin: 8px 0 5px -15px; - color: #c01010; -} - -#page_body li{ - margin: 5px 0 0 20px; -} - -#page_body ul{ - margin: 0; - padding: 5px 0 0 40px; -} - -#page_body li p{ - margin: 0; -} - -#page_body img.left{ - float: left; - margin: 5px 20px 5px 0; -} - -#page_body img.right{ - float: right; - margin: 5px 0 5px 20px; -} - -.codefrag{ - font-family: "courier", "sans"; - font-weight: bold; - margin: 0; - text-indent: 20pt; -} - -.indent1{ - text-indent: 40pt; -} - -.indent2{ - text-indent: 60pt; -} - -.indent3{ - text-indent: 80pt; -} - -.indent4{ - text-indent: 100pt; -} - -.indent5{ - text-indent: 180pt; -} - -.nobullet{ - list-style-type: none; -} - - diff --git a/eval-partiel/output/affect-err.synt.xml b/eval-partiel/output/affect-err.synt.xml deleted file mode 100644 index 011887f..0000000 --- a/eval-partiel/output/affect-err.synt.xml +++ /dev/null @@ -1,110 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - diff --git a/eval-partiel/output/affect.lex b/eval-partiel/output/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/eval-partiel/output/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/affect.synt b/eval-partiel/output/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/eval-partiel/output/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/boucle.lex b/eval-partiel/output/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/eval-partiel/output/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/boucle.synt b/eval-partiel/output/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/eval-partiel/output/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/eval1.lex b/eval-partiel/output/eval1.lex deleted file mode 100644 index fbfdd45..0000000 --- a/eval-partiel/output/eval1.lex +++ /dev/null @@ -1,100 +0,0 @@ -add id_fonction add -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$a id_variable $a -+ symbole PLUS -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -mult id_fonction mult -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$a id_variable $a -* symbole FOIS -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -, symbole VIRGULE -entier mot_clef entier -$op id_variable $op -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$b id_variable $b -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$op id_variable $op -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -$op id_variable $op -= symbole EGAL -1 nombre 1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -add id_fonction add -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -, symbole VIRGULE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$op id_variable $op -= symbole EGAL -2 nombre 2 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -mult id_fonction mult -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -, symbole VIRGULE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval1.synt b/eval-partiel/output/eval1.synt deleted file mode 100644 index d0afcbb..0000000 --- a/eval-partiel/output/eval1.synt +++ /dev/null @@ -1,681 +0,0 @@ - - - - - - add - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $a - - - - - - - - - PLUS - - - - $b - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - mult - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $a - - - - - - FOIS - - - $b - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - VIRGULE - - entier - $op - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $b - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $op - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - $op - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - add - PARENTHESE_OUVRANTE - - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $op - - - - - - - - - - - - EGAL - - - - 2 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - mult - PARENTHESE_OUVRANTE - - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - diff --git a/eval-partiel/output/eval1err.synt.xml b/eval-partiel/output/eval1err.synt.xml deleted file mode 100644 index 5553b61..0000000 --- a/eval-partiel/output/eval1err.synt.xml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/eval-partiel/output/eval2.lex b/eval-partiel/output/eval2.lex deleted file mode 100644 index 40e933b..0000000 --- a/eval-partiel/output/eval2.lex +++ /dev/null @@ -1,51 +0,0 @@ -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$n id_variable $n -< symbole INFERIEUR -2 nombre 2 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -$n id_variable $n -- symbole MOINS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -+ symbole PLUS -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -$n id_variable $n -- symbole MOINS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval2.synt b/eval-partiel/output/eval2.synt deleted file mode 100644 index 1ca6407..0000000 --- a/eval-partiel/output/eval2.synt +++ /dev/null @@ -1,360 +0,0 @@ - - - - - - fibo - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $n - - - - - - - - - - - - INFERIEUR - - - - 2 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - - $n - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - PLUS - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - - $n - - - - - - - - - MOINS - - - 2 - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-partiel/output/eval2err.synt.xml b/eval-partiel/output/eval2err.synt.xml deleted file mode 100644 index 011887f..0000000 --- a/eval-partiel/output/eval2err.synt.xml +++ /dev/null @@ -1,110 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - diff --git a/eval-partiel/output/eval3.lex b/eval-partiel/output/eval3.lex deleted file mode 100644 index 53881f7..0000000 --- a/eval-partiel/output/eval3.lex +++ /dev/null @@ -1,91 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$k id_variable $k -, symbole VIRGULE -entier mot_clef entier -$somme id_variable $somme -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$somme id_variable $somme -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -pour mot_clef pour -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -< symbole INFERIEUR -$i id_variable $i -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$k id_variable $k -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$k id_variable $k -< symbole INFERIEUR -$j id_variable $j -; symbole POINT_VIRGULE -$k id_variable $k -= symbole EGAL -$k id_variable $k -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$somme id_variable $somme -= symbole EGAL -$somme id_variable $somme -+ symbole PLUS -$i id_variable $i -+ symbole PLUS -$j id_variable $j -+ symbole PLUS -$k id_variable $k -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$somme id_variable $somme -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval3.synt b/eval-partiel/output/eval3.synt deleted file mode 100644 index 295b490..0000000 --- a/eval-partiel/output/eval3.synt +++ /dev/null @@ -1,652 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $k - - - - - VIRGULE - - entier - $somme - - - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $somme - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - pour - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - pour - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - pour - - - $k - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $k - - - - - - - - - - - - INFERIEUR - - - - - $j - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $k - - - - EGAL - - - - - - - - - $k - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - - $somme - - - - EGAL - - - - - - - - - $somme - - - - - - - - - PLUS - - - - $i - - - - - - - - - PLUS - - - - $j - - - - - - - - - PLUS - - - - $k - - - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $somme - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/eval3err.synt.xml b/eval-partiel/output/eval3err.synt.xml deleted file mode 100644 index cbfea55..0000000 --- a/eval-partiel/output/eval3err.synt.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - diff --git a/eval-partiel/output/eval4.lex b/eval-partiel/output/eval4.lex deleted file mode 100644 index a51d4f1..0000000 --- a/eval-partiel/output/eval4.lex +++ /dev/null @@ -1,19 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -1 nombre 1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval4.synt b/eval-partiel/output/eval4.synt deleted file mode 100644 index c855a07..0000000 --- a/eval-partiel/output/eval4.synt +++ /dev/null @@ -1,112 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - 1 - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 1 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/eval4err.synt.xml b/eval-partiel/output/eval4err.synt.xml deleted file mode 100644 index fa79479..0000000 --- a/eval-partiel/output/eval4err.synt.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - entier diff --git a/eval-partiel/output/eval5.lex b/eval-partiel/output/eval5.lex deleted file mode 100644 index a40b0de..0000000 --- a/eval-partiel/output/eval5.lex +++ /dev/null @@ -1,27 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -0 nombre 0 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval5.synt b/eval-partiel/output/eval5.synt deleted file mode 100644 index f049cf1..0000000 --- a/eval-partiel/output/eval5.synt +++ /dev/null @@ -1,154 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - 0 - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 1 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/eval5err.synt.xml b/eval-partiel/output/eval5err.synt.xml deleted file mode 100644 index fa79479..0000000 --- a/eval-partiel/output/eval5err.synt.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - entier diff --git a/eval-partiel/output/eval6.lex b/eval-partiel/output/eval6.lex deleted file mode 100644 index df16673..0000000 --- a/eval-partiel/output/eval6.lex +++ /dev/null @@ -1,62 +0,0 @@ -entier mot_clef entier -$a id_variable $a -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -10 nombre 10 -; symbole POINT_VIRGULE -$b id_variable $b -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$b id_variable $b -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -retour mot_clef retour -0 nombre 0 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval6.synt b/eval-partiel/output/eval6.synt deleted file mode 100644 index 0eeef81..0000000 --- a/eval-partiel/output/eval6.synt +++ /dev/null @@ -1,443 +0,0 @@ - - - - - entier - $a - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - VIRGULE - - entier - $b - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 10 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $b - - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $b - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - CROCHET_OUVRANT - - - - - - - - 10 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - retour - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/eval7.lex b/eval-partiel/output/eval7.lex deleted file mode 100644 index 2fb15f9..0000000 --- a/eval-partiel/output/eval7.lex +++ /dev/null @@ -1 +0,0 @@ - symbole FIN diff --git a/eval-partiel/output/eval7.synt b/eval-partiel/output/eval7.synt deleted file mode 100644 index 56784dd..0000000 --- a/eval-partiel/output/eval7.synt +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/eval-partiel/output/eval8.lex b/eval-partiel/output/eval8.lex deleted file mode 100644 index fb449a8..0000000 --- a/eval-partiel/output/eval8.lex +++ /dev/null @@ -1,31 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$a id_variable $a -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$a id_variable $a -= symbole EGAL -$a id_variable $a -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/eval8.synt b/eval-partiel/output/eval8.synt deleted file mode 100644 index 812c711..0000000 --- a/eval-partiel/output/eval8.synt +++ /dev/null @@ -1,222 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $a - - - - EGAL - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/expression.lex b/eval-partiel/output/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/eval-partiel/output/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/expression.synt b/eval-partiel/output/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/eval-partiel/output/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/output/max.lex b/eval-partiel/output/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/eval-partiel/output/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/max.synt b/eval-partiel/output/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/eval-partiel/output/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-partiel/output/tri.lex b/eval-partiel/output/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/eval-partiel/output/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/output/tri.synt b/eval-partiel/output/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/eval-partiel/output/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/eval-partiel/ref-lex/affect.lex b/eval-partiel/ref-lex/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/eval-partiel/ref-lex/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/boucle.lex b/eval-partiel/ref-lex/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/eval-partiel/ref-lex/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval1.lex b/eval-partiel/ref-lex/eval1.lex deleted file mode 100644 index fbfdd45..0000000 --- a/eval-partiel/ref-lex/eval1.lex +++ /dev/null @@ -1,100 +0,0 @@ -add id_fonction add -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$a id_variable $a -+ symbole PLUS -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -mult id_fonction mult -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$a id_variable $a -* symbole FOIS -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -, symbole VIRGULE -entier mot_clef entier -$op id_variable $op -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$b id_variable $b -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$op id_variable $op -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -$op id_variable $op -= symbole EGAL -1 nombre 1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -add id_fonction add -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -, symbole VIRGULE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$op id_variable $op -= symbole EGAL -2 nombre 2 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -mult id_fonction mult -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -, symbole VIRGULE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval2.lex b/eval-partiel/ref-lex/eval2.lex deleted file mode 100644 index 40e933b..0000000 --- a/eval-partiel/ref-lex/eval2.lex +++ /dev/null @@ -1,51 +0,0 @@ -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$n id_variable $n -< symbole INFERIEUR -2 nombre 2 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -$n id_variable $n -- symbole MOINS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -+ symbole PLUS -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -$n id_variable $n -- symbole MOINS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -fibo id_fonction fibo -( symbole PARENTHESE_OUVRANTE -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval3.lex b/eval-partiel/ref-lex/eval3.lex deleted file mode 100644 index 53881f7..0000000 --- a/eval-partiel/ref-lex/eval3.lex +++ /dev/null @@ -1,91 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$k id_variable $k -, symbole VIRGULE -entier mot_clef entier -$somme id_variable $somme -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$somme id_variable $somme -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -pour mot_clef pour -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -< symbole INFERIEUR -$i id_variable $i -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$k id_variable $k -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$k id_variable $k -< symbole INFERIEUR -$j id_variable $j -; symbole POINT_VIRGULE -$k id_variable $k -= symbole EGAL -$k id_variable $k -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$somme id_variable $somme -= symbole EGAL -$somme id_variable $somme -+ symbole PLUS -$i id_variable $i -+ symbole PLUS -$j id_variable $j -+ symbole PLUS -$k id_variable $k -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$somme id_variable $somme -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval4.lex b/eval-partiel/ref-lex/eval4.lex deleted file mode 100644 index a51d4f1..0000000 --- a/eval-partiel/ref-lex/eval4.lex +++ /dev/null @@ -1,19 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -1 nombre 1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval5.lex b/eval-partiel/ref-lex/eval5.lex deleted file mode 100644 index a40b0de..0000000 --- a/eval-partiel/ref-lex/eval5.lex +++ /dev/null @@ -1,27 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -0 nombre 0 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval6.lex b/eval-partiel/ref-lex/eval6.lex deleted file mode 100644 index df16673..0000000 --- a/eval-partiel/ref-lex/eval6.lex +++ /dev/null @@ -1,62 +0,0 @@ -entier mot_clef entier -$a id_variable $a -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -10 nombre 10 -; symbole POINT_VIRGULE -$b id_variable $b -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$b id_variable $b -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -retour mot_clef retour -0 nombre 0 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$b id_variable $b -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/eval7.lex b/eval-partiel/ref-lex/eval7.lex deleted file mode 100644 index 2fb15f9..0000000 --- a/eval-partiel/ref-lex/eval7.lex +++ /dev/null @@ -1 +0,0 @@ - symbole FIN diff --git a/eval-partiel/ref-lex/eval8.lex b/eval-partiel/ref-lex/eval8.lex deleted file mode 100644 index fb449a8..0000000 --- a/eval-partiel/ref-lex/eval8.lex +++ /dev/null @@ -1,31 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$a id_variable $a -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$a id_variable $a -= symbole EGAL -$a id_variable $a -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/expression.lex b/eval-partiel/ref-lex/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/eval-partiel/ref-lex/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/max.lex b/eval-partiel/ref-lex/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/eval-partiel/ref-lex/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/test1.lex b/eval-partiel/ref-lex/test1.lex deleted file mode 100644 index 466ec61..0000000 --- a/eval-partiel/ref-lex/test1.lex +++ /dev/null @@ -1,32 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$a id_variable $a -< symbole INFERIEUR -10 nombre 10 -; symbole POINT_VIRGULE -$a id_variable $a -= symbole EGAL -$a id_variable $a -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/test2.lex b/eval-partiel/ref-lex/test2.lex deleted file mode 100644 index 466ec61..0000000 --- a/eval-partiel/ref-lex/test2.lex +++ /dev/null @@ -1,32 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$a id_variable $a -< symbole INFERIEUR -10 nombre 10 -; symbole POINT_VIRGULE -$a id_variable $a -= symbole EGAL -$a id_variable $a -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/test3.lex b/eval-partiel/ref-lex/test3.lex deleted file mode 100644 index 466ec61..0000000 --- a/eval-partiel/ref-lex/test3.lex +++ /dev/null @@ -1,32 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -pour mot_clef pour -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$a id_variable $a -< symbole INFERIEUR -10 nombre 10 -; symbole POINT_VIRGULE -$a id_variable $a -= symbole EGAL -$a id_variable $a -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-lex/tri.lex b/eval-partiel/ref-lex/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/eval-partiel/ref-lex/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/eval-partiel/ref-synt/affect.synt b/eval-partiel/ref-synt/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/eval-partiel/ref-synt/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/boucle.synt b/eval-partiel/ref-synt/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/eval-partiel/ref-synt/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/eval1.synt b/eval-partiel/ref-synt/eval1.synt deleted file mode 100644 index d0afcbb..0000000 --- a/eval-partiel/ref-synt/eval1.synt +++ /dev/null @@ -1,681 +0,0 @@ - - - - - - add - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $a - - - - - - - - - PLUS - - - - $b - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - mult - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $a - - - - - - FOIS - - - $b - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - VIRGULE - - entier - $op - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $b - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $op - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - $op - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - add - PARENTHESE_OUVRANTE - - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $op - - - - - - - - - - - - EGAL - - - - 2 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - mult - PARENTHESE_OUVRANTE - - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - diff --git a/eval-partiel/ref-synt/eval2.synt b/eval-partiel/ref-synt/eval2.synt deleted file mode 100644 index 1ca6407..0000000 --- a/eval-partiel/ref-synt/eval2.synt +++ /dev/null @@ -1,360 +0,0 @@ - - - - - - fibo - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $n - - - - - - - - - - - - INFERIEUR - - - - 2 - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - - $n - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - PLUS - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - - $n - - - - - - - - - MOINS - - - 2 - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - fibo - PARENTHESE_OUVRANTE - - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-partiel/ref-synt/eval3.synt b/eval-partiel/ref-synt/eval3.synt deleted file mode 100644 index 295b490..0000000 --- a/eval-partiel/ref-synt/eval3.synt +++ /dev/null @@ -1,652 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $k - - - - - VIRGULE - - entier - $somme - - - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $somme - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - pour - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - pour - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - pour - - - $k - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $k - - - - - - - - - - - - INFERIEUR - - - - - $j - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $k - - - - EGAL - - - - - - - - - $k - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - - $somme - - - - EGAL - - - - - - - - - $somme - - - - - - - - - PLUS - - - - $i - - - - - - - - - PLUS - - - - $j - - - - - - - - - PLUS - - - - $k - - - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $somme - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/eval4.synt b/eval-partiel/ref-synt/eval4.synt deleted file mode 100644 index c855a07..0000000 --- a/eval-partiel/ref-synt/eval4.synt +++ /dev/null @@ -1,112 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - 1 - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 1 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/eval5.synt b/eval-partiel/ref-synt/eval5.synt deleted file mode 100644 index f049cf1..0000000 --- a/eval-partiel/ref-synt/eval5.synt +++ /dev/null @@ -1,154 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - 0 - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 1 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/eval6.synt b/eval-partiel/ref-synt/eval6.synt deleted file mode 100644 index 0eeef81..0000000 --- a/eval-partiel/ref-synt/eval6.synt +++ /dev/null @@ -1,443 +0,0 @@ - - - - - entier - $a - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - VIRGULE - - entier - $b - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 10 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $b - - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $b - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - CROCHET_OUVRANT - - - - - - - - 10 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - retour - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/eval7.synt b/eval-partiel/ref-synt/eval7.synt deleted file mode 100644 index 56784dd..0000000 --- a/eval-partiel/ref-synt/eval7.synt +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/eval-partiel/ref-synt/eval8.synt b/eval-partiel/ref-synt/eval8.synt deleted file mode 100644 index 812c711..0000000 --- a/eval-partiel/ref-synt/eval8.synt +++ /dev/null @@ -1,222 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $a - - - - EGAL - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/expression.synt b/eval-partiel/ref-synt/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/eval-partiel/ref-synt/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/max.synt b/eval-partiel/ref-synt/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/eval-partiel/ref-synt/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/eval-partiel/ref-synt/test1.synt b/eval-partiel/ref-synt/test1.synt deleted file mode 100644 index 52042e9..0000000 --- a/eval-partiel/ref-synt/test1.synt +++ /dev/null @@ -1,215 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - pour - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $a - - - - EGAL - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/test2.synt b/eval-partiel/ref-synt/test2.synt deleted file mode 100644 index 52042e9..0000000 --- a/eval-partiel/ref-synt/test2.synt +++ /dev/null @@ -1,215 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - pour - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $a - - - - EGAL - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/test3.synt b/eval-partiel/ref-synt/test3.synt deleted file mode 100644 index 52042e9..0000000 --- a/eval-partiel/ref-synt/test3.synt +++ /dev/null @@ -1,215 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - pour - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - $a - - - - EGAL - - - - - - - - - $a - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/eval-partiel/ref-synt/tri.synt b/eval-partiel/ref-synt/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/eval-partiel/ref-synt/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/eval-partiel/runEval.sh b/eval-partiel/runEval.sh deleted file mode 100755 index ddd17c9..0000000 --- a/eval-partiel/runEval.sh +++ /dev/null @@ -1,157 +0,0 @@ -#!/bin/bash - -################################################################################ -# Script d'évaluation automatique des compilateurs du projet. -# Compile le programme source et compare avec la référence. -# Comprend analyse lexicale, syntaxique, arbre abstrait, table des symboles et -# code MIPS. -################################################################################ - -# MODIFIEZ LES VARIABLES CI-DESSOUS AVEC LE CHEMIN/OPTIONS DE VOTRE COMPILATEUR - -MYCOMPILO="../compilateur-l" -MYCOMPILOLEX="${MYCOMPILO} -l" -MYCOMPILOSYNT="${MYCOMPILO} -s" -#MYCOMPILOASYNT="${MYCOMPILO} -a" -#MYCOMPILOTAB="${MYCOMPILO} -t" -#MYCOMPILOMIPS="${MYCOMPILO} -m" - -################################################################################ - -XMLDIFF="./compare_arbres_xml" -REGDIFF="diff -q -w" -EXITONFAIL=1 -declare -A testname -testname["lex"]="Analyse lexicale" -testname["synt"]="Analyse syntaxique" -#testname["asynt"]="Arbre abstrait" -#testname["tab"]="Table des symboles" -#testname["mips"]="Code machine MIPS" - -################################################################################ - -function diff_prog() { - diffprog=$1 - input=$2 - suffix=$3 - echo -e "\033[35m > ${testname[${suffix}]} (.${suffix})\033[0m" - if [ -f ref-${suffix}/$input.${suffix} ]; then - ${diffprog} output/${input}.${suffix} ref-${suffix}/${input}.${suffix} 2> /dev/null - if [ $? != 0 ]; then - echo -e "\033[31mTEST ${testname[${suffix}]} ÉCHOUÉ\033[0m" - echo -e "Pour connaître les différences, exécutez :" - echo -e " diff output/${input}.${suffix} ref-${suffix}/${input}.${suffix}" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST ${testname[${suffix}]} OK\033[0m" - fi - else - echo -e "\033[34mRéférence ref-${suffix}/${input}.${suffix} absente\033[0m" - fi -} - -################################################################################ - -function test_fichier_ok() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - if [ -f input/$input.l ]; then - echo -e "\033[35m > Reconnaissance (accepte l'entrée)\033[0m" - ${MYCOMPILOSYNT} input/$input.l > output/$input.synt - if [ $? != 0 ]; then - echo -e "\033[31mTEST Reconnaissance ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l n'a pas été compilé correctement" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST Reconnaissance OK\033[0m" - fi - ${MYCOMPILOLEX} input/$input.l > output/$input.lex - diff_prog "${REGDIFF}" $input lex - diff_prog ${XMLDIFF} $input synt - #${MYCOMPILOASYNT} input/$input.l > output/$input.asynt - #diff_prog ${XMLDIFF} $input asynt - #${MYCOMPILOTAB} input/$input.l > output/$input.tab - #diff_prog "${REGDIFF}" $input tab - #${MYCOMPILOMIPS} input/$input.l > output/$input.mips - #diff_prog "${REGDIFF}" $input mips - else - echo -e "\033[31minput/$input.l non trouvé\033[0m" - echo -e "\033[31mTest impossible\033[0m" - fi -} - -################################################################################ - -function test_fichier_fail() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - ${MYCOMPILOSYNT} input/$input.l > output/$input.synt.xml - if [ $? = 0 ]; then - echo -e "\033[31mTEST REJET ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l a été accepté alors qu'il aurait dû être rejeté" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST REJET OK\033[0m" - fi -} - -################################################################################ - -mkdir -p output -make - -echo -e "Votre compilateur : ${MYCOMPILO}" -if [ ! -f ${MYCOMPILO} ]; then - echo -e "\033[31mCompilateur introuvable" - echo -e "Modifiez la variable MYCOMPILO avant de lancer l'éval\033[0m" - exit 1 -fi - -################################################################################ - -echo -e "\033[1m\n>> 1) Tests connus OK\033[0m" - -test_fichier_ok affect -test_fichier_ok boucle -test_fichier_ok expression -test_fichier_ok max -test_fichier_ok tri - -################################################################################ - -echo -e "\033[1m\n>> 1) Tests connus FAIL\033[0m" - -test_fichier_fail affect-err - -################################################################################ - -echo -e "\033[1m\n>> 1) Tests nouveaux OK\033[0m" - -test_fichier_ok eval1 -test_fichier_ok eval2 -test_fichier_ok eval3 -test_fichier_ok eval4 -test_fichier_ok eval5 -test_fichier_ok eval6 -test_fichier_ok eval7 -test_fichier_ok eval8 - -# Decommenter -# test_fichier_ok test1 -# test_fichier_ok test2 -# test_fichier_ok test3 - -################################################################################ - -echo -e "\033[1m\n>> 1) Tests nouveaux FAIL\033[0m" - -test_fichier_fail eval1err -test_fichier_fail eval2err -test_fichier_fail eval3err -test_fichier_fail eval4err -test_fichier_fail eval5err - -# Decommenter -# test_fichier_fail test1err - -################################################################################ diff --git a/test/Makefile b/test/Makefile deleted file mode 100644 index 9022348..0000000 --- a/test/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -CC = gcc - -LIBS = -lm -CCFLAGS = -Wall -ggdb - -all: compare_arbres_xml - -compare_arbres_xml: compare_arbres_xml.c analyseur_xml.o - $(CC) $(CCFLAGS) -o compare_arbres_xml compare_arbres_xml.c analyseur_xml.o - -analyseur_xml.o: analyseur_xml.c - $(CC) $(CCFLAGS) -c analyseur_xml.c - -.PHONY : clean - -clean: - - rm -f *.o compare_arbres_xml diff --git a/test/analyseur_xml.c b/test/analyseur_xml.c deleted file mode 100644 index 164345b..0000000 --- a/test/analyseur_xml.c +++ /dev/null @@ -1,323 +0,0 @@ -#include -#include -#include -#include"analyseur_xml.h" - -/* symboles terminaux */ - -#define CHEVRON_FERMANT 1 -#define DEBUT_BF 2 -#define DEBUT_BO 3 -#define CHAINE 4 -#define FIN 5 - -#define ISSPACE(a) (a == ' ') || (a == '\n') || (a == '\t') - -#define YYTEXT_MAX 100 - -/* fonctions pour arbre abstrait */ - -noeud *cree_noeud(char *nom) -{ - noeud *n = malloc(sizeof(noeud)); - if(n == NULL){ - fprintf(stderr, "erreur d'allocation\n"); - exit(1); - } - n->nom = nom; - n->premier_fils = NULL; - n->dernier_fils = NULL; - n->suiv = NULL; - return n; -} - -noeud *ajoute_fils(noeud *pere, noeud *fils) -{ - if(pere->premier_fils == NULL){ - pere->premier_fils = pere->dernier_fils = fils; - return pere; - } - pere->dernier_fils->suiv = fils; - pere->dernier_fils = fils; - return pere; - -} - -void affiche_arbre(noeud *racine){ - noeud *n; - printf("<%s> ", racine->nom); - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - affiche_arbre(n); - } - printf(" ", racine->nom); -} - - -int compare_arbres_rec(noeud *racine1, noeud *racine2, int verbose, int profondeur) -{ - noeud *f1, *f2; - int resultat = 1; - int i; - if(verbose){ - for(i=0; i %s\n", racine1->nom, racine2->nom); - } - if(strcmp(racine1->nom, racine2->nom)) - return 0; - - for(f1 = racine1->premier_fils, f2 = racine2->premier_fils; - f1 && f2 && resultat; - f1 = f1->suiv, f2 = f2->suiv){ - resultat = compare_arbres_rec(f1, f2, verbose, profondeur+1); - } - return ((f1 == NULL) && (f2 == NULL) && resultat); -} - -int compare_arbres(noeud *racine1, noeud *racine2, int verbose) -{ - return compare_arbres_rec(racine1, racine2, verbose, 0); -} - -void libere_arbre(noeud *racine) -{ - noeud *n; - for(n=racine->premier_fils; n!=NULL; n = n->suiv){ - libere_arbre(n); - } - free(racine); -} - -/* analyseur lexical */ - -int DEBUG = 0; -char yytext[YYTEXT_MAX]; -int yyleng; -int yylval; -/* Compter les lignes pour afficher les messages d'erreur avec numero ligne */ -int nb_ligne; -int cc; - -/******************************************************************************* - * Fonction qui ignore les espaces et commentaires. - * Renvoie -1 si arrivé à la fin du fichier, 0 si tout va bien - ******************************************************************************/ -int mangeEspaces() -{ - char c = fgetc(yyin); - while( ISSPACE(c) ) { - if( c == '\n' ) { - nb_ligne++; - } - c = fgetc(yyin); - } - if ( feof(yyin) ) { - return -1; - } - ungetc(c, yyin); - return 0; -} - -/******************************************************************************* - * Lit un caractère et le stocke dans le buffer yytext - ******************************************************************************/ -char lireCar(void) -{ - yytext[yyleng++] = fgetc(yyin); - yytext[yyleng] = '\0'; - return yytext[yyleng - 1]; -} - -/******************************************************************************* - * Remet le dernier caractère lu au buffer clavier et enlève du buffer yytext - ******************************************************************************/ -void delireCar() -{ - char c; - c = yytext[yyleng - 1]; - yytext[--yyleng] = '\0'; - ungetc(c, yyin); -} -/******************************************************************************* - * Fonction principale de l'analyseur lexical, lit les caractères de yyin et - * renvoie les tokens sous forme d'entier. Le code de chaque unité est défini - * dans symboles.h sinon (mot clé, idententifiant, etc.). Pour les tokens de - * type ID_FCT, ID_VAR et NOMBRE la valeur du token est dans yytext, visible - * dans l'analyseur syntaxique. - ******************************************************************************/ -int inTag = 0; - -int yylex(void) -{ - char c; - yytext[yyleng = 0] = '\0'; - - /* Si j'ai trouvé la fin du fichier en lisant des espaces ... */ - if( !inTag && mangeEspaces() == -1 ) { - return FIN; /* Renvoie le marqueur de fin d'entrée */ - } - - c = lireCar(); - if(c == '>'){ - if(DEBUG) { printf("CHEVRON_FERMANT\n"); } - //inTag = 0; - return CHEVRON_FERMANT; - } - if(c == '<'){ - inTag = 1; - c = lireCar(); - if(c == '/'){ - if(DEBUG) { printf("DEBUT_BF\n"); } - return DEBUT_BF; - } - else{ - delireCar(); - if(DEBUG) { printf("DEBUT_BO\n"); } - return DEBUT_BO; - } - } - do{ - c = lireCar(); - inTag = 0; - }while((c!= '<') && (c!= '>') && !feof(yyin) && !(ISSPACE(c))); - delireCar(); - if(DEBUG) { printf("CHAINE\n"); } - - return CHAINE; - } - - - /******************************************************************************* - * Fonction auxiliaire appelée par l'analyseur syntaxique tout simplement pour - * afficher des messages d'erreur et l'arbre XML - ******************************************************************************/ -void nom_token( int token, char *nom, char *valeur ) { - //int i; - - strcpy( nom, "symbole" ); - if(token == CHEVRON_FERMANT) strcpy( valeur, "CHEVRON_FERMANT"); - else if(token == DEBUT_BF) strcpy( valeur, "DEBUT_BF"); - else if(token == DEBUT_BO) strcpy( valeur, "DEBUT_BO"); - else if(token == CHAINE) strcpy( valeur, "CHAINE"); -} - -/* analyse syntaxique */ - -noeud *B(void); -void LB(noeud *pere); -char *BO(void); -char *BF(void); -void LCHAINE(void); - -void erreur(char *msg){ - fprintf(stderr, "Ligne %d : erreur : %s\n", nb_ligne, msg); - exit(1); -} - - - -/* B -> BO LCHAINE LB LCHAINE BF */ -noeud *B(void){ - char *nom_bo; - char *nom_bf; - noeud *n; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - nom_bo = BO(); - n = cree_noeud(nom_bo); - LCHAINE(); - LB(n); - LCHAINE(); - nom_bf = BF(); - if(strcmp(nom_bo, nom_bf)){ - fprintf(stderr, "Ligne %d : arbre mal forme: balise ouvrante : \"%s\" balise fermante : \"%s\"\n", nb_ligne, nom_bo, nom_bf); - exit(1); - } - free(nom_bf); - if(DEBUG) { printf("\n"); } - return n; - } - erreur("B"); - return NULL; -} - -/* LCHAINE -> CHAINE LCHAINE */ -/* | */ - -void LCHAINE(void){ - if(cc == CHAINE){ - cc = yylex(); - LCHAINE(); - return; - } - if((cc == DEBUT_BO) ||(cc == DEBUT_BF)){ - return; - } - erreur("LCHAINE"); -} - -/* LB -> B LB - | */ - -void LB(noeud *pere) -{ - noeud *fils = NULL; - if(cc == DEBUT_BO){ - fils = B(); - ajoute_fils(pere, fils); - LB(pere); - return; - } - if(cc == DEBUT_BF){ - return; - } - erreur("LB"); -} - -/* BO -> DEBUT_BO CHAINE CHEVRON_FERMANT */ -char *BO(void) -{ - char *nom = NULL; - if(DEBUG) { printf("\n"); } - if(cc == DEBUT_BO){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - if(DEBUG) { printf("\n"); } - return nom; - } - } - } - erreur("BO"); - return NULL; -} - -/* BF -> DEBUT_BF CHAINE CHEVRON_FERMANT */ -char *BF(void) -{ - char *nom = NULL; - if(cc == DEBUT_BF){ - cc = yylex(); - if(cc == CHAINE){ - nom = strdup(yytext); - cc = yylex(); - if(cc == CHEVRON_FERMANT){ - cc = yylex(); - return nom; - } - } - } - erreur("BF"); - return NULL; -} - -noeud *analyseur_xml(void) -{ - nb_ligne = 0; - cc = yylex(); - return B(); -} - - diff --git a/test/analyseur_xml.h b/test/analyseur_xml.h deleted file mode 100644 index 1ec5aa1..0000000 --- a/test/analyseur_xml.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __ANALYSEUR_XML__ -#define __ANALYSEUR_XML__ - -/* structures de donnees et fonctions pour arbre abstrait */ - -typedef struct n noeud; - -struct n{ - char *nom; - struct n *premier_fils; - struct n *dernier_fils; - struct n *suiv; -}; - -FILE *yyin; - - -void affiche_arbre(noeud *racine); -int compare_arbres(noeud *racine1, noeud *racine2, int verbose); -void libere_arbre(noeud *r); - -/* analyseur */ - -noeud *analyseur_xml(void); -#endif diff --git a/test/compare_arbres_xml b/test/compare_arbres_xml deleted file mode 100755 index d79d305..0000000 Binary files a/test/compare_arbres_xml and /dev/null differ diff --git a/test/compare_arbres_xml.c b/test/compare_arbres_xml.c deleted file mode 100644 index 1231486..0000000 --- a/test/compare_arbres_xml.c +++ /dev/null @@ -1,63 +0,0 @@ -#include -#include -#include"analyseur_xml.h" - -int main(int argc, char *argv[]) - { - noeud *racine1; - noeud *racine2; - int resultat; - int verbose; - - if((argc != 3) && (argc != 4)){ - fprintf(stderr, "usage: %s fichier_xml fichier_xml [v]\n", argv[0]); - exit(1); - - } - verbose = (argc == 4); - - yyin = fopen(argv[1], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[1]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[1]); - racine1 = analyseur_xml(); - - - fclose(yyin); - - yyin = fopen(argv[2], "r"); - if(yyin == NULL){ - fprintf(stderr, "impossible d'ouvrir le fichier %s\n", argv[2]); - exit(1); - } - - fprintf(stderr, "analyse du fichier : %s\n", argv[2]); - racine2 = analyseur_xml(); - - fclose(yyin); - - - - /* affiche_arbre(racine1); - printf("\n"); - affiche_arbre(racine2);*/ - - fprintf(stderr, "comparaison des arbres\n"); - resultat = compare_arbres(racine1, racine2, verbose); - libere_arbre(racine1); - libere_arbre(racine2); - - - if(resultat){ - printf("arbres egaux\n"); - return 0; - } - else{ - printf("arbres différents\n"); - return 1; - } - - } diff --git a/test/input/affect-err.l b/test/input/affect-err.l deleted file mode 100644 index f142572..0000000 --- a/test/input/affect-err.l +++ /dev/null @@ -1,7 +0,0 @@ -entier $a; -main() -{ -$a = 5; -ecrire( $a ); -} -$extra = 0; diff --git a/test/input/affect.l b/test/input/affect.l deleted file mode 100644 index 576dc8d..0000000 --- a/test/input/affect.l +++ /dev/null @@ -1,6 +0,0 @@ -entier $a; -main() -{ -$a = 1; -ecrire($a); -} diff --git a/test/input/boucle.l b/test/input/boucle.l deleted file mode 100644 index 4821457..0000000 --- a/test/input/boucle.l +++ /dev/null @@ -1,11 +0,0 @@ -entier $i, entier $carre; -main() -{ - $i = 0; - tantque $i < 10 faire - { - $carre = $i * $i; - ecrire( $carre ); - $i = $i + 1; - } -} diff --git a/test/input/expression.l b/test/input/expression.l deleted file mode 100644 index a33fb9e..0000000 --- a/test/input/expression.l +++ /dev/null @@ -1,5 +0,0 @@ -entier $a; -main() -{ -ecrire(5 * 2); -} diff --git a/test/input/max.l b/test/input/max.l deleted file mode 100644 index ef3e9c8..0000000 --- a/test/input/max.l +++ /dev/null @@ -1,23 +0,0 @@ -max( entier $a, entier $b ) -{ - si $a < $b alors { - retour $b; - } - retour $a; -} - -main() -entier $v_1, entier $v_2; -{ - $v_1 = lire(); - $v_2 = lire(); - si max( $v_1, $v_2 ) = $v_1 alors - { - ecrire( $v_1 ); - } - sinon - { - ecrire( $v_2 ); - } - -} diff --git a/test/input/tri.l b/test/input/tri.l deleted file mode 100644 index a39cba6..0000000 --- a/test/input/tri.l +++ /dev/null @@ -1,57 +0,0 @@ -entier $tab[ 10 ]; - -initialiser() -{ - $tab[0] = 8; $tab[1] = 6; $tab[2] = 9; - $tab[3] = 9; $tab[4] = 4; $tab[5] = 2; - $tab[6] = 3; $tab[7] = 1; $tab[8] = 4; - $tab[9] = 5; -} - -afficher( entier $n ) -entier $i; -{ - $i = 0; - tantque $i < $n faire { - ecrire( $tab[ $i ] ); - $i = $i + 1; - } - ecrire( 0 ); # marqueur fin de tableau -} - -echanger( entier $i, entier $j ) -entier $temp; -{ - $temp = $tab[ $j ]; - $tab[ $j ] = $tab[ $i ]; - $tab[ $i ] = $temp; -} - -trier( entier $n ) -entier $echange, entier $j, entier $m; -{ - $m = $n; - $echange = 1; - tantque $echange = 1 faire - { - $echange = 0; - $j = 0; - tantque $j < $m - 1 faire - { - si $tab[ $j + 1 ] < $tab[ $j ] alors { - echanger( $j, $j + 1 ); - $echange = 1; - } - $j = $j + 1; - } - $m = $m - 1; - } -} - -main() -{ - initialiser(); - afficher( 10 ); - trier( 10 ); - afficher( 10 ); -} diff --git a/test/output/affect-err.synt.xml b/test/output/affect-err.synt.xml deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/affect.asynt b/test/output/affect.asynt deleted file mode 100644 index f92de39..0000000 --- a/test/output/affect.asynt +++ /dev/null @@ -1,23 +0,0 @@ - - - $a - - - - main - - - $a - 1 - - - - - $a - - - - - - - diff --git a/test/output/affect.lex b/test/output/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/test/output/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/output/affect.mips b/test/output/affect.mips deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/affect.synt b/test/output/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/test/output/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/output/affect.tab b/test/output/affect.tab deleted file mode 100644 index 91bc69d..0000000 --- a/test/output/affect.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/output/boucle.asynt b/test/output/boucle.asynt deleted file mode 100644 index 3f2aace..0000000 --- a/test/output/boucle.asynt +++ /dev/null @@ -1,63 +0,0 @@ - - - $i - - $carre - - - - - main - - - $i - 0 - - - - - inf - - $i - - 10 - - - - $carre - - fois - - $i - - - $i - - - - - - - $carre - - - - - $i - - plus - - $i - - 1 - - - - - - - - - - - diff --git a/test/output/boucle.lex b/test/output/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/test/output/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/output/boucle.mips b/test/output/boucle.mips deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/boucle.synt b/test/output/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/test/output/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/output/boucle.tab b/test/output/boucle.tab deleted file mode 100644 index f37700e..0000000 --- a/test/output/boucle.tab +++ /dev/null @@ -1,7 +0,0 @@ ------------------------------------------- -base = 3 -sommet = 3 -0 $i GLOBALE ENTIER 0 -1 -1 $carre GLOBALE ENTIER 4 -1 -2 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/output/expression.asynt b/test/output/expression.asynt deleted file mode 100644 index 5a3244d..0000000 --- a/test/output/expression.asynt +++ /dev/null @@ -1,19 +0,0 @@ - - - $a - - - - main - - - - fois - 5 - 2 - - - - - - diff --git a/test/output/expression.lex b/test/output/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/test/output/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/output/expression.mips b/test/output/expression.mips deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/expression.synt b/test/output/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/test/output/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/output/expression.tab b/test/output/expression.tab deleted file mode 100644 index 91bc69d..0000000 --- a/test/output/expression.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/output/max.asynt b/test/output/max.asynt deleted file mode 100644 index e419965..0000000 --- a/test/output/max.asynt +++ /dev/null @@ -1,106 +0,0 @@ - - - - max - - $a - - $b - - - - - - inf - - $a - - - $b - - - - - - $b - - - - - - - - $a - - - - - - - - main - - $v_1 - - $v_2 - - - - - $v_1 - - - - - - $v_2 - - - - - - - egal - - - max - - - $v_1 - - - - $v_2 - - - - - - - - - $v_1 - - - - - - $v_1 - - - - - - - $v_2 - - - - - - - - - - - diff --git a/test/output/max.lex b/test/output/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/test/output/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/output/max.mips b/test/output/max.mips deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/max.synt b/test/output/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/test/output/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/test/output/max.tab b/test/output/max.tab deleted file mode 100644 index 3d3086c..0000000 --- a/test/output/max.tab +++ /dev/null @@ -1,15 +0,0 @@ ------------------------------------------- -base = 1 -sommet = 3 -0 max GLOBALE FONCTION 0 2 -1 $a ARGUMENT ENTIER 0 -1 -2 $b ARGUMENT ENTIER 4 -1 ------------------------------------------- ------------------------------------------- -base = 2 -sommet = 4 -0 max GLOBALE FONCTION 0 2 -1 main GLOBALE FONCTION 0 0 -2 $v_1 LOCALE ENTIER 0 -1 -3 $v_2 LOCALE ENTIER 4 -1 ------------------------------------------- diff --git a/test/output/tri.asynt b/test/output/tri.asynt deleted file mode 100644 index f1106e5..0000000 --- a/test/output/tri.asynt +++ /dev/null @@ -1,418 +0,0 @@ - - - $tab[10] - - - - initialiser - - - - $tab - 0 - - 8 - - - - - $tab - 1 - - 6 - - - - - $tab - 2 - - 9 - - - - - $tab - 3 - - 9 - - - - - $tab - 4 - - 4 - - - - - $tab - 5 - - 2 - - - - - $tab - 6 - - 3 - - - - - $tab - 7 - - 1 - - - - - $tab - 8 - - 4 - - - - - $tab - 9 - - 5 - - - - - - - - - - - - - - - afficher - - $n - - - $i - - - - $i - 0 - - - - - inf - - $i - - - $n - - - - - - - $tab - - $i - - - - - - - $i - - plus - - $i - - 1 - - - - - - - - 0 - - - - - - - - echanger - - $i - - $j - - - - $temp - - - - $temp - - - $tab - - $j - - - - - - - - $tab - - $j - - - - - $tab - - $i - - - - - - - - $tab - - $i - - - - $temp - - - - - - - - - trier - - $n - - - $echange - - $j - - $m - - - - - - $m - - $n - - - - - $echange - 1 - - - - - egal - - $echange - - 1 - - - - $echange - 0 - - - - $j - 0 - - - - - inf - - $j - - - moins - - $m - - 1 - - - - - - inf - - - $tab - - plus - - $j - - 1 - - - - - - $tab - - $j - - - - - - - - echanger - - - $j - - - - plus - - $j - - 1 - - - - - - - - - - $echange - 1 - - - - - - - $j - - plus - - $j - - 1 - - - - - - - - $m - - moins - - $m - - 1 - - - - - - - - - - - - - - main - - - - initialiser - - - - - - - - afficher - - 10 - - - - - - - - - trier - - 10 - - - - - - - - - afficher - - 10 - - - - - - - - - - - - - - - - diff --git a/test/output/tri.lex b/test/output/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/test/output/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/output/tri.mips b/test/output/tri.mips deleted file mode 100644 index e69de29..0000000 diff --git a/test/output/tri.synt b/test/output/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/test/output/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/test/output/tri.tab b/test/output/tri.tab deleted file mode 100644 index b248a59..0000000 --- a/test/output/tri.tab +++ /dev/null @@ -1,49 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 ------------------------------------------- ------------------------------------------- -base = 3 -sommet = 5 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 $n ARGUMENT ENTIER 0 -1 -4 $i LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 4 -sommet = 7 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 $i ARGUMENT ENTIER 0 -1 -5 $j ARGUMENT ENTIER 4 -1 -6 $temp LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 5 -sommet = 9 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 $n ARGUMENT ENTIER 0 -1 -6 $echange LOCALE ENTIER 0 -1 -7 $j LOCALE ENTIER 4 -1 -8 $m LOCALE ENTIER 8 -1 ------------------------------------------- ------------------------------------------- -base = 6 -sommet = 6 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/ref-asynt/affect.asynt b/test/ref-asynt/affect.asynt deleted file mode 100644 index f92de39..0000000 --- a/test/ref-asynt/affect.asynt +++ /dev/null @@ -1,23 +0,0 @@ - - - $a - - - - main - - - $a - 1 - - - - - $a - - - - - - - diff --git a/test/ref-asynt/boucle.asynt b/test/ref-asynt/boucle.asynt deleted file mode 100644 index 3f2aace..0000000 --- a/test/ref-asynt/boucle.asynt +++ /dev/null @@ -1,63 +0,0 @@ - - - $i - - $carre - - - - - main - - - $i - 0 - - - - - inf - - $i - - 10 - - - - $carre - - fois - - $i - - - $i - - - - - - - $carre - - - - - $i - - plus - - $i - - 1 - - - - - - - - - - - diff --git a/test/ref-asynt/expression.asynt b/test/ref-asynt/expression.asynt deleted file mode 100644 index 5a3244d..0000000 --- a/test/ref-asynt/expression.asynt +++ /dev/null @@ -1,19 +0,0 @@ - - - $a - - - - main - - - - fois - 5 - 2 - - - - - - diff --git a/test/ref-asynt/max.asynt b/test/ref-asynt/max.asynt deleted file mode 100644 index e419965..0000000 --- a/test/ref-asynt/max.asynt +++ /dev/null @@ -1,106 +0,0 @@ - - - - max - - $a - - $b - - - - - - inf - - $a - - - $b - - - - - - $b - - - - - - - - $a - - - - - - - - main - - $v_1 - - $v_2 - - - - - $v_1 - - - - - - $v_2 - - - - - - - egal - - - max - - - $v_1 - - - - $v_2 - - - - - - - - - $v_1 - - - - - - $v_1 - - - - - - - $v_2 - - - - - - - - - - - diff --git a/test/ref-asynt/tri.asynt b/test/ref-asynt/tri.asynt deleted file mode 100644 index f1106e5..0000000 --- a/test/ref-asynt/tri.asynt +++ /dev/null @@ -1,418 +0,0 @@ - - - $tab[10] - - - - initialiser - - - - $tab - 0 - - 8 - - - - - $tab - 1 - - 6 - - - - - $tab - 2 - - 9 - - - - - $tab - 3 - - 9 - - - - - $tab - 4 - - 4 - - - - - $tab - 5 - - 2 - - - - - $tab - 6 - - 3 - - - - - $tab - 7 - - 1 - - - - - $tab - 8 - - 4 - - - - - $tab - 9 - - 5 - - - - - - - - - - - - - - - afficher - - $n - - - $i - - - - $i - 0 - - - - - inf - - $i - - - $n - - - - - - - $tab - - $i - - - - - - - $i - - plus - - $i - - 1 - - - - - - - - 0 - - - - - - - - echanger - - $i - - $j - - - - $temp - - - - $temp - - - $tab - - $j - - - - - - - - $tab - - $j - - - - - $tab - - $i - - - - - - - - $tab - - $i - - - - $temp - - - - - - - - - trier - - $n - - - $echange - - $j - - $m - - - - - - $m - - $n - - - - - $echange - 1 - - - - - egal - - $echange - - 1 - - - - $echange - 0 - - - - $j - 0 - - - - - inf - - $j - - - moins - - $m - - 1 - - - - - - inf - - - $tab - - plus - - $j - - 1 - - - - - - $tab - - $j - - - - - - - - echanger - - - $j - - - - plus - - $j - - 1 - - - - - - - - - - $echange - 1 - - - - - - - $j - - plus - - $j - - 1 - - - - - - - - $m - - moins - - $m - - 1 - - - - - - - - - - - - - - main - - - - initialiser - - - - - - - - afficher - - 10 - - - - - - - - - trier - - 10 - - - - - - - - - afficher - - 10 - - - - - - - - - - - - - - - - diff --git a/test/ref-lex/affect.lex b/test/ref-lex/affect.lex deleted file mode 100644 index fb828db..0000000 --- a/test/ref-lex/affect.lex +++ /dev/null @@ -1,18 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$a id_variable $a -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$a id_variable $a -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/ref-lex/boucle.lex b/test/ref-lex/boucle.lex deleted file mode 100644 index cbdea9f..0000000 --- a/test/ref-lex/boucle.lex +++ /dev/null @@ -1,40 +0,0 @@ -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$carre id_variable $carre -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -10 nombre 10 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$carre id_variable $carre -= symbole EGAL -$i id_variable $i -* symbole FOIS -$i id_variable $i -; symbole POINT_VIRGULE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$carre id_variable $carre -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/ref-lex/expression.lex b/test/ref-lex/expression.lex deleted file mode 100644 index a569a71..0000000 --- a/test/ref-lex/expression.lex +++ /dev/null @@ -1,16 +0,0 @@ -entier mot_clef entier -$a id_variable $a -; symbole POINT_VIRGULE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -5 nombre 5 -* symbole FOIS -2 nombre 2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/ref-lex/max.lex b/test/ref-lex/max.lex deleted file mode 100644 index 5b96821..0000000 --- a/test/ref-lex/max.lex +++ /dev/null @@ -1,72 +0,0 @@ -max id_fonction max -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$a id_variable $a -, symbole VIRGULE -entier mot_clef entier -$b id_variable $b -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$a id_variable $a -< symbole INFERIEUR -$b id_variable $b -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -retour mot_clef retour -$b id_variable $b -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -retour mot_clef retour -$a id_variable $a -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$v_1 id_variable $v_1 -, symbole VIRGULE -entier mot_clef entier -$v_2 id_variable $v_2 -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$v_1 id_variable $v_1 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$v_2 id_variable $v_2 -= symbole EGAL -lire mot_clef lire -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -si mot_clef si -max id_fonction max -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -, symbole VIRGULE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -= symbole EGAL -$v_1 id_variable $v_1 -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_1 id_variable $v_1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -sinon mot_clef sinon -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$v_2 id_variable $v_2 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/ref-lex/tri.lex b/test/ref-lex/tri.lex deleted file mode 100644 index 457125e..0000000 --- a/test/ref-lex/tri.lex +++ /dev/null @@ -1,271 +0,0 @@ -entier mot_clef entier -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -10 nombre 10 -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -0 nombre 0 -] symbole CROCHET_FERMANT -= symbole EGAL -8 nombre 8 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -1 nombre 1 -] symbole CROCHET_FERMANT -= symbole EGAL -6 nombre 6 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -2 nombre 2 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -3 nombre 3 -] symbole CROCHET_FERMANT -= symbole EGAL -9 nombre 9 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -4 nombre 4 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -5 nombre 5 -] symbole CROCHET_FERMANT -= symbole EGAL -2 nombre 2 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -6 nombre 6 -] symbole CROCHET_FERMANT -= symbole EGAL -3 nombre 3 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -7 nombre 7 -] symbole CROCHET_FERMANT -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -8 nombre 8 -] symbole CROCHET_FERMANT -= symbole EGAL -4 nombre 4 -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -9 nombre 9 -] symbole CROCHET_FERMANT -= symbole EGAL -5 nombre 5 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$i id_variable $i -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$i id_variable $i -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$i id_variable $i -< symbole INFERIEUR -$n id_variable $n -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$i id_variable $i -= symbole EGAL -$i id_variable $i -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -ecrire mot_clef ecrire -( symbole PARENTHESE_OUVRANTE -0 nombre 0 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$i id_variable $i -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$temp id_variable $temp -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$temp id_variable $temp -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -= symbole EGAL -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -; symbole POINT_VIRGULE -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$i id_variable $i -] symbole CROCHET_FERMANT -= symbole EGAL -$temp id_variable $temp -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -entier mot_clef entier -$n id_variable $n -) symbole PARENTHESE_FERMANTE -entier mot_clef entier -$echange id_variable $echange -, symbole VIRGULE -entier mot_clef entier -$j id_variable $j -, symbole VIRGULE -entier mot_clef entier -$m id_variable $m -; symbole POINT_VIRGULE -{ symbole ACCOLADE_OUVRANTE -$m id_variable $m -= symbole EGAL -$n id_variable $n -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -$echange id_variable $echange -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -$j id_variable $j -= symbole EGAL -0 nombre 0 -; symbole POINT_VIRGULE -tantque mot_clef tantque -$j id_variable $j -< symbole INFERIEUR -$m id_variable $m -- symbole MOINS -1 nombre 1 -faire mot_clef faire -{ symbole ACCOLADE_OUVRANTE -si mot_clef si -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -+ symbole PLUS -1 nombre 1 -] symbole CROCHET_FERMANT -< symbole INFERIEUR -$tab id_variable $tab -[ symbole CROCHET_OUVRANT -$j id_variable $j -] symbole CROCHET_FERMANT -alors mot_clef alors -{ symbole ACCOLADE_OUVRANTE -echanger id_fonction echanger -( symbole PARENTHESE_OUVRANTE -$j id_variable $j -, symbole VIRGULE -$j id_variable $j -+ symbole PLUS -1 nombre 1 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -$echange id_variable $echange -= symbole EGAL -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$j id_variable $j -= symbole EGAL -$j id_variable $j -+ symbole PLUS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -$m id_variable $m -= symbole EGAL -$m id_variable $m -- symbole MOINS -1 nombre 1 -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE -} symbole ACCOLADE_FERMANTE -main id_fonction main -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -{ symbole ACCOLADE_OUVRANTE -initialiser id_fonction initialiser -( symbole PARENTHESE_OUVRANTE -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -trier id_fonction trier -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -afficher id_fonction afficher -( symbole PARENTHESE_OUVRANTE -10 nombre 10 -) symbole PARENTHESE_FERMANTE -; symbole POINT_VIRGULE -} symbole ACCOLADE_FERMANTE - symbole FIN diff --git a/test/ref-mips/affect.mips b/test/ref-mips/affect.mips deleted file mode 100644 index c357402..0000000 --- a/test/ref-mips/affect.mips +++ /dev/null @@ -1,35 +0,0 @@ - .data -$a: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $a # stocke variable - lw $t1, $a # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/test/ref-mips/boucle.mips b/test/ref-mips/boucle.mips deleted file mode 100644 index fc771f5..0000000 --- a/test/ref-mips/boucle.mips +++ /dev/null @@ -1,91 +0,0 @@ - .data -$i: .space 4 -$carre: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $i # stocke variable -e0: - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - mult $t0, $t1 - mflo $t2 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $carre # stocke variable - lw $t1, $carre # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $t1, $i # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $i # stocke variable - j e0 -e1: - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/test/ref-mips/expression.mips b/test/ref-mips/expression.mips deleted file mode 100644 index 5f52e36..0000000 --- a/test/ref-mips/expression.mips +++ /dev/null @@ -1,40 +0,0 @@ - .data -$a: .space 4 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - mult $t0, $t1 - mflo $t2 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/test/ref-mips/max.mips b/test/ref-mips/max.mips deleted file mode 100644 index 4d04e55..0000000 --- a/test/ref-mips/max.mips +++ /dev/null @@ -1,137 +0,0 @@ - .data - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -max: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t0, 12($fp) # ecriture de la valeur de retour - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -e1: - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t0, 12($fp) # ecriture de la valeur de retour - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 8 # allocation variables locales - li $v0, 5 - syscall # lecture - subi $sp, $sp, 4 # empile registre - sw $v0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - li $v0, 5 - syscall # lecture - subi $sp, $sp, 4 # empile registre - sw $v0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - # empile arg 1 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - jal max - addi $sp, $sp, 8 # desallocation parametres - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # egal - beq $t0, $t1, e5 - li $t2, 0 -e5: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e3 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - j e4 -e3: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char -e4: - addi $sp, $sp, 8 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/test/ref-mips/tri.mips b/test/ref-mips/tri.mips deleted file mode 100644 index 359190d..0000000 --- a/test/ref-mips/tri.mips +++ /dev/null @@ -1,525 +0,0 @@ - .data -$tab: .space 40 - - .text -__start: - jal main - li $v0, 10 - syscall # stoppe l'execution du processus -initialiser: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - li $t0, 8 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 6 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 3 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 2 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 3 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 6 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 7 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 4 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 8 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - li $t0, 5 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - li $t0, 9 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -afficher: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation variables locales - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e0: - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e2 - li $t2, 0 -e2: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e1 - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - j e0 -e1: - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $a0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $v0, 1 - syscall # ecriture - li $a0, '\n' - li $v0, 11 - syscall # ecrire char - addi $sp, $sp, 4 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -echanger: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation variables locales - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, $tab($t0) # stocke variable - addi $sp, $sp, 4 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -trier: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 12 # allocation variables locales - lw $t1, 4($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -16($fp) # stocke variable - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e3: - lw $t1, -8($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # egal - beq $t0, $t1, e5 - li $t2, 0 -e5: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e4 - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable - li $t0, 0 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable -e6: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, -16($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sub $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e8 - li $t2, 0 -e8: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e7 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t0, $t0, $t0 - add $t0, $t0, $t0 - lw $t1, $tab($t0) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - li $t2, -1 # inf - blt $t0, $t1, e11 - li $t2, 0 -e11: - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - beq $t0, $zero, e10 - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - # empile arg 1 - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - jal echanger - addi $sp, $sp, 8 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -8($fp) # stocke variable -e10: - lw $t1, -12($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - add $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -12($fp) # stocke variable - j e6 -e7: - lw $t1, -16($fp) # lit variable dans $t1 - subi $sp, $sp, 4 # empile registre - sw $t1, 0($sp) - li $t0, 1 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $t0, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sub $t2, $t0, $t1 - subi $sp, $sp, 4 # empile registre - sw $t2, 0($sp) - lw $t1, 0($sp) # depile vers registre - addi $sp, $sp, 4 - sw $t1, -16($fp) # stocke variable - j e3 -e4: - addi $sp, $sp, 12 # desallocation variables locales - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra -main: - subi $sp, $sp, 4 # empile registre - sw $fp, 0($sp) - move $fp, $sp # nouvelle valeur de $fp - subi $sp, $sp, 4 # empile registre - sw $ra, 0($sp) - subi $sp, $sp, 4 # allocation valeur de retour - jal initialiser - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal afficher - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal trier - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - subi $sp, $sp, 4 # allocation valeur de retour - # empile arg 0 - li $t0, 10 - subi $sp, $sp, 4 # empile registre - sw $t0, 0($sp) - jal afficher - addi $sp, $sp, 4 # desallocation parametres - addi $sp, $sp, 4 # valeur de retour ignoree - lw $ra, 0($sp) # depile vers registre - addi $sp, $sp, 4 - lw $fp, 0($sp) # depile vers registre - addi $sp, $sp, 4 - jr $ra diff --git a/test/ref-synt/affect.synt b/test/ref-synt/affect.synt deleted file mode 100644 index 038df30..0000000 --- a/test/ref-synt/affect.synt +++ /dev/null @@ -1,113 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $a - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/ref-synt/boucle.synt b/test/ref-synt/boucle.synt deleted file mode 100644 index c3cf0f2..0000000 --- a/test/ref-synt/boucle.synt +++ /dev/null @@ -1,283 +0,0 @@ - - - - - entier - $i - - - - - VIRGULE - - entier - $carre - - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - 10 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $carre - - - - EGAL - - - - - - - - - $i - - - - - - FOIS - - - $i - - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $carre - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/ref-synt/expression.synt b/test/ref-synt/expression.synt deleted file mode 100644 index 4d058f0..0000000 --- a/test/ref-synt/expression.synt +++ /dev/null @@ -1,77 +0,0 @@ - - - - - entier - $a - - - - - - - POINT_VIRGULE - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 5 - - - FOIS - - 2 - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - diff --git a/test/ref-synt/max.synt b/test/ref-synt/max.synt deleted file mode 100644 index 08f06d7..0000000 --- a/test/ref-synt/max.synt +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - max - - PARENTHESE_OUVRANTE - - - - entier - $a - - - - - VIRGULE - - entier - $b - - - - - - - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $a - - - - - - - - - - - - INFERIEUR - - - - - $b - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - retour - - - - - - - - - $b - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - retour - - - - - - - - - $a - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - entier - $v_1 - - - - - VIRGULE - - entier - $v_2 - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $v_1 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $v_2 - - - - EGAL - - - - - - - - lire - PARENTHESE_OUVRANTE - PARENTHESE_FERMANTE - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - si - - - - - - - - - max - PARENTHESE_OUVRANTE - - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - - - - - - - - - EGAL - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_1 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - sinon - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $v_2 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - diff --git a/test/ref-synt/tri.synt b/test/ref-synt/tri.synt deleted file mode 100644 index 77a518b..0000000 --- a/test/ref-synt/tri.synt +++ /dev/null @@ -1,2146 +0,0 @@ - - - - - entier - $tab - - CROCHET_OUVRANT - 10 - CROCHET_FERMANT - - - - - - POINT_VIRGULE - - - - initialiser - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 0 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 8 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 1 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 6 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 2 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 3 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 9 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 4 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 5 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 2 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 6 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 3 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 7 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 8 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 4 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - 9 - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - 5 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - - - - - - - ACCOLADE_FERMANTE - - - - - afficher - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $i - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $i - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $i - - - - - - - - - - - - INFERIEUR - - - - - $n - - - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - $i - - - - EGAL - - - - - - - - - $i - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - ecrire - PARENTHESE_OUVRANTE - - - - - - - - 0 - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - echanger - - PARENTHESE_OUVRANTE - - - - entier - $i - - - - - VIRGULE - - entier - $j - - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $temp - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $temp - - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $i - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - EGAL - - - - - - - - - $temp - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - ACCOLADE_FERMANTE - - - - - trier - - PARENTHESE_OUVRANTE - - - - entier - $n - - - - - - - - PARENTHESE_FERMANTE - - - - - entier - $echange - - - - - VIRGULE - - entier - $j - - - - - VIRGULE - - entier - $m - - - - - - - - - POINT_VIRGULE - - - ACCOLADE_OUVRANTE - - - - - $m - - - - EGAL - - - - - - - - - $n - - - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $echange - - - - - - - - - - - - EGAL - - - - 1 - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - - $echange - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - $j - - - - EGAL - - - - - - - - 0 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - tantque - - - - - - - - - $j - - - - - - - - - - - - INFERIEUR - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - - faire - - ACCOLADE_OUVRANTE - - - - si - - - - - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - INFERIEUR - - - - - $tab - - CROCHET_OUVRANT - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - CROCHET_FERMANT - - - - - - - - - - - - - - - - - - - - - alors - - ACCOLADE_OUVRANTE - - - - - echanger - PARENTHESE_OUVRANTE - - - - - - - - - - $j - - - - - - - - - - - - - - - - - - - - - - VIRGULE - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - $echange - - - - EGAL - - - - - - - - 1 - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - $j - - - - EGAL - - - - - - - - - $j - - - - - - - - - PLUS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - ACCOLADE_FERMANTE - - - - - - - - $m - - - - EGAL - - - - - - - - - $m - - - - - - - - - MOINS - - - 1 - - - - - - - - - - - - - - - - - - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - ACCOLADE_FERMANTE - - - - - main - - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - - - - ACCOLADE_OUVRANTE - - - - - initialiser - PARENTHESE_OUVRANTE - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - trier - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - afficher - PARENTHESE_OUVRANTE - - - - - - - - - 10 - - - - - - - - - - - - - - - - - - - - - PARENTHESE_FERMANTE - - POINT_VIRGULE - - - - - - - - - ACCOLADE_FERMANTE - - - - - - - - - - diff --git a/test/ref-tab/affect.tab b/test/ref-tab/affect.tab deleted file mode 100644 index 91bc69d..0000000 --- a/test/ref-tab/affect.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/ref-tab/boucle.tab b/test/ref-tab/boucle.tab deleted file mode 100644 index f37700e..0000000 --- a/test/ref-tab/boucle.tab +++ /dev/null @@ -1,7 +0,0 @@ ------------------------------------------- -base = 3 -sommet = 3 -0 $i GLOBALE ENTIER 0 -1 -1 $carre GLOBALE ENTIER 4 -1 -2 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/ref-tab/expression.tab b/test/ref-tab/expression.tab deleted file mode 100644 index 91bc69d..0000000 --- a/test/ref-tab/expression.tab +++ /dev/null @@ -1,6 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $a GLOBALE ENTIER 0 -1 -1 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/ref-tab/max.tab b/test/ref-tab/max.tab deleted file mode 100644 index 3d3086c..0000000 --- a/test/ref-tab/max.tab +++ /dev/null @@ -1,15 +0,0 @@ ------------------------------------------- -base = 1 -sommet = 3 -0 max GLOBALE FONCTION 0 2 -1 $a ARGUMENT ENTIER 0 -1 -2 $b ARGUMENT ENTIER 4 -1 ------------------------------------------- ------------------------------------------- -base = 2 -sommet = 4 -0 max GLOBALE FONCTION 0 2 -1 main GLOBALE FONCTION 0 0 -2 $v_1 LOCALE ENTIER 0 -1 -3 $v_2 LOCALE ENTIER 4 -1 ------------------------------------------- diff --git a/test/ref-tab/tri.tab b/test/ref-tab/tri.tab deleted file mode 100644 index b248a59..0000000 --- a/test/ref-tab/tri.tab +++ /dev/null @@ -1,49 +0,0 @@ ------------------------------------------- -base = 2 -sommet = 2 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 ------------------------------------------- ------------------------------------------- -base = 3 -sommet = 5 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 $n ARGUMENT ENTIER 0 -1 -4 $i LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 4 -sommet = 7 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 $i ARGUMENT ENTIER 0 -1 -5 $j ARGUMENT ENTIER 4 -1 -6 $temp LOCALE ENTIER 0 -1 ------------------------------------------- ------------------------------------------- -base = 5 -sommet = 9 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 $n ARGUMENT ENTIER 0 -1 -6 $echange LOCALE ENTIER 0 -1 -7 $j LOCALE ENTIER 4 -1 -8 $m LOCALE ENTIER 8 -1 ------------------------------------------- ------------------------------------------- -base = 6 -sommet = 6 -0 $tab GLOBALE TABLEAU 0 10 -1 initialiser GLOBALE FONCTION 0 0 -2 afficher GLOBALE FONCTION 0 1 -3 echanger GLOBALE FONCTION 0 2 -4 trier GLOBALE FONCTION 0 1 -5 main GLOBALE FONCTION 0 0 ------------------------------------------- diff --git a/test/testAll.sh b/test/testAll.sh deleted file mode 100755 index 2c7f45b..0000000 --- a/test/testAll.sh +++ /dev/null @@ -1,121 +0,0 @@ -#!/bin/bash - -################################################################################ -# Script d'évaluation automatique des compilateurs du projet. -# Compile le programme source et compare avec la référence. -# Comprend analyse lexicale, syntaxique, arbre abstrait, table des symboles et -# code MIPS. -################################################################################ - -# MODIFIEZ LES VARIABLES CI-DESSOUS AVEC LE CHEMIN/OPTIONS DE VOTRE COMPILATEUR - -MYCOMPILO="../compilateur-l" -MYCOMPILOLEX="${MYCOMPILO} -l" -MYCOMPILOSYNT="${MYCOMPILO} -s" -MYCOMPILOASYNT="${MYCOMPILO} -a" -MYCOMPILOTAB="${MYCOMPILO} -t" -MYCOMPILOMIPS="${MYCOMPILO} -m" - -################################################################################ - -XMLDIFF="./compare_arbres_xml" -REGDIFF="diff -q -w" -EXITONFAIL=1 -declare -A testname -testname["lex"]="Analyse lexicale" -testname["synt"]="Analyse syntaxique" -testname["asynt"]="Arbre abstrait" -testname["tab"]="Table des symboles" -testname["mips"]="Code machine MIPS" - -################################################################################ - -function diff_prog() { - diffprog=$1 - input=$2 - suffix=$3 - echo -e "\033[35m > ${testname[${suffix}]} (.${suffix})\033[0m" - if [ -f ref-${suffix}/$input.${suffix} ]; then - ${diffprog} output/${input}.${suffix} ref-${suffix}/${input}.${suffix} 2> /dev/null - if [ $? != 0 ]; then - echo -e "\033[31mTEST ${testname[${suffix}]} ÉCHOUÉ\033[0m" - echo -e "Pour connaître les différences, exécutez :" - echo -e " ${diffprog} output/${input}.${suffix} ref-${suffix}/${input}.${suffix}" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST ${testname[${suffix}]} OK\033[0m" - fi - else - echo -e "\033[34mRéférence ref-${suffix}/${input}.${suffix} absente\033[0m" - fi -} - -################################################################################ - -function test_fichier_ok() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - if [ -f input/$input.l ]; then - echo -e "\033[35m > Reconnaissance (accepte l'entrée)\033[0m" - ${MYCOMPILOSYNT} input/$input.l > output/$input.synt - if [ $? != 0 ]; then - echo -e "\033[31mTEST Reconnaissance ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l n'a pas été compilé correctement" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST Reconnaissance OK\033[0m" - fi - ${MYCOMPILOLEX} input/$input.l > output/$input.lex - diff_prog "${REGDIFF}" $input lex - diff_prog ${XMLDIFF} $input synt - ${MYCOMPILOASYNT} input/$input.l > output/$input.asynt - diff_prog ${XMLDIFF} $input asynt - ${MYCOMPILOTAB} input/$input.l > output/$input.tab - diff_prog "${REGDIFF}" $input tab - ${MYCOMPILOMIPS} input/$input.l > output/$input.mips - #diff_prog "${REGDIFF}" $input mips - else - echo -e "\033[31minput/$input.l non trouvé\033[0m" - echo -e "\033[31mTest impossible\033[0m" - fi -} - -################################################################################ - -function test_fichier_fail() { - input=$1 - echo -e "\n\033[4m ---- Test input/$input.l ----\033[0m" - ${MYCOMPILO} input/$input.l > output/$input.synt.xml - if [ $? = 0 ]; then - echo -e "\033[31mTEST REJET ÉCHOUÉ\033[0m" - echo -e "Le programme $input.l a été accepté alors qu'il aurait dû être rejeté" - if [ $EXITONFAIL = 1 ]; then exit 1; fi - else - echo -e "\033[32mTEST REJET OK\033[0m" - fi -} - -################################################################################ - -mkdir -p output -make - -echo -e "Votre compilateur : ${MYCOMPILO}" -if [ ! -f ${MYCOMPILO} ]; then - echo -e "\033[31mCompilateur introuvable" - echo -e "Modifiez la variable MYCOMPILO avant de lancer l'éval\033[0m" - exit 1 -fi - -echo -e "\033[1m\n>> 1) Tests connus OK\033[0m" - -test_fichier_ok affect -test_fichier_ok boucle -test_fichier_ok expression -test_fichier_ok max -test_fichier_ok tri - -echo -e "\033[1m\n>> 1) Tests connus FAIL\033[0m" - -test_fichier_fail affect-err -