1. 统计学生成绩,设有10个学生成绩,试编制程序分别统计低于60分,60~69分,70~79分,80~89分,90~99分及100分的人数,并显示。
我编的,但我就是找不到错误,请帮我指出,而且我代码繁琐,帮我精简一下,谢谢
DATA SEGMENT
SD DB 100,98,91,85,82,77,60,62,55,45
C1 DB 0
C2 DB 0
C3 DB 0
C4 DB 0
C5 DB 0
C6 DB 0
MESS1 DB 'the students number of less than 60:$'
MESS2 DB 'the students number of 60~69:$'
MESS3 DB 'the students number of 70~79:$'
MESS4 DB 'the students number of 80~89:$'
MESS5 DB 'the students number of 90~99:$'
MESS6 DB 'the students number of 100:$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV CX,10
MOV BX,0
LOP: MOV AX,WORD PTR SD[BX]
CMP AX,60
JB SHORT M1
CMP AX,69
JBE SHORT M2
CMP AX,79
JBE SHORT M3
CMP AX,89
JBE SHORT M4
CMP AX,99
JBE SHORT M5
CMP AX,100
JE SHORT M6
M1: MOV DL,C1
ADD DL,1
MOV C1,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
M2: MOV DL,C2
ADD DL,1
MOV C2,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
M3: MOV DL,C3
ADD DL,1
MOV C3,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
M4: MOV DL,C4
ADD DL,1
MOV C4,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
M5: MOV DL,C5
ADD DL,1
MOV C5,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
M6: MOV DL,C6
ADD DL,1
MOV C6,DL
ADD BX,1
DEC CX
CMP CX,0
JE QUIT
JMP LOP
QUIT: LEA DX,MESS1
MOV AH,9
INT 21H
MOV DL,C1
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MESS2
MOV AH,9
INT 21H
MOV DL,C2
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MESS3
MOV AH,9
INT 21H
MOV DL,C3
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MESS4
MOV AH,9
INT 21H
MOV DL,C4
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MESS5
MOV AH,9
INT 21H
MOV DL,C5
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
LEA DX,MESS6
MOV AH,9
INT 21H
MOV DL,C6
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START