EXEMPLES SIMPLES DE FICHIERS ÉCRITS AVEC NASM

Signaler
Messages postés
241
Date d'inscription
vendredi 23 mai 2003
Statut
Membre
Dernière intervention
8 octobre 2007
-
Messages postés
202
Date d'inscription
mardi 17 mai 2005
Statut
Membre
Dernière intervention
29 septembre 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/34175-exemples-simples-de-fichiers-ecrits-avec-nasm

Messages postés
202
Date d'inscription
mardi 17 mai 2005
Statut
Membre
Dernière intervention
29 septembre 2008
3
Bonjour GOKUDO,

Tu peux trouver des informations complémentaires sur les modes de compilations dans la source suivante
http://www.asmfr.com/codes/CREATION-DIFFERENTS-EXECUTABLES-AVEC-NASM-ALINK_37036.aspx

A+
Messages postés
22
Date d'inscription
jeudi 14 juin 2007
Statut
Membre
Dernière intervention
18 août 2009

j'ai rien compris mais ça a l'air interessant. je vai apprendre un pe et venir vous embeter avec mes questions ^_^. merci beaucoup nasman pour c tuto.
Messages postés
17
Date d'inscription
mardi 25 janvier 2005
Statut
Membre
Dernière intervention
11 mai 2006

je viens de comprendre ton code, en faisant :
push dword 0x00000031
push dword 0x39393939
j'obtient 99991 !!

merci
Messages postés
202
Date d'inscription
mardi 17 mai 2005
Statut
Membre
Dernière intervention
29 septembre 2008
3
Tu n'est pas obligé de stocker ta chaine a une adresse précise, tu peux la mettre sur la pile et indiquer son adresse pour la MessageBox

printf: ;esp pointe sur l'adresse de retour (le ret qui suit le call printf)
lea eax,[esp+4] ;eax vaut esp+4
push byte 0
push dword Titre ;le titre est dans les data
push eax ;la chaine à afficher est dans la pile
push byte 0
call [MessageBoxA]
ret 8 ;dépile les données après le retour à main (deux dword)
;--------------------------

main:
push dword 0x0072756F ;chaine "our",0
push dword "Bonj"
; met Bonjour dans la pile, on peut aussi le faire avec des
; sub esp,8 ;reserve 8 octets
; mov [esp],dword "Bonj"
; mov [esp+4],dword 0x0072756F
call printf
ret
segment data public use32 class=DATA
Titre db "Affichage des messages :",0

A+
Afficher les 13 commentaires