1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| ;----------------- Definition des données ------------------
SEG_DON Segment Para Public 'data'
;------------------Les variables (DB, DW, DD, DQ, DT)-------
message db 13,10,'BONJOUR!!'
db 13,10,"Ecrivez une chaine de caracteres,'$'
chaine db 100,0,100 dup(' ') ;100 caractres maximum
dos equ 21h
CrLf db 13,10,'$'
SEG_DON Ends
;------------------fin du segment---------------------------
;------------------------ Code -----------------------------
SEG_CODE Segment Para Public
Assume CS:SEG_CODE, DS:SEG_DON, ES:SEG_DON, SS:SSTACK
start Proc Far
mov ax,SEG_DON ;adresse du Segment de données
mov ds,ax ;initialisation adresse Segment
mov es,ax
mov ah,9 ;fonction envoi d'un message a l'écran
lea dx,message ;adresse du message
int dos ;appel
ms-dos
mov ah,10 ;fonction lecture clavier
lea dx,chaine ;adresse de la chaine saisie
int dos ;appel
ms-dos
lea di,chaine ;adresse du 1er caractère de la chaine saisie
or byte ptr [di],20h ;conversion du caractre en minuscule
mov al,32h ;caractère ' ' en hexadecimal = 32h
scasb ;comparaison
jz cond1 ;saut à cond1 si caractère est ' ' (espace) |
Partager