字符串输入逆序输出(回车换行符)

 DATA  SEGMENT

              DB        512 DUP('$')            ;定义可输入的字符个数
         BUF  DB        '$'
        CRLF  DB        0DH,0AH,24H ;回车换行符
        DATA  ENDS

        CODE  SEGMENT
              ASSUME    CS:CODE,DS:DATA
      START:  MOV       AX,DATA
              MOV       DS,AX

              MOV       BX,OFFSET BUF           ;指针指向待显示字符串尾部
      AGAIN:
              MOV       AH,01       ;输入字符
              INT       21H
              CMP       AL,0DH      ;是回车吗
              JE        DISP        ;是,转显示
              DEC       BX          ;指针减1
              MOV       [BX],AL     ;存入输入的字符
              JMP       AGAIN       ;继续输入

       DISP:
              MOV       AH,09       ;显示
              MOV       DX,OFFSET CRLF          ;回车换行
              INT       21H
              MOV       DX,BX       ;定位待显示字符串首地址
              MOV       AH,09
              INT       21H         ;显示

              MOV       AH,4CH      ;DOS返回
              INT       21H
        CODE  ENDS
              END       START

 

posted @ 2015-01-05 12:32  remly  阅读(635)  评论(0编辑  收藏  举报