DOSSEG .MODEL Small .STACK 100h .DATA message1 db 'Envoi du caractere sur COM2 $' emis db 0dh,0ah,'Caractere emis sur COM2 $' nemis db 0dh,0ah,'Caractere non emis sur COM2 $' com2 EQU 2f8h ACKEMI EQU 1 NACKEMI EQU 0 te dw 0fh statut db 0 .CODE DEBUT: mov AX,@DATA mov DS,AX mov dx,OFFSET message1 mov ah,9 int 21h tourn: mov dl,0ffh mov ah,6 int 21h jz tourn cmp al,1bh je fin push ax call emetchar cmp statut,NACKEMI je ns mov dx,OFFSET emis mov ah,9 int 21h jmp vs ns: mov dx,OFFSET nemis mov ah,9 int 21h vs: jmp tourn FIN: mov AH,04Ch int 21h emetchar proc mov te,0fh mov statut,NACKEMI boucle: mov dx,com2+5 in al,dx and al,01100000b ;masque cmp al,01100000b jnz il pop cx ;d‚pilage de l'adresse de ax dans cx pop ax ;d‚pilage de ax push cx ;adresse de ax remit dans la pile mov dx,com2 out dx,al mov statut,ACKEMI jmp ils il: dec te cmp te,0 je boucle ils: ret emetchar endp END DEBUT