非常感谢这位朋友的帮忙!!
看了你的程序才发现我有很多地方犯了很多“低级”错误。。希望高手们不要笑话。。
不过我正在努力学习汇编。。
在这里我继续提一个问题。。我在编另一个程序的时候又遇到麻烦咯。。程序的输出部分我老是改不正确。。尝试了几种方法还是失败了。。
而且也不太确定前面的程序有没有编错。。
下面是我的程序主题。。还请大家帮忙找找有没有错。。(估计都有。。呵呵)另外也帮我想一下输出部分应该怎么做呢。。
有10个学生的成绩分别为76,69,84,90,73,88,99,63,100,80,试编制一个程序分别统计60-69分,70-79分,80-89分,90-99分及100分的人数,并将结果以十进制形式分别显示出来。
DATA SEGMENT
ADDR DB 4CH,45H,54H,5AH,49H,58H,63H,3FH,64H,50H
A1 DB '得60~69分的人数有:$'
A2 DB '得70~79分的人数有:$'
A3 DB '得80~89分的人数有:$'
A4 DB '得90~99分的人数有:$'
A5 DB '得100分的人数有:$'
C1 DB 0
C2 DB 0
C3 DB 0
C4 DB 0
C5 DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV CX,10
LEA SI,ADDR
LOP: MOV AX,[SI]
CMP AX,46H
JNL NEXT2
JMP B1
NEXT2: CMP AX,50H
JNL NEXT3
JMP B2
NEXT3: CMP AX,5AH
JNL NEXT4
JMP B3
NEXT4: CMP AX,64H
JZ B5
JMP B4
B1: INC C1
INC SI
LOOP LOP
JMP OVER
B2: INC C2
INC SI
LOOP LOP
JMP OVER
B3: INC C3
INC SI
LOOP LOP
JMP OVER
B4: INC C4
INC SI
LOOP LOP
JMP OVER
B5: INC C5
INC SI
LOOP LOP
JMP OVER
OVER: 这个部分改来改去也不对。。郁闷咯。。呵呵。。还请大家帮个忙。。这里是程序输出结果。。
CODE ENDS
END START