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

  FORUM HardWare.fr
  Programmation
  ASM

  ASM - hexa à ASCII

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ASM - hexa à ASCII

n°1677306
pepito17
Posté le 27-01-2008 à 02:48:06  profilanswer
 

Bonjour tout le monde,  
 
j'aimerai savoir comment faire pour transformer un chiffre hexa en code ascii.
 
Les chiffres hexa seront entré au clavier , transofrmé en ascii et afficher en ascii.
 
J'y ai beaucoup reflechi, j'ai reussi a le faire de l'ascii en hexa mais dans l'autre sens pas moyen...
 
Aidez moi svp.
 
je programme en .386
 
MERCI D'AVANCE A TOUS !!

mood
Publicité
Posté le 27-01-2008 à 02:48:06  profilanswer
 

n°1677618
dap++
Script kiddie
Posté le 27-01-2008 à 22:54:47  profilanswer
 

Normalement ce que tu liras au clavier ce sera les codes ASCII qui représentent les chiffres donc tu pourras les afficher directement. Sinon pour convertir un chiffre en ASCII tu peux faire OR 30h et dans le sens inverse AND 0Fh.


---------------
dap.developpez.com
n°1704548
debeman
Posté le 19-03-2008 à 12:33:53  profilanswer
 

Je dois faire un programme similaire, je lis au clavier une chaine de caractere dans laquelle se trouve un nombre coder en hexa, je le recupere et renvoie l'entier correspondant, ce n'est pas un probleme
Ensuite ( sans tricher et renvoyer ce que j'ai rentrer directement ) je dois renvoyer ce nombre en une chaine de caractere correspondant au code en hexa
j'arrive sans probleme a revenir au code ascii : il suffit de recupere le reste de la division euclidienne par 16 de ton nombre et tu recupere les dernier caractere de ton code ascii ( and $15,%ebx ou ebx contient ton nombre et ensuite tu divise par 16 ton nombre sotcker dans un autre registre et tu recommence : shr $4,%eax il faut juste ajoute 48 ou 55 il me semble pour avoir soit un chiffre ou une lettre )
Ensuite je dois sauvegarder le code ascii obtenu et continuer jusqu'a ce que mon nombre soit egal a 0
pour cela j'ai reserver dans le .bss de la memoire, j'ai l'adresse, je sais egalement a l'avance combien de caractere j'ai a y entrer donc je m'arrange pour que le dernier caractere que je vais mettre dans cette zone mémoire ( qui correspond au 1er caractere a afficher) soit a cette adresse et je met les autres dans les adresses suivantes.
seul probleme : quand j'appelle printf, il ne m'affiche que le caractere qui se trouve au debut de la zone mémoire et pas tous les caracteres : a mon avis il ne sait pas que c'est une chaine de caractere et je vois pas comment m'en sortir ^^
( je programme en asm gnu )

n°1704602
dap++
Script kiddie
Posté le 19-03-2008 à 14:05:36  profilanswer
 

Montre ton code ?


---------------
dap.developpez.com
n°1706327
debeman
Posté le 21-03-2008 à 20:05:28  profilanswer
 

eu c'est bon j'avais oublie le \0 a la fin de ma chaine ^^ forcement ca marchait pas trop


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

  ASM - hexa à ASCII

 

Sujets relatifs
[C/C++] Pb Ascii[fonction] pour convertir les accents et choses non ascii ?
Un convertisseur Decimal->Hexa "a l'envers"Code Asm pour réaliser un délais d'1 minute
[ASM]coder un strlen en asssembleur??Edition de fichier en Hexa et Checksum
Afficher code ASCII CProgrammer un system d'exploitation en C ? ou C++ ou ASM ? ou quoi ?
Afficher une image ne ASM.ASM: Conversion ascii > hexa > decimal
Plus de sujets relatifs à : ASM - hexa à ASCII


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