题目要求:
阅读下面的程序,填充【9】 ,使得该程序在汇编与连接时,不会出现任何错误和警告信息。
DSEG SEGMENT
BUF DB 1,5,4,0,7,9,2,6,8,3
N EQU $-BUF
RESULT DB ?
DSEG ENDS
SSEG SEGMENT 【9】
DB 256 DUP(0)
SSEG ENDS
CSEG SEGMENT
ASSUME DS:DSEG,SS:SSEG,CS:CSEG
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DSEG
MOV DS,AX
XOR AX,AX
XOR BX,BX
XOR DX,DX
MOV SI,OFFSET BUF
MOV BL,[SI] 取第一个数作为最大值暂存BL
MOV DL,[SI] 取第一个数作为最小值暂存DL
MOV CX,N
GOON: ADD AL,[SI]
ADC AH,0
CMP BL,[SI]
JA CONT
MOV BL,[SI]
CONT: CMP DL,[SI]
JB NEXT
MOV DL,[SI]
NEXT: INC SI
LOOP GOON
SUB AX,BX
SUB AX,DX
MOV DL,N-2
DIV DL
MOV RESULT,AL
RET
START ENDP
CSEG ENDS
END START
三级考试题,因为未上过汇编,请解释下!谢谢!
------解决方案--------------------------------------------------------
STACK 就可以了吧. 该关键字表明当前段为堆栈段, 链接程序据此填充 exe 头部结构中的 SS:SP 域, 程序自首除非特殊要求也就不必设置 SS:SP 了