Précédent   Forum du club des développeurs et IT Pro > Autres langages > Autres langages > D
D Forum d'entraide sur la programmation en langage D
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 22/09/2011, 18h47   #1
ahoff
Invité régulier
 
Inscription : avril 2011
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2011
Messages : 37
Points : 9
Points : 9
Par défaut Problème D -ASM

Bonjours,

je bloque actuellement sur un problème dont la réponse est surement simple, mais que je n'ai pus trouver sur internet.

je cherche a utiliser du code assembleur dans un embrayons de programme, voici le code
Code :
1
2
3
4
5
6
asm
    {
	mov AX,12h  ;
        int 10h	  ;
    }
et le compilateur m'affiche "end of instruction",
j'ai essayé de commenter une ligne puis l'autre, sans succès.

Merci d'avance
ahoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2011, 02h02   #2
bioinfornatics
Membre éprouvé
 
Jonathan MERCIER
Inscription : mars 2009
Messages : 338
Détails du profil
Informations personnelles :
Nom : Jonathan MERCIER
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : mars 2009
Messages : 338
Points : 417
Points : 417
Je vais pas t'être d'une grande aide (2h du mat ), mais voici au moins un exemple
Code :
1
2
3
4
5
6
asm
{
    mov EAX, FS:4;
    mov bottom, EAX;
}
et un lien
bioinfornatics est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/09/2011, 09h53   #3
ahoff
Invité régulier
 
Inscription : avril 2011
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2011
Messages : 37
Points : 9
Points : 9
Oui visiblement une première erreur que j'ai faite est de mettre de l'hexa, dans ce cas 12 et 10 deviennent respectivement 18 et 16,

cependant en faisant cela ça compile mais le programme plante

concernant ton exemple qu signifie ?
ahoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/09/2011, 00h59   #4
bioinfornatics
Membre éprouvé
 
Jonathan MERCIER
Inscription : mars 2009
Messages : 338
Détails du profil
Informations personnelles :
Nom : Jonathan MERCIER
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : mars 2009
Messages : 338
Points : 417
Points : 417
c'est un label pour un goto, le code est tronqué

sinon tu as essayé avec 0x12 ?
bioinfornatics est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 08h52   #5
ahoff
Invité régulier
 
Inscription : avril 2011
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2011
Messages : 37
Points : 9
Points : 9
Oui et effectivement ça marche aussi.

merci pour tes réponses
ahoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 12h45   #6
ahoff
Invité régulier
 
Inscription : avril 2011
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2011
Messages : 37
Points : 9
Points : 9
heu sinon les lignes de code assembleur que j'ai mis provoquent une erreur de type "Access Violation",
sur digital mars j'ai pus voire que c’était du au fait que DMD compilais pour du 32bit,
et que Windows bloquais les interruptions bios, comment contourner ce problème ?
ahoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 12h59   #7
Niark13
Membre éprouvé
 
Inscription : mai 2005
Messages : 223
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 223
Points : 425
Points : 425
Mes souvenirs de l'assembleur sont très lointains, mais il me semble que l'interruption 10h c'est pour faire appel au bios en mode réel, ce qui est incompatible avec un le mode protégé 32bits.

Demande sur le forum asm, mais je crains qu'il ne te faille remplacer les appels au BIOS par les appels systèmes équivalents.
Niark13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 12h50   #8
ahoff
Invité régulier
 
Inscription : avril 2011
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2011
Messages : 37
Points : 9
Points : 9
Merci pour toutes vos réponses je crois que cette fois j'ai eu toutes les réponses a mes questions
ahoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 01h19.


 
 
 
 
Partenaires

Hébergement Web