汇编语言课程设计Word文档下载推荐.docx

上传人:b****4 文档编号:16682507 上传时间:2022-11-25 格式:DOCX 页数:36 大小:181.86KB
下载 相关 举报
汇编语言课程设计Word文档下载推荐.docx_第1页
第1页 / 共36页
汇编语言课程设计Word文档下载推荐.docx_第2页
第2页 / 共36页
汇编语言课程设计Word文档下载推荐.docx_第3页
第3页 / 共36页
汇编语言课程设计Word文档下载推荐.docx_第4页
第4页 / 共36页
汇编语言课程设计Word文档下载推荐.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

汇编语言课程设计Word文档下载推荐.docx

《汇编语言课程设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《汇编语言课程设计Word文档下载推荐.docx(36页珍藏版)》请在冰豆网上搜索。

汇编语言课程设计Word文档下载推荐.docx

5.系统源程序关键代码及必要注释

6、能够较熟练地应用一种编辑软件编写程序,掌握dos系统软件设计的基本方法

7、课程设计说明书应内容完整、字迹工整、图表整齐规范、数据详实。

8、课程设计总结

9、字数4000左右。

10、参考文献(至少列写3篇文献)

网上下载“《汇编语言课程设计案例精编》源代码”

四、课程设计说明书装订顺序

1、封面

2、任务书

3、目录

4、设计说明书正文

目录

1.设计任务5

2.设计目的5

3.概要设计5

4.详细设计5

5.程序代码10

6.程序调试29

7.课设小结29

参考文献30

1.设计任务

在本次课程设计中,我设计的是一个简易的学生成绩管理系统,该系统可以对学生的三科成绩进行排序并求出课程的平均成绩并显示。

2.设计目的

汇编语言”课程设计是在教学及实验基础上,对课程所学理论知识的深化和提高。

3.概要设计

1建立学生成绩文档;

2以学号为序输入学生各门功课成绩;

4.详细设计

一、建立学生基本信息。

(输入学号、各学科名称)

二、建立学生成绩文档。

(输入各科学科成绩)

三、显示每门课程学生名次。

(以学号为序)

四、显示指定课程的平均成绩。

五、显示3门课程各个分数段学生人数。

(以表格形式给出数据)

六、成绩排序(按总成绩降序排列)

七、退出

模块层次图

建立学生基本信息

建立学生成绩文档

每门

课程名次

系统流程图显示

功能模块说明

学生信息建立(input模块)

输入:

以学号为序从保存每个学生的各科成绩。

各个成绩之间用逗号隔开。

输出:

把一个学生的各科成绩存入数组grade。

功能:

接收一个同学的各科成绩。

调用子模块decibin把从输入的一个十进制书转换为二进制数。

调用子模块crlf完成回车换行功能。

取得一个学生的一课成绩显示一个学生每门课程名次(rankp,1,2,模块)

从grade数组中取得一个同学的一课成绩。

以学号为序计算出该学生这个课程的名次存入rank数组。

计算每门课程学生的名次。

算法为一个学生的名次为成绩高于该生的学生人数加1。

从rank数组中取得一个学生的名次。

把一个学生名次的这课成绩的名次在终端上显示出来。

显示一个学生这课成绩名次。

调用子模块binidec,以便把rank数组中的二进制数转换为十进制数并在终端上显示出来。

调用子模块crlf完成回车、换行功能。

将十进制转换为二进制(decibin模块)

从grade数组中取得十进制数。

把该数转化为二进制数并存入BX寄存器中。

把从键盘取得的一个十进制数换为二进制数,并将该数存入BX中。

回车换行(crlf模块)

向终端发出回车、换行符。

完成一次回车、换行功能。

将二进制数转换为十进制数(binidec模块)

从BX寄存器取得一个二进制数。

在终端显示屏幕上显示一个十进制数。

取一个二进制数转换为一个十进制数(dec_div模块)

从BX寄存器中取得需装换为十进制的数。

在屏幕上显示以为十进制数。

把BX寄存器中的二进制数除以相应的十的幂,并在上显示一位商。

余数保存在BX寄存器中。

求指定课程平均成绩(output模块)

从每个同学的grade中选出指定课程成绩。

将该课程的平均成绩显示在屏幕上。

计算这个班级的每个课程的平均成绩,并予以显示。

统计三门课程各个分数段学生人数(rankp3模块)

从grade数组中选出指定课程分数。

将各个分数段的人数统计出来显示在屏幕上面。

计算每门课程各个分数段学生人数。

计算每个学生总成绩(rankp4模块)

从每个学生的grade数组中提出所有成绩。

按总成绩降序排列,显示学生总成绩列表。

计算每个学生总成绩,按总成绩降序排列。

5.程序代码

;

*******************************************************************************

datareasegment

englishdw10dup(?

mathematicsdw10dup(?

physicaldw10dup(?

gradedw10dup(?

rankdw10dup(?

rank1dw10dup(?

rank2dw10dup(?

rank3dw10dup(?

s5dw0

s6dw0

s7dw0

s8dw0

s9dw0

s10dw0

count1dw?

count2dw?

count3dw?

count4dw?

mess1db'

GradeofEnglish:

$'

mess2db'

GradeofMathematics:

mess3db'

GradeofPhysical:

mess4db13,10,'

InputError!

Pleaseinputrepeat.'

13,10,'

mess5db'

RankstudentnumberofEnglish:

mess6db'

RankstudentnumberofMath:

mess7db'

RankstudentnumberofPhysical:

mess8db'

StudentGradeManagementSystem'

0ah,0dh,'

mess9db'

Plesechoose:

1:

Continue2:

Exit$'

mess10db'

AveragegradeofEnglish:

mess11db'

AveragegradeofMath:

mess12db'

AveragegradeofPhysical:

mess13db'

Enter2:

mess14db'

Rankofoverallscore:

mess15db'

Rankofstudentnumberwithoverallscore:

mess16db'

Pleaseinputgrade(English,Math,Physical):

mess17db'

PeopleofEnglshgrade(<

60,60---69,70---79,80---89,90---90,=100):

mess18db'

PeopleofMathgrade(<

mess19db'

PeopleofPhysicalgrade(<

datareaends

showmacroaddrs

leadx,addrs

movah,9;

宏定义,显示字符串

int21h

endm

prognamsegment

mainprocfar

assumecs:

prognam,ds:

datarea

START:

设置堆栈为了返回dos

pushds

subax,ax

pushax

movax,datarea

movds,ax

callclear

movah,2;

调用置光标位置功能

movdh,1;

使光标位置置为位置(1,8)

movdl,8

movbh,0;

页号为0

int10h;

BIOS显示中断调用

showmess8

callchoose

ret

mainendp

chooseprocnear

showmess13

callcrlf

movah,01

cmpal,31h

jnzexit

next17:

showmess16

callinput1

callrankp

calloutput1

callinput2

callrankp1

calloutput2

callinput3

callrankp2

calloutput3

callengrade

callmagrade

callphgrade

callencount

calloutput7

callmacount

calloutput8

callphcount

calloutput9

callgraderank

callrankp3

calloutput5

callrankg

calloutput4

showmess9

jmpnext17

exit:

chooseendp

input1procnear

next18:

showmess1

movsi,0;

至数组下标为0

movcount1,0

movcx,10

next30:

movenglish[si],0

addsi,2

loopnext30

movsi,0

enter:

calldecibin

inccount1;

count自增1

cmpdl,'

'

;

dl里的内容与‘,’相等则转移至store

jestore

cmpdl,13

jeexit2

jneerror

store:

movenglish[si],bx;

将成绩送入储存单元

jmpenter

error:

showmess4

jmpnext18

exit2:

movenglish[si],bx

input1endp

input2procnear

next19:

showmess2

movcount2,0

next31:

movmathematics[si],0

loopnext31

enter1:

inccount2

jestore1

jeexit3

jneerror1

store1:

movmathematics[si],bx

jmpenter1

error1:

jmpnext19

exit3:

input2endp

******************************************************************************

input3procnear

next20:

showmess3

movcount3,0

next32:

movphysical[si],0

loopnext32

enter3:

inccount3

jestore2

jeexit4

jneerror3

store2:

movphysical[si],bx

jmpenter3

error3:

jmpnext20

exit4:

input3endp

rankpprocnear

movdi,count1

movbx,0

loop1:

movax,english[bx]

movwordptrrank[bx],0

movcx,count1

leasi,english

next:

cmpax,[si]

jgno_count

incwordptrrank[bx]

no_count:

loopnext

addbx,2

decdi

jneloop1

rankpendp

*****************************************************************************

rankp1procnear

movdi,count2

loop2:

movax,mathematics[bx]

movwordptrrank1[bx],0

movcx,count2

leasi,mathematics

next1:

jgno_count1

incwordptrrank1[bx]

no_count1:

loopnext1

jneloop2

rankp1endp

rankp2procnear

movdi,count3

loop3:

movax,physical[bx]

movwordptrrank2[bx],0

movcx,count3

leasi,physical

next3:

jgno_count2

incwordptrrank2[bx]

no_count2:

loopnext3

jneloop3

rankp2endp

rankp3procnear

movdi,count4

loopc:

movax,grade[bx]

movwordptrrank3[bx],0

leasi,grade

nextc:

jgno_count3

incwordptrrank3[bx]

no_count3:

loopnextc

jneloopc

rankp3endp

output1procnear

showmess5

next10:

movbx,rank[si]

callbinidec

movdl,'

movah,02

jnznext10

output1endp

output2procnear

showmess6

next11:

movbx,rank1[si]

jnznext11

output2endp

output3procnear

showmess7

next13:

movbx,rank2[si]

jnznext13

output3endp

output4procnear

showmess14

next21:

movbx,grade[si]

jnznext21

output4endp

output5procnear

showmess15

nextb:

movbx,rank3[si]

jnznextb

output5endp

output7procnear

showmess17

movbx,s5

int

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1