;input only lower case chars, print as upper case ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; .model small .586 .stack 100h ;Set maximum stack size to 256 bytes .data msg db "Begin Entering characters!", 0ah, 0dh, "$" .code START: mov ax, @data ;ax <-- data segment start address mov ds, ax ;ds <-- initialize data segment register mov dx, offset msg mov ah, 09h int 21h ; print message to screen LP1: mov ah, 06h mov dl, 0FFh int 21h ; check if character available je LP1 ; keep looping until character is ready cmp al, 'a' jb skip1 cmp al, 'z' ja skip1 and al, 0DFh mov dl,al mov ah,02 int 21h jmp lp1 skip1: cmp al,03 jne LP1 EXIT: mov ax, 4c00h ;ax <-- 4c DOS 21h program halt function int 21h ;DOS service interrupt END START