anonyme_man_in_this_world
Messages postés161Date d'inscriptionsamedi 25 juin 2005StatutMembreDernière intervention 1 août 2006
-
19 juil. 2005 à 23:36
anonyme_man_in_this_world
Messages postés161Date d'inscriptionsamedi 25 juin 2005StatutMembreDernière intervention 1 août 2006
-
20 juil. 2005 à 19:19
salut !!
ça sera simpa si on m'aide a corriger ce petit code compile sous Visual C++
*******************************************************************************
Message DB "Hello World !$"
}
getch() ;
return ;
}
*******************************************************************************
#include <conio.h>
#include
void main(void)
{
int a ;
int b ;
__asm
{
MOV a , 100
MOV b , 100
ADD a , b
}
cout<<a<<endl ;
return ;
}
********************************************************************************
j'ai remarque que si on remplace b dans ADD par une constante le compilateur ne
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 20 juil. 2005 à 10:35
et pourquoi devrait-il y avoir erreur ??? ADD admet une constante en seconde opérande.
Dans tous les cas, tout ceci ne sert à rien d'autre que perdre du temps, les interruptions sont à bannir et mettre de l'ASM inline de cette manière ne peut que ralentir un prog car empêche l'optimisation normale du compilo. On écrit toute sa fonction en ASM en spécifiant au compilo de ne pas y mettre ses pattes, préfixer par __declspec(naked), ou alors on laisse en C.