--- rpl/src/instructions_m1.c 2013/02/27 17:11:42 1.41 +++ rpl/src/instructions_m1.c 2013/03/16 11:31:41 1.42 @@ -39,7 +39,6 @@ void instruction_moins(struct_processus *s_etat_processus) { integer8 tampon; - integer8 tampon_2; logical1 depassement; logical1 drapeau; @@ -136,10 +135,8 @@ instruction_moins(struct_processus *s_et if (((*s_objet_argument_1).type == INT) && ((*s_objet_argument_2).type == INT)) { - tampon_2 = -(*((integer8 *) (*s_objet_argument_1).objet)); - - if (depassement_addition(&tampon_2, - (integer8 *) (*s_objet_argument_2).objet, &tampon) == + if (depassement_soustraction((integer8 *) (*s_objet_argument_2).objet, + (integer8 *) (*s_objet_argument_1).objet, &tampon) == d_absence_erreur) { if ((s_objet_resultat = allocation(s_etat_processus, INT)) @@ -161,8 +158,8 @@ instruction_moins(struct_processus *s_et } (*((real8 *) (*s_objet_resultat).objet)) = ((real8) - (-(*((integer8 *) (*s_objet_argument_1).objet)))) - + ((real8) (*((integer8 *) (*s_objet_argument_2).objet))); + (*((integer8 *) (*s_objet_argument_2).objet))) + - ((real8) (*((integer8 *) (*s_objet_argument_1).objet))); } } @@ -351,11 +348,10 @@ instruction_moins(struct_processus *s_et for(i = 0; i < (*(((struct_vecteur *) (*s_objet_resultat) .objet))).taille; i++) { - tampon = -((integer8 *) (*((struct_vecteur *) (*s_objet_argument_1) - .objet)).tableau)[i]; - - if (depassement_addition(&(((integer8 *) (*((struct_vecteur *) - (*s_objet_argument_2).objet)).tableau)[i]), &tampon, + if (depassement_soustraction(&(((integer8 *) (*((struct_vecteur *) + (*s_objet_argument_2).objet)).tableau)[i]), + &(((integer8 *) (*((struct_vecteur *) (*s_objet_argument_1) + .objet)).tableau)[i]), &(((integer8 *) (*((struct_vecteur *) (*s_objet_resultat).objet)).tableau)[i])) == d_erreur) { @@ -738,11 +734,10 @@ instruction_moins(struct_processus *s_et for(j = 0; j < (*(((struct_matrice *) (*s_objet_resultat).objet))) .nombre_colonnes; j++) { - tampon = -((integer8 **) (*((struct_matrice *) - (*s_objet_argument_1).objet)).tableau)[i][j]; - - if (depassement_addition(&(((integer8 **) (*((struct_matrice *) - (*s_objet_argument_2).objet)).tableau)[i][j]), &tampon, + if (depassement_soustraction(&(((integer8 **) + (*((struct_matrice *) (*s_objet_argument_2).objet)) + .tableau)[i][j]), &(((integer8 **) (*((struct_matrice *) + (*s_objet_argument_1).objet)).tableau)[i][j]), &(((integer8 **) (*((struct_matrice *) (*s_objet_resultat).objet)).tableau)[i][j])) == d_erreur)