主题:求救最小数
ininter
[专家分:10] 发布于 2005-12-27 16:51:00
[em15]
在XX单元开始的连续单元中,存放着10个无符号数,从中找出最小值,并送到YY单元
请各位大虾帮帮忙,
回复列表 (共3个回复)
沙发
ininter [专家分:10] 发布于 2005-12-29 13:38:00
有人会吗,请帮个忙呀,小弟急用呀,55555555555555
板凳
demonhunter [专家分:90] 发布于 2005-12-29 23:09:00
帮忙帮到底,我在这里求出了MIN 和MAX,并把它们显示在屏幕上
data SEGMENT
xx DW 10,5,41,6,78,9,45,564,451,
cn DW ($-xx)/2
max DW ?
min DW ?
temp DW ?
print1 DB 'max:','$'
print2 DB 0DH,0AH, 'min:','$'
data ENDS
code SEGMENT
MAIN PROC FAR
ASSUME CS:code,DS:data
MOV AX,data
MOV DS,AX
MOV CX,cn
DEC CX
LEA SI,XX
MOV AX,[SI]
MOV max,AX
MOV min,AX
COMP: ADD SI,2 ;COPARE FOR MAX AND MIN
MOV AX,[SI]
CMP AX,max[0]
JL next
MOV max,AX
JMP SHORT LOP
next: CMP AX,min
JG LOP
MOV min,AX
LOP: LOOP COMP
LEA DX,print1 ;OUTPUT MAX
MOV AH,9
INT 21H
MOV BX,max
CALL BIN_DEC
LEA DX,print2 ;OUTPUT MIN
MOV AH,9
INT 21H
MOV BX,min
CALL BIN_DEC
MOV AX,4C00H
INT 21H
OUTPUT PROC ;CHANG BIN TO DEC
MOV AX,BX
XOR DX,DX
DIV CX
MOV BX,DX
MOV DL,AL
ADD DL,30H
MOV AH,2
INT 21H
ret
OUTPUT ENDP
BIN_DEC PROC
MOV CX,10
CALL OUTPUT
MOV CX,1
CALL OUTPUT
RET
BIN_DEC ENDP
MAIN ENDP
CODE ENDS
END MAIN
3 楼
ininter [专家分:10] 发布于 2006-01-07 15:59:00
非常感谢,楼上的大哥
我来回复