用汇编语言写:

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:39:39
二、实验内容:
设有十个学生成绩分别是76,69,84,90,73,88,99,63,100和80分。试编制一个子程序,统计低于60分,60~69分,70~79分,80~89分,90~99分和100分的人数,并输出显示统计结果。
三、编程提示:
1、成绩分等部分采用分支结构,统计所有成绩则用循环结构完成,显示统计结果采用DOS功能调用。
2、统计学生成绩和显示统计结果两部分内容用子程序结构来完成。

data segment
score db 76,69,84,90,73,88,99,63,100,80
s5 db ?
s6 db ?
s7 db ?
s8 db ?
s9 db ?
s10 db ?
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax
call tjfs
call dy
mov ah,1
int 21h
mov ah,4ch
int 21h
tjfs proc near
mov cx,10
lea si,score
lea di,s5
next:
cmp byte ptr [si],60
jnb ss6
inc byte ptr [di]
jmp tj
ss6:
cmp byte ptr [si],70
jnb ss7
inc byte ptr [di+1]
jmp tj
ss7:
cmp byte ptr [si],80
jnb ss8
inc byte ptr [di+2]
jmp tj
ss8:
cmp byte ptr [si],90
jnb ss9
inc byte ptr [di+3]
jmp tj
ss9:
cmp byte ptr [si],100
jz ss10
inc byte ptr [di+4]
jmp tj
ss10:
inc byte ptr [di+5]
tj:
inc si
loop next
ret
tjfs endp
dy proc near
lea si,s5
mov cx,6
next2:
mov dl,[si]