extrn voir:far extrn stopvoir:far extrn crlf:far prog segment 'code' assume cs:prog,ds:prog deb: mov ax,cs mov ds,ax ;--------------------------------------------------------------- emetre : mov ah,06h ;interro clavier mov dl,0ffh ; int 21h ;non va voir si on a recu jz recept ;non va voir si on a recu cmp al,1bh ;esc --> fun du prg jz stop ;stop et fin push ax ;sauvegarde le carac mov dl,al ;prepare ecriture mov ah,2 ; int 21h ;ecriture du carac mov dx,3f8h ;@registre emission pop ax ;restaue le carac a emettre out dx,al ;emission du carac ;-----------------------------------------------RECEPTION-------- recept : mov dx,3fdh ;intero registre etat de recept in al,dx ;lit registre d'etar and al,01 ;isole le bit d'etat cmp al,01 ; jnz emetre ;buffer vide va en emetre mov dx,3f8h ;@registre de reception in al,dx ;transfert du carac recu dans al mov dl,al ;prepare affichage du car mov ah,2 ;affiche le carac int 21h jmp emetre ;va en intero clavier ;--------------------------------------------------------------- stop : mov ah,4ch int 21h prog ends end