根据给定的10个学生的成绩(成绩在数据段自己设定),统计出60分,70分,80分,90分分数段以及

根据给定的10个学生的成绩(成绩在数据段自己设定),统计出60分,70分,80分,90分分数段以及100分的人数,并存放在指定内存单元里(用汇编语言)

data segment
credit dw 10 dup (?) ;10个学生功课成绩
v1 db 0 ;100人数计数器
v2 db 0 ;99-90段人数计数器
v3 db 0 ;89-80段人数计数器
v4 db 0 ;79-70段人数计数器
v5 db 0 ;69-60段人数计数器
v6 db 0 ;59-0段人数计数器
data ends

code segment
assume cs:code,ds:data
main proc far
start:
mov ax,data
mov ds,ax
call count ;统计各分段人数
mov ah,4ch
int 21h
ret
main endp

count proc near
lea si,credit
mov cx,10
m1: mov ax,[si]
inc si
cmp ax,60
jc m6;59-0
cmp ax,70
jc m5;69-60
cmp ax,80
jc m4;79-70
cmp ax,90
jc m3;89-80
cmp ax,100
jc m2;99-90
inc v1;100
jmp m7

m2:inc v2;99-90
jmp m7
m3:inc v3;89-80
jmp m7
m4:inc v4;79-70
jmp m7
m5:inc v5;69-60
jmp m7
m6:inc v6;59-0
m7:loop m1
ret
count endp
code ends
end start
温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-12-21

根据给定的10个学生的成绩(成绩在数据段自己设定),统计出60分,70分,80分,90分分数段以及100分的人数,并存放在指定内存单元里(用汇编语言)

程序如下:

相似回答