;逆序输出字符串“BASED ADDRESSING”
DATA SEGMENT
STRING DB 'BASED ADDRESSING'
COUNT DW $-STRING
DATA ENDS
STACK SEGMENT PARA STACK
DW 128 DUP(?)
TOP LABEL WORD
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,DS:DATA
MAIN PROC FAR
START:
MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
LEA SP,TOP
MOV CX,COUNT
LEA SI,COUNT
DEC SI ;使SI指向字符串最后一个字符G
L1: MOV DL,[SI]
MOV AH,2
INT 21H
DEC SI
LOOP L1
MOV AX,4C00H
INT 21H
CODE ENDS
MAIN ENDP
END START
DATA SEGMENT
STRING DB 'BASED ADDRESSING'
COUNT DW $-STRING
DATA ENDS
STACK SEGMENT PARA STACK
DW 128 DUP(?)
TOP LABEL WORD
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,DS:DATA
MAIN PROC FAR
START:
MOV AX,DATA
MOV DS,AX
MOV AX,STACK
MOV SS,AX
LEA SP,TOP
MOV CX,COUNT
LEA SI,COUNT
DEC SI ;使SI指向字符串最后一个字符G
L1: MOV DL,[SI]
MOV AH,2
INT 21H
DEC SI
LOOP L1
MOV AX,4C00H
INT 21H
CODE ENDS
MAIN ENDP
END START