Bonjour , je débute en ASM et je viens d'écrire ce petit programme qui demande à l'utilisateur d'appuyer sur une touche du clavier et lui affiche la touche sur la quelle il a appuyé.Tant qu'il n'a pas appuyé sur ECHAP le programme boucle.
J'utilise MASM32v10 et pour la compilation et édition de liens , j'utilise la séquence de commande suivante se trouvant dans le /BIN de masm32 ::
- ml /c mon_fichier.asm
- link16 mon_fichier
Il ne restera plus qu'à executer.
Source / Exemple :
.MODEL SMALL
;Creation d'une pile de 256 octets
.STACK 100h
;Les donnees du programme
.DATA
message db "Hello!",10,13,"$"
message2 db 10,13,"Appuyez sur une touche :$"
message3 db 10,13,"Vous avez appuyez sur :$"
quitter db 10,13,"Fermeture du programme , By3 bYe$"
.CODE
.8086
debut: ;inclusion des donnees necesaire au programme
MOV AX,@data
MOV DS,AX
;Affichage message debut
MOV DX,OFFSET message
MOV AH,09h
INT 21h
Demande:
;;Affichage message demande frappe
MOV DX,OFFSET message2
MOV AH,09h
INT 21h
;Attente frappe touche
MOV AH,01h
INT 21h
;on range le caractere dans bl
mov bl, al ;
;Affichage message vous avez appuyez
MOV DX,OFFSET message3
MOV AH,09h
INT 21h
;on copie notre caractere dans dl
MOV DL,BL
;On affiche le caractere present dans dl
MOV AH,2h
INT 21h
;;On compare bl a la touche ECHAP
CMP bl,1Bh
JNZ Demande
JMP Quit
Quit:
;;Affichage du message de fin
MOV DX,OFFSET quitter
MOV AH,09h
INT 21h
;;fin du programme et retour au dos
MOV AH,4Ch
INT 21h
END debut
Conclusion :
Je suis ouvert à toutes remarques , critiques , et optimisation de codes.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.