IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Problème de déclaration de segment avec use32


Sujet :

Assembleur

  1. #1
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut Problème de déclaration de segment avec use32
    J'aurais besoin d'aide sur les compilateurs. Voici un bout de code que j'ai fait rapidement pour utiliser le "use32"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    code segment
    use32
    assume cs:code
    assume ds:data
    assume ss:pile
    debut:
    mov ax,data
    mov ds,ax
    mov ecx,0f000h
    mov eax,ecx
     
    attente_sortie:
    xor ah,ah
    int 16h         ; attente d'une touche
    sortie:
    mov ah,4Ch
    int 21h         ; sortie du prog
    code ends
     
    data segment
    namefile db "test.txt",0
    data ends
     
    pile segment stack
    remplissage db 256 DUP (?)
    pile ends
     
    end debut
    Avec Tasm, il ne reconnaît pas "use32" et avec Fasm il le reconnait pas le "code segment". Est-ce que quelqu'un pourrait me donner une ligne de commande de compilation valable pour ce code (même si c'est avec Nasm).

    Merci d'avance

  2. #2
    Membre expérimenté

    Inscrit en
    Mai 2002
    Messages
    720
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 720
    Points : 1 594
    Points
    1 594
    Par défaut
    FASM compilera ca sans problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
            use32
     
    debut:
            mov ax,namefile
            mov ds,ax
            mov ecx,0f000h
            mov eax,ecx
     
    attente_sortie:
            xor ah,ah
            int 16h         ; attente d'une touche
    sortie:
            mov ah,4Ch
            int 21h         ; sortie du prog
     
    namefile db "test.txt",0
    Si tu tiens à utiliser différents segments, regarde les exempes disponibles sur le site de FASM...

    Bon développement !

  3. #3
    Membre actif

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    339
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 339
    Points : 279
    Points
    279
    Par défaut
    merci beaucoup mais je pensais qu'on était obligé de déclarer ces différents segments et surtout de déclarer le segment de pile (ce que je ne voit pas dans ton prog). Ma question est donc évidente : Dans quel cas doit-on déclarer les segments et surtout le segment de pile ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/10/2011, 11h14
  2. Problème de déclaration avec références croisées
    Par lpierard dans le forum Débuter
    Réponses: 2
    Dernier message: 20/11/2009, 15h10
  3. Problème de déclaration avec Quartz
    Par yaya0057 dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 28/09/2009, 09h50
  4. Réponses: 2
    Dernier message: 15/11/2007, 15h15
  5. Réponses: 11
    Dernier message: 29/04/2005, 19h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo