begin process at 2010 03 13 21:42:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

c, c++ et asm

 > 

Récuperer valeur asm en C++


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Récuperer valeur asm en C++

mardi 12 juillet 2005 à 00:57:33 | Récuperer valeur asm en C++

S4T4N1QU3

Bonsoir,

J'aimerais savoir comment récuperer EAX dans un cas comme celui ci

asm("MOVL %EAX, 5");

Merci beaucoup à celui ou cell qui m'aidera

mardi 12 juillet 2005 à 08:56:48 | Re : Récuperer valeur asm en C++

AlexMAN

Membre Club
Il te faut faire pareil mais avec la variable qui contiendra eax (je ne connais pas cette syntaxe, mais tu devrais t'y retrouver) : int iEAX; __asm { mov eax, 5 mov iEAX, eax } printf("%d", iEAX); En sortie tu obtiendras 5.
mardi 12 juillet 2005 à 12:11:47 | Re : Récuperer valeur asm en C++

S4T4N1QU3

Merci, mais non... syntax error.... Je compile sous Dev-Cpp. Si ça peut aider.
mardi 12 juillet 2005 à 18:41:42 | Re : Récuperer valeur asm en C++

vecchio56

Administrateur CodeS-SourceS
asm("MOVL %EAX, 5"); Je crois qu'on écrit plutot asm("MOVL $5, %eax"); d'après ce que j'ai vu: la source est à droite. Pour utiliser les variables locales, je pense que tu dois travailler directement avec %esp, car le nom des variables ne sera pas reconnu
mardi 12 juillet 2005 à 18:45:07 | Re : Récuperer valeur asm en C++

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
Voila, ca marche avec ebp, mais pas avec esp, je vois pas trop pourquoi... #include int f() { int i; asm("mov $5, %eax"); // mettre 5 dans eax asm("movl %eax, -4(%ebp)"); // mettre eax dans i std::cout << i << std::endl; } int main() { f(); }
mardi 12 juillet 2005 à 19:00:18 | Re : Récuperer valeur asm en C++

S4T4N1QU3

Réponse acceptée !
Merci pour le code, il ne fonctionnait pas trop mais j'ai trouvé un moyen de le faire fonctionner.
-------------------------------------------->8-cut-here-------------------------------
#include <iostream>
#include <cstdio>


using namespace std;

int f()
{
  int i;
  asm(
"mov $5,%ebx"); // mettre 5 dans eax
  asm(
"mov %ebx, -4(%ebp)"); // mettre eax dans i
  cout << i << endl;
}

int
main()
{
  f();
  system(
"PAUSE");
  return 0;
}

----------------------------------------cut-here-8<-------------------------------
Là ça marche enfin, c'est génial merci


mardi 12 juillet 2005 à 19:36:38 | Re : Récuperer valeur asm en C++

vecchio56

Administrateur CodeS-SourceS
C'est eax qui posait problème? ou le movl?
mardi 12 juillet 2005 à 19:55:25 | Re : Récuperer valeur asm en C++

S4T4N1QU3

Aucune idée. Mais l'important, c'est qu ça marche merci pour tout.


Cette discussion est classée dans : valeur, récuperer, asm, eax


Répondre à ce message

Sujets en rapport avec ce message

Afficher valeur registre ? [ par Zootella ] Hello all, dans un programme, celui-çi test la valeur d'un registre : cmp  dword ptr [eax],4550h je voudrais faire des tests et afficher cette vale Décaler les octets d'un registre [ par Kephuro2 ] Bonjour à tous !Je m'adresse à vous car j'ai un petit souci !Je vous explique vite fait. Donc j'ai un registre (eax) qui a pour valeur : 0000825C, j'a Shellcode >> asm [ par Stormy ] Salut à tous,Comment puis-je obtenir un désassemblage en formule ASM à partir d'un shellcode rédigé en hexadécimal. Ce shellcode est contenu dans un b Renfield.asm [ par Renfield ] Bonjour a tous,bon nombre d'entre vous ne me connaissent surment pas...(je viens plutôt de VbFrance...)Je me (re)met a l'ASM !!j'ai téléchargé Masm32, nombre aléatoire en asm 16f84 [ par sodhaine ] Bonjour,Je suis un newbie-moyen en assembleur/électronique; j'essaie de faire un dé électronique en assembleur 16f84 (avec affichage sur écran LCD) e compte a rebour et exit en asm [ par zerolol ] Salut.Comment faire un compte a rebour dans une fenetre avec le decompt en visuel et fermeture auto du prog.merci pour vo explication. BeginPaint code débutant [ par TRAX44 ] Bonjour, le problème est tout simple je comprends absolument pas ce qui marche pas. Le "programme" est censé créer une fenêtre est afficher du texte e EAX=-val2+7-val3+val1 [ par rhumsek ] voici un programme qui doit donné un résultat en fonction de la formule suivante,mais je ne suis pas sur que le résultat obtenu après compilation du p nasm - mémoire read-only [ par Funto66 ] Bonjour,je suis en train d'écrire des tutoriaux pour le site Coder-Studio (http://www.coder-studio.com/?page=tutoriaux) mais pour la création du tutor Equivalent ASM de chaine[0] = 0 [ par AlexMAN ] Bonjour, C'est simplement une ptite incertitude : pour l'ekivalent de chaine[0] = 0 en C: mov [chaine], 0 ou mov chaine, 0Ou bien c totatelment la mm


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales