soso 汇编语言程序设计问题

来源:百度知道 编辑:UC知道 时间:2024/06/17 18:39:42
1 、内存自BUF单元开始的缓冲区连续存放着10个学生的英文分数,编程序统计其中90H~100H,60H~89H,60H以下者各有多少人?并把90H-100H分人数结果存放在P1单元中、60H-89H分人数结果存放在P2单元中,60H分以下人数结果存放在P3单元中(P1、P2、P3为数据段的单元),最后把P1、P2、P3中的数以”P1=?、P2=?、P3=?”显示在屏幕上。

这个程序我刚写了~你们一个班的?
data segment
buf db 31h,41h,51h,61h,71h,81h,91h,53h,63h,83h
p1 db 00
p2 db 00
p3 db 00
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax

mov cx,10
mov bl,60h
mov bh,89h
mov si,0
mov ax,0
mov dx,0
a0001:
mov al,buf[si]
cmp al,bl
jb a0002
cmp al,bh
ja a0003
add ah,1
inc si
loop a0001
a0002:
add dl,1
inc si
loop a0001
a0003:
add dh,1
inc si
loop a0001

mov p1,dh
mov p2,ah
mov p3,dl

mov ah,4ch
int 21h
code ends
end start