Précédent   Forum du club des développeurs et IT Pro > Autres langages > Assembleur
Assembleur Forum d'entraide Assembleur. Avant de poster -> F.A.Q Assembleur Tutoriels Assembleur
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 28/04/2012, 18h35   #1
ayen king
Invité de passage
 
Homme Fleury
Étudiant
Inscription : décembre 2011
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Fleury
Localisation : Algérie

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : décembre 2011
Messages : 1
Points : 0
Points : 0
Par défaut Saisir un nombre sans écho à l'écran et l'afficher

Salut à tout le monde,

je suis débutant mais j'ai essayé un code qui me permet de test un caractère s'il est un chiffre ou pas mais en comparant son code ASCII à celui du zéro il m'affiche une erreur

Alors voici mon code:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ST_UN_CHIFFRE :
                    ; indique si le code ASCII passe en param`etre est
                    ; celui d’un chiffre
 
                push bp
                mov bp, sp
             cmp WORD PTR [bp+4], '0' ;c'est qu'il m'affiche l'erreur
                jl n_est_pas_un_chiffre
             cmp WORD PTR [bp+4], '9' ;ici aussi
                jg n_est_pas_un_chiffre
                mov ax, 1
                pop bp
                ret
 
n_est_pas_un_chiffre:
            mov ax, 0
            pop bp
            ret
Aidez moi svp
ayen king est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2012, 14h24   #2
Prof
Membre confirmé
 
Inscription : juin 2002
Messages : 113
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : juin 2002
Messages : 113
Points : 217
Points : 217
Bonjour.

L'explication est toute simple :
'0' est un octet ( BYTE en anglais ), et non un mot ( WORD ).

Il faut donc écrire : cmp BYTE PTR [bp+4], '0'
et : cmp BYTE PTR [bp+4], '9'
Prof est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h21.


 
 
 
 
Partenaires

Hébergement Web