汇编语言程序设计实验报告(5)

2018-12-19 23:36

Finpoas子程序

开始 Ax,bx,cx清0 si<-point1*2,cx<-point1 ax<-scole[si],point<-0 Cx=bx? N Ax

开始 Cx<-num-1 Y list[cx*2]=bx? N Y Cx减1后<0? 结束 第 19 页

input函数

开始 将AX、BX、CX、BX进栈,清空将num送入CX,num=DX,DI=CX,BX=0,学生成绩送入AX 是 stu[bx].score>=stu[bx+12否 AX接收stu[bx+12].score的值 交换名字,并用string存储stu[bx+12]的名字 BX=BX-12; stu[bx].score>=TEMP? 是 把AX值给把AX的值给STU[BX+12] stu[bx].scor e把String的 值给stu[bx] 交换名字 BX=BX+12; 否 CX--=0?

第 20 页

BX=0?

output函数

是 结束 开始 AX、BX、CX、DX、SI进栈,清空AX、BX、DX、SI ,调用renshu 通过输出函数输出msg4 DI是数组第NUM个存储单元的首地址 SI赋值为s数组的最后一个存储单元 DH=0,DL=10 stu[di].score 赋值AX 是 图3-5input子程序流程图 Al=0? 否 SI减1,清空 AH 增1,CX减1 MOV AL,[SI],SI 是 CX=3 Al=0? 否 CX减1,SI增 1 AH=AH+30H AX、BX、CX、 DX、SI出栈

结束 第 21 页

2、程序代码

图3-6output子程序流程图

data segment Student struct N db 9,0,9 dup(?) S dw ? Student ends

Result db 0,0,0,'$'

TenStudent student 10 dup({,20}) List dw 10 dup(0)

Count dw -1 ;记录当前输入学生个数 Total dw 0 ;学生总人数 Score dw 0 ;学生分数

Tally dw 0 ;当前输入学生排名 Temp dw 0 ;临时保存数字 Flag dw 0 Msg1 db \Msg2 db \Msg3 db \Msg4 db \Msg5 db \Msg6 db \

Msg7 db \————the grade and name————$\EnMsg db 0ah,0dh,'$' data ends

stack segment para stack db 100h dup(0) stack ends code segment

assume cs:code,ss:stack,ds:data start: mov ax,data mov ds,ax

Main:lea dx,Msg1 mov ah,09h int 21h

Call Numproc ;输入学生人数并将人数存入Total mov Total,bx

lea dx,Msg7 mov ah,09h int 21h

lea dx,EnMsg mov ah,09h int 21h

lea dx,EnMsg

第 22 页

mov ah,09h int 21h

Add_Info: inc Count ;循环输入学生信息 Call Input ;调用输入信息函数 lea dx,EnMsg mov ah,09h int 21h

mov ax,Count

add ax,1

cmp ax,Total ;比较输入人数 jnz Add_Info

Call Search ;按名次查找学生 Func: mov ah,4ch int 21h

;Input the Info of student Input proc ;输入学生信息函数 push ax push cx push dx lea dx,Msg3 mov ah,09h int 21h

Call Numproc ;输入学生成绩

mov Score,bx ;Load the Score of the student mov bx,Count mov ax,bx mov cl,0dh mul cl mov bx,ax mov ax,Score

mov TenStudent[bx].S,ax lea dx,Msg2 mov ah,09h int 21h

lea dx,TenStudent[bx].N ;输入学生姓名 mov ah,0ah int 21h

lea dx,EnMsg mov ah,09h int 21h

mov TenStudent[bx].N+9,'$'

Call FindPos ;更新排名映射数组 pop ax pop cx

第 23 页


汇编语言程序设计实验报告(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:08-09学年高一上学期期末试题(物理1)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: