📄 统计成绩.asm
字号:
DATA SEGMENT
GRADE DB 78,89
COUNT EQU $-GRADE
AVER_IN DB ?
AVER_FRAC DB ?
A DB 0
B DB 0
C1 DB 0
D DB 0
E DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV DI,OFFSET GRADE
MOV CX,COUNT
CALL AVERAGE
LOP:MOV BL,[DI]
CMP BL,90
JGE EXCELLENT
CMP BL,80
JGE GOOD
CMP BL,70
JGE SECONDARY
CMP BL,60
JGE PASS
INC E
JMP EXIT
EXCELLENT:INC A
JMP EXIT
GOOD:INC B
JMP EXIT
SECONDARY:INC C1
JMP EXIT
PASS:INC D
EXIT:INC DI
LOOP LOP
MOV AH,4CH
INT 21H
AVERAGE PROC
PUSH AX
PUSH BX
PUSH CX
XOR AX,AX
MOV BX,OFFSET GRADE
XOR CH,CH
MOV CL,COUNT-1
MOV AL,[BX]
LOOP_LABLE:INC BX
ADD AL,[BX]
ADD AH,0
LOOP LOOP_LABLE
MOV CL,COUNT
DIV CL
MOV AVER_IN,AL
MOV AL,AH
MOV CH,10
MUL CH
DIV CL
MOV AVER_FRAC,AL
POP CX
POP BX
POP AX
RET
AVERAGE ENDP
CODE ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -