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

  FORUM HardWare.fr
  Programmation
  ASM

  afficher un caractére entrez par l'utilisateur

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

afficher un caractére entrez par l'utilisateur

n°1242958
bmjbe
Posté le 10-11-2005 à 11:14:58  profilanswer
 

Bonjour, voila je suis un gros newbie en assembleur lol et je bloque déja pour une bete intrustion :(
 
Je voudrais recuperer un caractére entrez par l'utilisateur et l'afficher malheuresement je n'y arrive pas , si quelqu'un pourrait m'aider ca serait sympa merci d'avance...
 
Voici mon script :
 
 
.MODEL SMALL
.STACK
 
;---------------
 
.DATA
 
char  db "Veuillez entrer un caractere : $"
char2 db "Caractere entre : $"
 
;---------------
 
.CODE
 
MAIN proc near
 
MOV ax,@DATA   ;obligatoire
MOV ds,ax      ;obligatoire
 
LEA dx,char    ;affichage char
MOV ah,09h
INT 21h
 
 
MOV ah,08h     ;attente de carac
INT 21h
 
LEA dx,char2   ;affichage char2
MOV ah,09h
INT 21h
 
LEA dl,al       ;:>>> probléme a ce niveau ci :S
MOV ah,06h
INT 21h
 
MOV ah,4Ch     ;obligatoire
INT 21h        ;obligatoire
 
MAIN endp
 
;---------------
 
END MAIN

mood
Publicité
Posté le 10-11-2005 à 11:14:58  profilanswer
 

n°1243071
db__
spécialiste de l'à peu près
Posté le 10-11-2005 à 12:22:39  profilanswer
 

Bonjour
Je n'ai pas fait d'assembleur dos depuis au moins 10 ans donc je peux me tromper.
Il est probable que le caractère entré par l'utilisateur est renvoyé dans al par l'instruction int 21h. Les registres étant très volatils (surtout al, ax, eax) il est probable que son contenu soit modifié par le int 21h suivant (celui qui affiche char2). il vaut donc mieux faire un push ax pour le sauvegarder puis faire un pop dx au lieu de lea dl, al
il est possible aussi de le sauvegarder dans bl, bh, cl, ch si on est sure que la int 21h ne modifie pas ces registres, il est aussi possible de réserver une place pour un octet dans le segment data et de s'en servir pour sauvegarder le dit caractère.
noter qu'il vaut mieux utiliser lea pour charger une adresse effective plutot que pour charger un registre.

n°1243088
bmjbe
Posté le 10-11-2005 à 12:33:54  profilanswer
 

ta pas faut, la valeur de AL est bien modifier alors j'ai sauvegarder la valeur de AL dans BL et je demande d'afficher MOV DL,BL, mais ceci ne fonctionne tjr pas :'(
 
Mais sinon comment on fait un Push AX et faire un POP dx ?

n°1244576
bmjbe
Posté le 13-11-2005 à 13:14:00  profilanswer
 

c'est bon les gars merci j'ai trouver :)


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

  afficher un caractére entrez par l'utilisateur

 

Sujets relatifs
[VBA] afficher un graphique dans un "form"[JS] afficher/masquer : mon_tableau has no properties
Comment raccourcir la string de 3 caractere ?Caractère "%" interprêté comme un symbole dans un batch...
Afficher le contenu d'1 fichier XML dans un flash - Master NooB insideQuel langage pour afficher des images sur PDA ?
récupérer le chemin du repertoire utilisateur [résolu]Debutant - Comparaison de chaine de caractère
compter le nombre de fois que le mot est dans une chaine de caractére:XSL-FO un caractère sur chaque nouvelle ligne
Plus de sujets relatifs à : afficher un caractére entrez par l'utilisateur


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