微机求最大值,求不出

原问题:微机求最大值,求不出
分类:编程开发 > 最后更新时间:【2017-05-12 18:29:57】
问题补充:

;;;;;;;;;;;;;;;堆栈段定义;;;;;;;;;;;;;;;

STACK1 SEGMENT

staspace DB 100 DUP(?)

STACK1 ENDS

;;;;;;;;;;;;;;;;;数据段定义;;;;;;;;;;;;;;

DATA1 SEGMENT

DATA SEGMENT

ARRAY DB 1,2,3,4,5,6,9,8,7

MAX DB 0

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV SI,OFFSET ARRAY

MOV CX,9

MOV BH,[SI]

MOV BL,BH

AGAIN:CMP MAX,BL

JBE A1

JA A3

A1: MOV MAX,BL

A3: MOV BH,[SI]

INC SI

MOV BL,BH

LOOP AGAIN

A4:MOV MAX,BL

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

MOV AX,4C00H

INT 21H

CODE ENDS

END START

最佳答案

程序写的稍复杂了些(可以更简单的)

但错误是因为

A4:MOV MAX,BL

你的BL是当前最后一个数据,不是最大值,而MAX中已是最大值了(循环已结束)

所以这条语句是多余的,删除它结果就对了

最佳答案由网友  whoami1978  提供
公告: 为响应国家净网行动,部分内容已经删除,感谢网友理解。
14

分享到:

其他回答

暂无其它回答!

    推荐