algorithme de somme
Répondre à la discussion
Affichage des résultats 1 à 16 sur 16

algorithme de somme



  1. #1
    Zone-x

    algorithme de somme


    ------

    bonjour je travail sur l'asembleur 8086 je voulais faire un programme qui fait mais j'ai trouvé probleme dans le code :

    .model small
    .stack 2048
    .data
    tab db 1,2,3,4,5,6,7,8,9,10
    message db 'resultat : $'
    s db 10 dup(0)
    .code
    .startup
    mov ax,@data
    mov ds,ax

    mov si,0 ;si=i
    mov cx,10
    mov al,0 ;al=s
    for: cmp cx,10
    ja endfor
    add al,tab[si]
    inc cx
    inc si
    jmp for
    mov s,al
    endfor:
    mov ah,09h
    mov dx,offset message
    int 21h
    mov ah,2
    mov dl,s
    int 21h
    ;fin
    mov ax,4c00h
    int 21h

    .exit
    end


    et merci

    -----
    Dernière modification par Zone-x ; 23/01/2013 à 16h26.

  2. #2
    Jack
    Modérateur

    Re : algorithme de somme

    je travail sur l'asembleur 8086 je voulais faire un programme qui fait
    C'est très clair.

    mais j'ai trouvé probleme dans le code
    Ah! C'est bête. Il ne doit pas fonctionner alors.

  3. #3
    Zone-x

    Re : algorithme de somme

    Citation Envoyé par Jack Voir le message
    C'est très clair.

    Ah! C'est bête. Il ne doit pas fonctionner alors.
    quoi j'ai rien compris ,tu dis que ce programme ne s'adapte pas avec le langage assembleur 8086??

  4. #4
    Jack
    Modérateur

    Re : algorithme de somme

    C'était ironique. Enfin, tu ne vois pas que tu ne termines même pas tes phrases. On ne sait rien de ton problème:
    - que fait ce programme ?
    - quel est le problème ?

  5. A voir en vidéo sur Futura
  6. #5
    Zone-x

    Re : algorithme de somme

    Citation Envoyé par Jack Voir le message
    C'était ironique. Enfin, tu ne vois pas que tu ne termines même pas tes phrases. On ne sait rien de ton problème:
    - que fait ce programme ?
    - quel est le problème ?
    le programme se compile mais lorsque je voulais afficher le resultat de la somme il n'affiche rien

  7. #6
    Jack
    Modérateur

    Re : algorithme de somme

    Citation Envoyé par Zone-x Voir le message
    le programme se compile mais lorsque je voulais afficher le resultat de la somme il n'affiche rien
    La somme de quoi?

  8. #7
    Jack
    Modérateur

    Re : algorithme de somme

    J'ai du mal à voir comment l'instuction "mov s,al" peut être exécutée ...

    Ton contrôle de la boucle d'addition est bizarre aussi. Tu démarres avec CX = 10, tu incrémentes CX à chaque tour et tu effectues le test de fin de boucle en comparant CX avec 10.

    Je ne vois pas non plus où tu construis la chaine de caractère à afficher à partir du résultat de la somme.
    Dernière modification par Jack ; 23/01/2013 à 23h36.

  9. #8
    Zone-x

    Re : algorithme de somme

    Citation Envoyé par Jack Voir le message
    J'ai du mal à voir comment l'instuction "mov s,al" peut être exécutée ...

    Ton contrôle de la boucle d'addition est bizarre aussi. Tu démarres avec CX = 10, tu incrémentes CX à chaque tour et tu effectues le test de fin de boucle en comparant CX avec 10.

    Je ne vois pas non plus où tu construis la chaine de caractère à afficher à partir du résultat de la somme.
    lasomme des elements de tableau

    oui si cx >10 on fait un saut vert le endfor ,c'est normal

    et pour le mov s,al le contenu de al sera dans s
    Dernière modification par Zone-x ; 24/01/2013 à 00h46.

  10. #9
    Zone-x

    Re : algorithme de somme

    pour l'afficage j'ai fait :
    mov ah,2
    mov dl,al
    int 21h

  11. #10
    Jack
    Modérateur

    Re : algorithme de somme

    lasomme des elements de tableau
    Je crois que j'avais compris come tu as dû le constater dans mes questions

    Par contre, tu n'as pas lu attentivement ces questions car tu réponds un peu à côté:
    oui si cx >10 on fait un saut vert le endfor ,c'est normal
    Il me semble d'avoir indiqué que tu démarrais avec CX=10. Je ne vois donc pas comment tu vas pouvoir faire toutes tes additions.

    pour l'afficage j'ai fait :
    mov ah,2
    mov dl,al
    int 21h
    Oui, ça j'avais compris. Mais ma question ne portait pas sur la fonction qui allait afficher, mais sur ce que tu voulais afficher

  12. #11
    Zone-x

    Re : algorithme de somme

    bon j'ai changé en mov cx,0 comme initialisation mais ca n'as rien changé
    Citation Envoyé par Jack Voir le message
    Il me semble d'avoir indiqué que tu démarrais avec CX=10. Je ne vois donc pas comment tu vas pouvoir faire toutes tes additions.
    je voulais afficher lasomme des elements de tableau
    Citation Envoyé par Jack Voir le message
    Oui, ça j'avais compris. Mais ma question ne portait pas sur la fonction qui allait afficher, mais sur ce que tu voulais afficher

  13. #12
    Jack
    Modérateur

    Re : algorithme de somme

    je voulais afficher lasomme des elements de tableau
    Encore une fois, j'ai bien compris, mais la fonction 2 de l'int21 attend un caractère alors que tu lui donnes une valeur numérique.

    Code:
    mov ah,09h 
    mov dx,offset message
    int 21h
    tu t'es demandé à quoi servait cet appel?

  14. #13
    Zone-x

    Re : algorithme de somme

    Citation Envoyé par Jack Voir le message
    Encore une fois, j'ai bien compris, mais la fonction 2 de l'int21 attend un caractère alors que tu lui donnes une valeur numérique.
    mais j'utilise la meme intterruption pour afficher une valeur dans l'ecran

    Code:
    mov ah,09h 
    mov dx,offset message
    int 21h

    tu t'es demandé à quoi servait cet appel?
    affichage de message ,dans mon cas c'est "resultat"
    Dernière modification par JPL ; 24/01/2013 à 22h54. Motif: correction de balise

  15. #14
    Jack
    Modérateur

    Re : algorithme de somme

    mais j'utilise la meme intterruption pour afficher une valeur dans l'ecran
    Pas du tout. Si tu étudies un peu plus attentivement la doc, tu verras que ça affiche LE CARACTERE CORRESPONDANT AU CODE ASCII passé en paramètre.

    Il faut donc que tu convertisses la somme en ASCII avant affichage comme je te le signalais déjà au message #7

  16. #15
    Zone-x

    Re : algorithme de somme

    Citation Envoyé par Jack Voir le message
    Pas du tout. Si tu étudies un peu plus attentivement la doc, tu verras que ça affiche LE CARACTERE CORRESPONDANT AU CODE ASCII passé en paramètre.

    Il faut donc que tu convertisses la somme en ASCII avant affichage comme je te le signalais déjà au message #7
    on faisant avant add s,30h

    bon dis moi s'il vous plait les fautes dans ce programme pour que je fais attention la prochaine fois

  17. #16
    Jack
    Modérateur

    Re : algorithme de somme

    on faisant avant add s,30h
    Ce serait trop simple.

    Tu ne comprends pas ce que j'essaye de te dire. Admettons que tu trouves 47h pour la somme, ce qui correspondant à 71 en décimal. Il faudra que tu construises une chaine avec les caractères ASCII du 7 et du 1, donc 37h et 31h plus le caractère $ qui marque la fin de la chaine.

Discussions similaires

  1. Convergence et limite de la somme d'une somme [séries]
    Par invite3acfbda2 dans le forum Mathématiques du supérieur
    Réponses: 17
    Dernier message: 16/10/2009, 09h17
  2. Réponses: 1
    Dernier message: 11/07/2009, 16h39
  3. Somme d'une somme
    Par invite6aee43d3 dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 11/11/2008, 12h12
  4. La somme de la somme d'une suite
    Par invite0f6f1e2d dans le forum Mathématiques du supérieur
    Réponses: 14
    Dernier message: 09/11/2008, 10h44
  5. somme d'une somme
    Par J.M.M dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 13/01/2008, 17h26