简易成绩分析系统。按优(>=90),良(80-89),中(70-79),及格(60-69),“40-59”, ”40以下”,几个分数段统计。屏幕提示输入每个分数段的人数,然后用柱状图的形式画出每个分数段人数所占百分比,并在相应的柱顶端显示百分比数字、底端显示相应的分数段。
太厉害了
做出来可以加酬劳
DATA SEGMENT
TABLE DB 88,79,72,86,76,83,81,69,94,87,78,61,87,71,70,78,76,75,69,93,62,97,88,80,86,51,73,79,85,78
GRADEA DB 0
GRADEB DB 0
GRADEC DB 0
GRADED DB 0
GRADEE DB 0
AVER DB 0FFH
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA, ES:DATA
START: MOV AX, DATA
MOV DS, AX
MOV ES, AX
LEA SI, TABLE
MOV DX,0
MOV CX, 30 ;30个成绩,循环30次
AGAIN: MOV AL,[SI]
CMP AL,59
JA GD ;>=则跳转到下一个成绩等级
GE: INC GRADEE ;不跳转则该成绩等级人数加一
JMP NEXT
GD: CMP AL,69
JA GC
INC GRADED
JMP NEXT
GC: CMP AL, 79
JA GB
INC GRADEC
JMP NEXT
GB: CMP AL,89
JA GA
INC GRADEB
JMP NEXT
GA: INC GRADEA
NEXT: ADD SI,1 ;每次SI加一,到下一个成绩的地址
ADD DL,AL ;把所有成绩相加
ADC DH,0 ;进位
LOOP AGAIN ;循环重复,直到CX=0
MOV AX,DX ;除法默认把AX里的数当除数
MOV BL,30 ;除去30得到平均成绩
DIV BL ;无符号除法
MOV AVER,AL ;把商赋值给平均数
EXIT: MOV AX,4C00H
INT 21H
CODE ENDS
END START