Précédent   Forum du club des développeurs et IT Pro > Autres langages > Assembleur > x86 32-bits / 64-bits
x86 32-bits / 64-bits Architectures x86 32/64 bits et leurs outils (assembleurs, debuggers, émulateurs...)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 24/04/2012, 02h22   #1
fred_sell
Invité de passage
 
Avatar de fred_sell
 
Inscription : juin 2009
Messages : 104
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 104
Points : 4
Points : 4
Par défaut une interruption avec MASM

bonsoir

je voudrais tester avec MASM l'interruption 63h/AH=03h, mais je ne sais pas l'erreur que je fait (ça se plante à l’exécution)

voilà le programme :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
.386
.model flat,stdcall
option casemap:none
 
include masm32rt.inc
 
.data
buffer byte 32 DUP(0)
 
.code
start:
	mov esi,offset buffer
	mov ah,3
	int 63h
 
	inkey "appuyez sur une touche pour sortir..."
	exit
 
end start
en debogant, j'ai vu en executant la ligne "int 63" qu'il me donne l'erreur suivante : Access violation when reading [FFFFFFFF] - passed to application

la doc de l'interruption est :
Citation:
BW-TCP - TCPIP.SYS - GET IP ADDRESS

AH = 03h
DS:SI -> buffer for DWORD IP address (big-endian)

Return:
AX destroyed
CF clear if successful CF set on error
avant de faire ce post, j'ai lu le lien ici, mais je n'ai pas beaucoup avancé !

Quelle est l'erreur que j'ai fait ? et est ce que j'ai oublié un detail que je n'ai pas cité ?

merci
fred_sell est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/04/2012, 00h19   #2
edfed
Membre chevronné
 
Avatar de edfed
 
être humain
Inscription : décembre 2007
Messages : 471
Détails du profil
Informations professionnelles :
Activité : être humain

Informations forums :
Inscription : décembre 2007
Messages : 471
Points : 619
Points : 619
où est l'initialisation du segment DS?
__________________
http://www.pending.me.uk/nmc/bla_1356091200.png
Vivement 21/12/2012
edfed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/04/2012, 08h46   #3
fred_sell
Invité de passage
 
Avatar de fred_sell
 
Inscription : juin 2009
Messages : 104
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 104
Points : 4
Points : 4
apparemment il n'y en a pas ici
j'ai déjà initialisé le DS mais il se peut que je l'ai mal fait car le "int 63" ne marchait pas

pourriez vous me corriger le code pour qu'il marche ?
fred_sell est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h09.


 
 
 
 
Partenaires

Hébergement Web