; File lab0_1.asm .MODEL SMALL .486 ; CONSTANTS CR EQU 13 LF EQU 10 ;define stack .STACK 100h ;define data segment .DATA buffer DB 80 DUP(?) prompt DB "Enter: " newline DB CR,LF, LF ;//////////////////////////////////////////////////////////// ; code segment .CODE ;//////////////////////////////////////////////////////////// start: mov ax,@data mov ds,ax ;//////////////////////////////////////////////////////////// ;display prompt on screen main: mov dx,OFFSET prompt mov cx,7 mov bx,1 mov ah,40h int 21h ;//////////////////////////////////////////////////////////// ; read from keyboard mov dx,OFFSET buffer mov cx,78 ; max # of bytes to read mov bx,0 mov ah,3Fh int 21h ; read from keyboard sub ax,2 jz done ;//////////////////////////////////////////////////////////// ;display data in buffer mov cx,ax mov bx,1 mov ah,40h int 21h ;//////////////////////////////////////////////////////////// ; display another space- to keep printout neat mov dx,OFFSET newline mov cx,3 mov ah,40h int 21h jmp main ;//////////////////////////////////////////////////////////// done: mov ah,4ch int 21h END start