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 :

Erreur sous nasm


Sujet :

x86 16-bits Assembleur

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 138
    Points : 45
    Points
    45
    Par défaut Erreur sous nasm
    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
     
     
    [BITS 16]	
    [ORG 0x0]
    jmp _debut
     
     
    	msgBoot db 'Bienvenue dans BOOTOS !',13,10,0
     
    	 _debut:
    		mov ax,0x07C0
    		mov ds,ax
    		mov es,ax
    		mov ax,0x8000	
    		mov ss,ax
    		mov sp, 0xf000
    		mov ax, 0B800h		
    		mov bx, 0
    		move byte al,[msgBoot]
     
     
    	afficher_msg:
    		cmp al,0x00
    		je fin
    		mov Es:[Bx], byte ptr al
    		add bx, 2
    		mov byte al,[msgBoot]+2
    		jb afficher_msg
     
    	fin:
    		times 510-($-$$) db 144
    		dw 0xAA55
    		END
    mov Es:[Bx], Byte Ptr al =>coma or end of line expected

  2. #2
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mov Es:[Bx], byte ptr al     ; D'ou vient "ptr" ? Enlèves le pour voir
    K

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 138
    Points : 45
    Points
    45
    Par défaut
    Si je l'enleve (J'ai trouvé c asur le net) j'ai invalid combination of opcode and operands sur cette ligne et sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mov byte al,[msgBoot]+2

  4. #4
    Membre expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 851
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 851
    Points : 3 481
    Points
    3 481
    Par défaut
    Essaies avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mov byte al,[msgBoot+2]
    K

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 138
    Points : 45
    Points
    45
    Par défaut
    Toujours sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mov es:[bx], byte ptr al
    coma or end of line expected

  6. #6
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 930
    Points : 59 399
    Points
    59 399
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Vu que le registre al est spécifié dans l'instruction, l'assembleur sait déjà qu'il doit transférer un byte; il n'y a donc pas besoin de le lui répéter.

    Autre petit détail : les registres ds et es ayant la même valeur, il est inutile d'utiliser un segment-override (qui nécessite l'ajout d'un préfixe dans le code)

    En résumé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mov Es:[Bx], byte ptr al
    peut être simplifié en
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

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

Discussions similaires

  1. Erreur sous PHP MyAdmin (PMA database?)
    Par Matlight dans le forum Installation
    Réponses: 5
    Dernier message: 28/10/2010, 20h38
  2. Erreur sous firefox et non sous IE...
    Par soad029 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 18/08/2005, 11h39
  3. message d'erreur sous l'utilitaire IBconsole
    Par vbcasimir dans le forum Outils
    Réponses: 6
    Dernier message: 05/01/2005, 13h07
  4. découvrir les erreurs sous Mozilla
    Par rabobsky dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/12/2004, 21h51
  5. Personnaliser un rapport d'erreur sous Windows XP
    Par Neilos dans le forum Windows
    Réponses: 5
    Dernier message: 21/11/2003, 19h13

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