begin process at 2012 05 25 02:43:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Divers

 > 

Débutant(e)

 > 

[Assembleur inline C++] Récupérer l'offset d'un label


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

[Assembleur inline C++] Récupérer l'offset d'un label

jeudi 10 septembre 2009 à 00:13:02 | [Assembleur inline C++] Récupérer l'offset d'un label

ShivX

Bonjour a tous,

J'ai un léger problème avec l'assembleur inline dans un programme en C++, n'étant pas un expert en asm j'espère que vous pourrez m'éclairer un peu.

J'essaye désespérément de récupérer l'offset d'un label... sans résultalt... la compilation bloque

Voici la portion de code qui pose problème :

Code C/C++ :

void fnct() {
_asm {
...
Label:
...
mov eax, OFFSET Label
...
}
}


et le résultat :


E029: col(1) symbol 'Label' has not been declared


Je compile avec open watcom... je sais pas si la syntaxe est bonne ou même permise sous ce compilateur...

J'ai déjà pu voir ce genre de code dans des sources qui n'avaient pas l'air de poser problème... donc est ce que l'opérateur OFFSET peut d'une manière ou d'une autre récupérer l'offset d'un label? ou sinon... comment pouvoir récupérer cet offset?

Merci d'avance pour vos réponses

jeudi 10 septembre 2009 à 10:11:13 | Re : [Assembleur inline C++] Récupérer l'offset d'un label

ToutEnMasm

L'assembleur inline n'admet pas nécessairement la directive offset.
Vérifier cela avec la documentation du c++.
La meilleure méthode pour mélanger du c++ et de l'assembleur est d'insérer un fichier objet dans le c++ après l'avoir déclarer.
On s'évite ainsi ce genre de désagrément.

jeudi 10 septembre 2009 à 10:42:34 | Re : [Assembleur inline C++] Récupérer l'offset d'un label

Guilou34



Pourquoi pas tout simplement :

...
_asm
call label
label: pop eax
...

Amicalement.

jeudi 10 septembre 2009 à 14:27:13 | Re : [Assembleur inline C++] Récupérer l'offset d'un label

ShivX

Merci à vous deux pour vos réponses.

Effectivement il semblerait que les labels ne soient pas vraiment implémenté sous open watcom...
http://bugzilla.openwatcom.org/show_bug.cgi?id=704

J'ai donc pris la décision de changer de compilateur tout simplement.



Cette discussion est classée dans : récupérer, label, code, assembleur, offset


Répondre à ce message

Sujets en rapport avec ce message

Euh... Help ? [ par MaxSoldier ] Coucou ! D'abord, je voulais dire que oui, c'était possible de passé du VB à l'assembleur. Non sans quelques (  pleins ) de difficultés. J'ai commencé assembleur 8086: Affichage de table ASCII [ par redwings ] je cherche le code source d'un prog en asm : comment on peut afficher toute la table des caractere + le code ascii en héxadecimal exemple : Resultat s assembleur FPU [ par spiky31 ] Bonjour Est ce que quelqu'un pourrait me dire comment insérer du code asm avec des instructions FPU dans un programme C avec des explications ou un e traduire du asm en vb [ par matlow ] Mon boss m'a demandé de récupérer le code source vb d'un éxécutable.    Pour le moment, j'arrive à récupérer uniquement le code assembleur, donc j'aim [nasm] ligne de commande [ par Kevin68 ] Bonjour :),Je suis débutant en assembleur, j'utilise nasm sous linux.J'ai cherché partout un exemple de code source qui me permettrait de récupérer le Quel est l'assembleur le plus rapide ? [ par epineurien ] Salut à tous !Une nouvelle question , suite à quelques infos trouvées sur le net ...J'utilise MASM32 , mais de nombreux sites dises qu'il produit un c lecture de date au clavier asm [ par w120 ] salut!! je suis un déééééééébutant en langage assembleur j'ai essayé de le comprendre seul mais au niveau de l'application je trouve tant de diffucul Dur dur de compiler le code des autres... [ par sirehanack ] Bonjour à toutes et à tous!Je suis tout nouveau ici et dans le monde de l'assembleur. En fait je suis aussi nouveau dans l'informatique, je n'ai pour


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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,546 sec (4)

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