本文讲述如何编写一子程序编写一子程序输出反转字符

 STACKS   SEGMENT  STACK
         DW     100H DUP(?)
         TOP    LABEL WORD
         STACKS ENDS            --定义栈

DATAS    SEGMENT
         TABLE  DB 100H DUP(?)
     DATAS  ENDS            --定义变量

CODES    SEGMENT
         ASSUME CS:CODE,SS:STACKS,DS:DATAS
         MAIN PROC FAR

         MOV AX,STACKS
         MOV SS,AX
         LEA SP,TOP
         MOV AX,DATAS
         MOV DS,AX

     MOV CX,000DH  --为输出设置一个结束标志,当遇到回车时结束输出
         PUSH CX
         MOV CX,40
L1:      MOV AH,1
         INT 21H
     CMP AL,0DH     --判断输入的值是否是回车符,如果是,则表示输入结束,跳转至L2
     JZ  L2
     MOV AH,0
     PUSH AX
     LOOP L1        --循环输入

     MOV CX,40
L2:      POP DX
         CMP DL,0DH     --判断是否遇到回车时结束输出
     JZ  EXIT
         MOV AH,2
     INT 21H
     LOOP L2

EXIT:
     MOV AH,4CH
        INT 21H
     MAIN   ENDP

   CODES  ENDS
   END   MAIN