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ésolution d'équation (+ * / - )


Sujet :

x86 16-bits Assembleur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Mai 2003
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 1
    Par défaut Résolution d'équation (+ * / - )
    Bonjour tout le monde.

    Bon. Voila, ceci est mon premier programme en assembleur. Il s agit de résoudre cette équation : x = (ab*b-cd*d)/(ac)(ac)

    J'ai tout écrit, compilé (avec le logiciel TASM) mais quand je regarde la valeur dans les registres elle est tout a fait erronée. Quelqu'un peut-il me montrer où est l'erreur; s'il-vous-plaît ? J'ai mis d*d car je n'ai pas trouvé le symbol « carré ».

    Code asm : 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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    .model small
    .stack 100h
     
    .data
     
     
    a1 dw -7
    b1 dw 32
    c1 dw -12
    d1 dw 45
     
    x1 dw ?
     
     
    .code
     
    main   proc
      mov  ax,@data
      mov  ds,ax
     
     
     
    mov  ax,b1
    imul ax
    mov  bx,a1
    mul  bx
    mov  cx,ax
    mov  ax,d1
    imul ax
    mov  bx,c1
    imul bx
    sub  cx,ax
    mov  ax,a1
    mov  bx,c1
    imul bx
    imul ax
    mov  bx,ax
    mov  ax,cx
    idiv bx
     
    mov  ax,04C00h
      int  21h
     
    main endp
    end main

  2. #2
    Membre chevronné
    Homme Profil pro
    .
    Inscrit en
    Juin 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2002
    Messages : 239
    Par défaut
    Bonjour.

    Le produit de deux mots est mis dans le double-mot formé par dx:ax.

    Quant à la dernière opération, c'est le double-mot dx:ax qui est divisé par le contenu de bx.

    Or, dans tout ce programme, le registre dx est superbement ignoré.

    D' où une erreur possible dans le résultat final ...

Discussions similaires

  1. Résolution d'équation x"=(f/m)x'+(A/mx²)-(k/m)x
    Par solid_sneak06 dans le forum MATLAB
    Réponses: 1
    Dernier message: 15/03/2007, 22h25
  2. Réponses: 2
    Dernier message: 27/02/2007, 12h08
  3. Résolution d'équations de plan
    Par _iri_ dans le forum Calcul scientifique
    Réponses: 1
    Dernier message: 29/10/2006, 17h29
  4. [VB6] Résolution d'équations
    Par joquetino dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/03/2006, 09h44

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