Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1376 connectés 

  FORUM HardWare.fr
  Programmation
  ASM

  Convertir un nombre Hexa en ASCII

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Convertir un nombre Hexa en ASCII

n°1264816
bmjbe
Posté le 12-12-2005 à 18:49:06  profilanswer
 

Bonjour... je voudrais savoir comment je pourrai convertir un nombre Hexa en code ascii
 
le code hexa sera taper au clavier et cette valeur sera retournée mais affiché par son correspondant Ascii
 
Merci D'avance...

mood
Publicité
Posté le 12-12-2005 à 18:49:06  profilanswer
 

n°1264826
Ace17
Posté le 12-12-2005 à 19:04:40  profilanswer
 

C'est comme pour le decimal :  
365 = 100 * 3 + 10 * 60 + 5
Par exemple, 0x47 ca vaut :
0x10 * 0x04 + 0x7
Si ton gars il tape deux caracteres au clavier : e1, e2 ben tu prends les nombres associes aux chiffres tape ( '1' -> 1,  ....   '9' ->,    'a'->10,  .... 'f'->15 ) et tu appliques la formule :
e1 * 16 + e2
Tu as la valeur du nombre. Libre a toi de l'afficher en ascii si tu veux.

n°1264835
bmjbe
Posté le 12-12-2005 à 19:08:27  profilanswer
 

la valeur oui d'accord... moi ce que je veux c'est de l'afficher en ASCII je sais pas comment faire, par exemple si l'utilisateur tape : 41
mon programme devra afficher le caractére : A

n°1264845
Ace17
Posté le 12-12-2005 à 19:23:29  profilanswer
 

c'est l'affichage qui pose probleme alors c'est pas la conversion. Dans ce cas, quel systeme, quel langage?

n°1264865
bmjbe
Posté le 12-12-2005 à 19:44:56  profilanswer
 

Ben sous Xp ( donc simulation DOS ) et en langage Assembleur

n°1264891
Ace17
Posté le 12-12-2005 à 20:54:35  profilanswer
 

tu utilises quoi pour afficher d'habitude? l'int 21?


Message édité par Ace17 le 12-12-2005 à 20:54:52
n°1264906
bmjbe
Posté le 12-12-2005 à 21:13:07  profilanswer
 

oui l'int 21 ( celle du dos... )

n°1265089
Ace17
Posté le 12-12-2005 à 23:06:54  profilanswer
 

Ben dans ce cas :
mov ah, 02h
mov dl,  = ton caractere que tu as calcule
int 21h

n°1265642
bmjbe
Posté le 13-12-2005 à 16:16:36  profilanswer
 

oui merci ta méthode fonctionne... mais je n'arrive pas a convertir mon nombre hexa en décimal pour l'afficher en ASCII...
 
HELPPPP :'(

n°1266281
db__
spécialiste de l'à peu près
Posté le 14-12-2005 à 12:58:18  profilanswer
 

par exemple
soit 41h entré
ah = '4' soit le caractère 4
al = '1' soit le caractère 1
mov bx, ax
sub bx, 3030h ;transforme le '4' en 4 et le '1' en 1
shl bh, 4        ;  soit 16 * 4
or bl, bh        ; code recherché en binaire soit 41h ou 65 décimal
bl est le code ascii à afficher avec la fonction int 21h et les paramètres dans les bons registres.
add bl, bh donne le même résultat (dans ce cas)
le 0 est codé 30h le 9 39h donc pour avoir un nombre il suffit d'oter 30h à son code ascii

mood
Publicité
Posté le 14-12-2005 à 12:58:18  profilanswer
 

n°1266347
bjone
Insert booze to continue
Posté le 14-12-2005 à 14:11:48  profilanswer
 

tu fais une table "0,....,9,a,...,f"
et tu découpes ta valeur par pavés de 4 bits qui seront les indices dans cette table.

n°1266563
Ace17
Posté le 14-12-2005 à 17:01:25  profilanswer
 

bmjbe a écrit :

oui merci ta méthode fonctionne... mais je n'arrive pas a convertir mon nombre hexa en décimal pour l'afficher en ASCII...
 
HELPPPP :'(


Attends : t'as un nombre hexa, tu veux l'afficher en ASCII. Que vient faire le decimal dans l'histoire?

n°1267173
db__
spécialiste de l'à peu près
Posté le 15-12-2005 à 13:01:10  profilanswer
 

Bonjour
je me suis un peu trompé en oubliant les chiffres a à f et A à F
donc
      sub bx,3030h
      cmp bl, 9h
      jc lbl1
      sub bl, 7h
      cmp bl, 10h
      jc lbl1
      sub bl, 20h
lbl1: cmp bh, 9
      jc lbl2
      sub bh, 7
      cmp bh, 10h
      jc lbl2
      sub bh, 20h
lbl2: or bl, bh
j'espère ne pas avoir fais d'erreur cette fois-ci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASM

  Convertir un nombre Hexa en ASCII

 

Sujets relatifs
[RESOLU][SH] Compter le nombre d'occurences d'un caractère....division, reste et racine de nombre en tableaux
Convertir une chaine de caractère en caractère simple?recherche nombre premier
Xml / ISO et python qui veut pas des caractères non ascii [Résolu]Compter le nombre de ligne dans un fichier texte sous Windows
[Excel] Compter un nombre de 0 contigues, la suite de 0 la plus longuenombre max de copie caché lors d'un envoie de mail.
convertir '' en NULL sous access[Résolu] Fonction Execlp avec nombre parametres variable
Plus de sujets relatifs à : Convertir un nombre Hexa en ASCII


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR