主题:rout1,rout2,rout3是谁调用它们的
//请问各位高手,rout1,rout2,rout3都是待调用目标地址,这个程序没有jmp rout3之类指令,它们是怎么工作起来的
DATAS SEGMENT
STRING DB 'Hello World$'
FIVE DB 5
DATA_LIST DW 1,0,2,5,4
MAX DW ?
MIN DW ?
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
print macro string
lea dx,string
mov ah,09h
int 21h
endm
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
MOV CX,4
LEA BX,DATA_LIST
MOV AX,[BX]
MOV MAX,AX
MOV MIN,AX
ROUT1:
ADD BX,2
MOV AX,[BX]
CMP AX,MAX
JNGE ROUT2
MOV MAX,AX
ROUT2:
CMP AX,MIN
JNLE ROUT3
MOV MIN,AX
ROUT3:LOOP ROUT1
MOV DX,MAX
ADD DL,30H
MOV AH,2
INT 21H
MOV DX,MIN
ADD DL,30H
MOV AH,2
INT 21H
LEA DX,STRING
MOV AH,9
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START
DATAS SEGMENT
STRING DB 'Hello World$'
FIVE DB 5
DATA_LIST DW 1,0,2,5,4
MAX DW ?
MIN DW ?
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
print macro string
lea dx,string
mov ah,09h
int 21h
endm
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
MOV CX,4
LEA BX,DATA_LIST
MOV AX,[BX]
MOV MAX,AX
MOV MIN,AX
ROUT1:
ADD BX,2
MOV AX,[BX]
CMP AX,MAX
JNGE ROUT2
MOV MAX,AX
ROUT2:
CMP AX,MIN
JNLE ROUT3
MOV MIN,AX
ROUT3:LOOP ROUT1
MOV DX,MAX
ADD DL,30H
MOV AH,2
INT 21H
MOV DX,MIN
ADD DL,30H
MOV AH,2
INT 21H
LEA DX,STRING
MOV AH,9
INT 21H
MOV AH,4CH
INT 21H
CODES ENDS
END START