Main Menu

Home
MASM
C
C/MASM
Java
Google
 
Home arrow MASM arrow Read Char 2
Read Char 2
TITLE Read Char Progam

INCLUDE Irvine16.inc
.data
entChar  BYTE "Enter a character: "
charEnt  BYTE ?
entN  BYTE 0ah,0ah,0dh,"Number of times to print (1-9): "
nTimes  BYTE ?
dblSpc  BYTE 0ah,0ah,0dh


.code
main PROC
Again:
 mov ax,@data   ;prompt user for character
 mov ds,ax    ;
       ;
 mov ah,40h    ;
 mov bx,1    ;
 mov cx,SIZEOF entChar ;
 mov dx,OFFSET entChar ;
 int 21h     ;
 
 mov ah,1    ;read character from standard input
 int 21h     ;
 mov charEnt,al   ;
 
 mov ax,@data   ;prompt user for number of prints
 mov ds,ax    ;
       ;
 mov ah,40h    ;
 mov bx,1    ;
 mov cx,SIZEOF entN  ;
 mov dx,OFFSET entN  ;
 int 21h     ;
 
 mov ah,1    ;read number of prints from standard input
 int 21h     ;
 mov nTimes,al   ;
 
 mov ah,40h    ;print double space
 mov bx,1    ;
 mov cx,SIZEOF dblSpc ;
 mov dx,OFFSET dblSpc ;
 int 21h     ;
 
 mov cx,9    ;max number of prints
 
 sub nTimes,30h   ;convert hex number to decimal
convert:cmp nTimes,0h  ;
 je loopOut    ;
 mov ah,6    ;
 mov dl,charEnt   ;
 int 21h     ;
 sub nTimes,1h   ;
loop convert    ;

loopOut:

 mov ah,40h    ;print double space
 mov bx,1    ;
 mov cx,SIZEOF dblSpc ;
 mov dx,OFFSET dblSpc ;
 int 21h     ;
 
loop Again

 exit
main ENDP
END main
 
< Prev   Next >
© 2009 SourceRip
Joomla! is Free Software released under the GNU/GPL License.