Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : dword ptr / word ptr chez nasm [ Archives / Newbii ] (morganitos)

lundi 2 janvier 2006 à 14:12:55 | dword ptr / word ptr chez nasm

morganitos

Bonjour à tous, je code sous nasm et voici mon problème : Quand j'écris une instruction du type : mov eax, dword ptr [ebx] OU cmp word ptr [ebx], 0h j'obtiens cett erreur : comma or end of line expected. Voilà je suppose que "dword ptr" n'est pas compris par nasm mais je ne sais pas par quoi le remplacer. Merci de votre aide...

lundi 2 janvier 2006 à 15:03:02 | Re : dword ptr / word ptr chez nasm

Nasman

Réponse acceptée !
Bonjour Morganitos,

Effectivement la syntaxe de Nasm est légèrement différente de celle de Masm.
Masm considère les contenus comme des valeurs de variables. L'instruction
mov eax,dword ptr[ebx] signifie:

lire le contenu du registre ebx
considérer cette valeur comme un pointeur et donc constitue une adresse
lire le dword à l'adresse en question et le mettre dans eax.

Avec Nasm tu n'as qu'à écrire
mov eax,[ebx]

En règle générale avec Nasm tu doit oublier les ptr, les offsets et autres truc.
Pour Nasm, adresse est une adresse, le contenu situé à cette adresse est [adresse].
Il ne faut pas oublier les crochets.

Lecture d'une adresse d'une variable
mov eax,offset variable      (MASM)
mov eax,variable               (NASM)

Lecture du contenu d'une variable
mov eax,variable               (MASM)
mov eax,[variable           (NASM)

Les 4 octets situés à partir de l'adresse variable sont accessibles individuellement de la façon suivante:
mov al,[variable]               octet de poids faible
mov al,[variable+1]
mov al,[variable+2]
mov al,[variable+3]           octet de poids fort

En résumé tu pourra transcrire
mov eax, dword ptr [ebx] par mov eax,[ebx]
et
cmp word ptr [ebx], 0h  par  cmp word [ebx],0    ou cmp [ebx],word 0

mardi 3 janvier 2006 à 19:10:57 | Re : dword ptr / word ptr chez nasm

morganitos

Merci beaucoup pour cet explication plus que complète !!! Tu ne t'appelle pas Nasman pour rien... ;-)



Cette discussion est classé dans : word, ptr, dword, nasm, ebx


Répondre à ce message

Sujets en rapport avec ce message

Fichier [ par RM50Man ] Je lis dans un fichier et je reecris ce que g lu dans l autre, mais ca ne m ecrit pas dans le nouveau fichier ce que g lu ds l autre fichier !!!!Si qu optimisation [ par sajid_morad ] salut tout le monde , j ai une parti du code en c++, que j ai voulu optimiser , le l ai reécri en asm , mai ça donne pas grand chose, si quelqu un po "MOV WORD, EBX" Comment faire ? [ par Nowid50 ] Bonjour,Je suis débtant en assembleur et après quelques recherches, je ne trouve pas mon bonheur.Mon application requiert que je face l'instruction su REVERSE ENGEEER aide API [ par Fuckly94 ] Salut tout le monde!!je me lance dans le reverse engeneer,c'est à dire la modification de programme déja compilé!!le seul probléme que j'ai,c'est pour en quel langage est ecrit ce programme [ par jedilu ] bonjouren quel language est ecrit ce programme car j'ai un probleme pour le lancermerci00629DE5   AE               SCAS BYTE PTR ES:[EDI]00629DE6   9E inversion de l'ordre d'uns string [ par VBFRANCE ] Je suis un jeune debutant dans l'assembleur.J'ai un petit prog pour afficher les valeur sous format binaire, mais je suis bloquer par un petit soucis. [NASM] binary output format ??? [ par sheeper ] Bonjour,Comment fait on pour faires des appels aux API sous NASM ?? J'ai bien vu plusieurs sources sur le site qui le faisaient ainsi (en gros):%INCLU Ecrire registre valeur dword32 [ par goldofff ] Bonjour,j'ai créé un petit prog en assembleur avec winasm qui me permet de créer une clef dans ma base de registre jusque là tout va bien.maintenant j Retour de pointeur apres apelle de methodes [ par vulpes87 ] BonjourJ'aimerais avoir des renseignement sur comment un pointeur est renvoyerquand j'appelle une méthode. Je ne comprend pas encore très bien le fonc [FASM]Traduction program C to ASM [ par The Red Man ] je suis completement new in ASM :J'aimerai savoir je pourrai traduire ce bout de C en ASM, j'ai essayé déjà ça compile pas avec :include "win32ax.inc"


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 1,310 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.