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 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 "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 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 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 Declaration API NASM [ par Kazuya ] Bonjour, j'ai un petit problem j'essaie de me mettre à l'assembleur avec NASM mais quand je compile des sources dans lesquels des API sont déclarées, Afficher une MessageBox avec nasm [ par Ayorosmage ] Salut à tous comme le titre l'indique j'aimerai savoir comment on peut afficher une messagebox toute simple (qui dit bonjour par exemple) avec nasm (u nasm coff symboles [ par patatalo ] salut, y-a-t'il une option avec Nasm qui permette de supprimer les symboles des structures,des equates et des labels locaux en compilation de format c


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

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



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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 : 0,265 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é.