Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Invité régulier
    Homme Profil pro Inani Houssin
    Inscrit en
    avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Nom : Homme Inani Houssin
    Localisation : Maroc

    Informations forums :
    Inscription : avril 2012
    Messages : 12
    Points : 8
    Points
    8

    Par défaut Les fonctions récursives en assembleur

    bonsoir les amis , J’espère que vous allez bien
    Bon J'ai un exam en Ass , La semaine prochaine , et je m'entraîne actuellement à maîtriser les fonctions récursives mais je Trouve des ennuis ;
    par exemple :

    Code :
    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
    extern printf
     
    segment .data
    msg1 db "Le factoriel de %d est %d ",0
    n dd 3
     
    segment .bss
     
    re resd 2
     
     
    segment .text
     
    	global main
    main:
    	push dword [n]
    	call fac
    	add esp,4
     
    fac :	mov eax,[esp+4]
    	cmp eax,1
    	jnle fct_rap
    	mov eax,1
    	jmp fn
     
    fct_rap:dec eax
    	push eax
    	call fac
    	add esp,4
    	imul eax,[esp+4]
     
    fn :
    	ret
     
    	mov dword [re],eax
     
    	push dword [re]
    	push dword [n]
    	push msg1
    	call printf
    	add esp,12
     
     
    end :	mov eax,0
    	ret
    Je crois que c'est Correct , mais lorsque je l'éxecute je ne trouve rien ,
    !! Que ce que vous en pensez ?

  2. #2
    Invité régulier
    Homme Profil pro Inani Houssin
    Inscrit en
    avril 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Nom : Homme Inani Houssin
    Localisation : Maroc

    Informations forums :
    Inscription : avril 2012
    Messages : 12
    Points : 8
    Points
    8

    Par défaut

    bon , j'ai retrouvé la réponse
    , il me fallait que Je déplace la fonction apres la fonction de End

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •