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

x86 16-bits Assembleur Discussion :

Récupérer un mot d'un fichier texte


Sujet :

x86 16-bits Assembleur

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Récupérer un mot d'un fichier texte
    Bonjour,

    J'ai le même problème qu'ici : http://www.developpez.net/forums/d10...re-fichier-txt.
    Je veux ouvrir un fichier pour prendre un mot dedans. Or, j'ai essayé de mettre ton code dans mon projet et essayé de le modifier mais ça ne marche pas. Il me dit que "push word 0b800h", il ne connait pas. Est-ce que tu pourrais détailler un peu plus ton code s'il-te-plaît ?

    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
    30
    31
    32
    33
    34
           puh word 0b800h ; ça correspond à quoi ?
            pop es
            xor di,di
            call read
            mov si,buffer
            mov ah,56h
            call puts
            ret
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    puts: ; cela sert à quoi ?
    ;si=string
    @@:
            lodsb
            cmp al,0
            je @f
            stosw
            jmp @b
    @@:
            ret
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    read:
            mov ax,3D00h ; ouverture du fichier
            mov dx,fichier
            int 21h
            mov bx,ax ;important, raison de la non lecture car le handle passe de ax vers bx
            mov dx,buffer ;il faut lire dans le buffer
            mov ah,3Fh         ;lecture du fichier qui contient "test"
            mov cx,200
            int 21h
            ret
     
    fichier db "C:\Users\Ben\Desktop\Pendu\test.txt$",0   
    buffer  rb 200 ;ici, on lit les données du fichier ; emu8086 ne connaît pas rb
            db 0  ;important,
    Je sais que je demande beaucoup mais ça m'aiderait vraiment car je dois rendre mon projet dans un peu plus d'une semaine, et ça sera la seule fois où je ferai de l'assembleur.

    Merci.

  2. #2
    Membre éclairé
    Avatar de edfed
    Profil pro
    être humain
    Inscrit en
    Décembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : être humain

    Informations forums :
    Inscription : Décembre 2007
    Messages : 476
    Points : 701
    Points
    701
    Billets dans le blog
    1
    Par défaut
    ici, on est pas là pour vous donner des bonnes notes, on est sympa on vous aide, mai au final, c'est pareil, vous avez besoin pour avoir une bonne note sans avoir fait le moindre effort. moi je dit non. faites marcher votre matière grise.

    si tu tappes 0b800h dans google, il y a de fortes chances pour qu'il te reponde adresse de la mémoire video en mode texte.

    puts, si tu reflechis (le but de faire des etudes, c'est de reflechir), tu comprendras qu'il s'agit d'afficher une chaine de caractères. put string en gros.

Discussions similaires

  1. Réponses: 10
    Dernier message: 29/04/2006, 10h40
  2. Trouver un mot dans un fichier texte
    Par godik dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 10/03/2006, 14h31
  3. Comment récupérer le contenu de plusieurs fichiers textes ?
    Par calimero2611 dans le forum Langage
    Réponses: 9
    Dernier message: 19/02/2006, 15h45
  4. Réponses: 2
    Dernier message: 16/01/2006, 19h34
  5. Réponses: 4
    Dernier message: 16/12/2005, 17h43

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