TITLE Print String Backwards Program INCLUDE Irvine16.inc .data myString BYTE "Hello, World!" stringBkwd BYTE 0ah,0ah,0dh,"Here is the same string backwards: ",0ah,0ah,0dh dblSpc BYTE 0ah,0ah,0dh .code main PROC mov ax,@data ; mov ds,ax ; mov si,OFFSET myString ;mov offset of myString to si mov cx,LENGTHOF myString;set loop counter stringFwd: ;print string forwards mov ah,2 ; mov dl,[si] ; int 21h ; add si,1h ; loop stringFwd ; mov ah,40h ; mov bx,1 ; mov cx,SIZEOF stringBkwd; mov dx,OFFSET stringBkwd; int 21h ; mov cx,LENGTHOF myString;set loop counter sub si,1h ;position si at end of string stringBwd: ;print string backwards mov ah,2 ; mov dl,[si] ; int 21h ; sub si,1h ; loop stringBwd ; mov ah,40h ;print double space mov bx,1 ; mov cx,SIZEOF dblSpc ; mov dx,OFFSET dblSpc ; int 21h ; exit main ENDP END main
|