汇编课程设计个人档案管理文件.docx

上传人:b****9 文档编号:26385434 上传时间:2023-06-18 格式:DOCX 页数:17 大小:46.21KB
下载 相关 举报
汇编课程设计个人档案管理文件.docx_第1页
第1页 / 共17页
汇编课程设计个人档案管理文件.docx_第2页
第2页 / 共17页
汇编课程设计个人档案管理文件.docx_第3页
第3页 / 共17页
汇编课程设计个人档案管理文件.docx_第4页
第4页 / 共17页
汇编课程设计个人档案管理文件.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

汇编课程设计个人档案管理文件.docx

《汇编课程设计个人档案管理文件.docx》由会员分享,可在线阅读,更多相关《汇编课程设计个人档案管理文件.docx(17页珍藏版)》请在冰豆网上搜索。

汇编课程设计个人档案管理文件.docx

汇编课程设计个人档案管理文件

华北科技学院

 

课程设计说明书

 

课程名称:

汇编语言

班级:

计算机B08-1姓名:

胡诗招

学号:

200807014102

设计题目:

个人档案管理文件

设计时间:

2010年6月23号_至2010年7月2号_

指导教师:

______李冬艳____________

评语:

_________________________________

_________________________________________

_________________________________________

_________________________________________

_________________________________________

评阅成绩:

____评阅教师:

_____

 

1、课程设计目的

进行程序设计方法和技能的基本训练,巩固在课堂上学到的有关程序设计的基本知识和基本方法,通过实际动手能力的培养,进一步熟悉汇编语言的结构和使用方法,达到能独立阅读、编制和调试一定规模的汇编语言程序的水平。

2、课程设计要求

1.要求编写并调试通过一个小型软件,实现对软件或硬件的操作。

2.遵循模块化、结构化的程序设计方法。

3.要求程序必须正确。

4.程序简明易懂,多运用输入输出提示,出错信息及必要的注释。

5.要求程序结构合理,语句使用得当。

6.适当追求编程技巧和程序运行效率。

三、课程设计题目:

个人档案管理文件

四、课题分析

程序开始时,先建立判断是否存在文件,如果不存在,就创立文件。

然后随便输入i,l,q中任意一个字母,然后跳到相应的子程序,输入i诗,跳到输入的子程序,输入相应的数据,保存到文件里。

当输入l时,保存在文件里的数据就会显示,每个学生的信息显示一行。

当输入q时,直接关闭文件,程序结束

 

五、流程图:

开始

先建立一个文件

输入i,l,q中的

一个字母

输入i输入l

输入学生的名字,年龄

性别,身高,体重,并把打开文件

数据依次存到文件

显示学生名字,年领

,性别,身高,体重

 

输入q

 

关闭文件

 

结束

六、程序源代码:

vardatasegment

filenamedb'ffff.txt',00;定义文件

vardataends

condatasegment

namesdb10dup(?

);名字定义

agedb?

?

;年龄定义

sexdb2dup(?

);性别定义

heightdb3dup(?

);身高定义

weightdb3dup(?

);体重定义

mess_ndb0dh,0ah,'name:

$'

mess_adb0dh,0ah,'age:

$'

mess_sdb0dh,0ah,'sex:

$'

mess_hdb0dh,0ah,'height:

$'

mess_wdb0dh,0ah,'weight:

$'

s4db0dh,0ah

db'***************************************',0dh,0ah

db'*-1:

printlist[L]-*',0dh,0ah

db'*-2:

insertnewele[I]-*',0dh,0ah

db'*-3:

quit[q]-*',0dh,0ah

db'***************************************',0dh,0ah

db0dh,0ah

db'$'

s1db'nameagesexheightweight',13,10,'$'

s2db'$'

s3db'$'

condataends

codesegment

assumecs:

code,ds:

vardata,es:

condata

start:

movax,condata

moves,ax

movax,vardata

movds,ax

pushds

;--------------printcommandhint-------------------

movax,es

movds,ax

movdx,offsets4

movah,9h

int21h

popds

;----------------intepretcommand------------------

cmp_l:

movah,01h

int21h

cmpal,'l'

jnzcmp_i

calllist_all

jmpstart

cmp_i:

cmpal,'i'

jnzcmp_q

callinsert

jmpstart

cmp_q:

cmpal,'q'

jnzclosef

exit:

movax,4c00h

int21h

;-------------打开和创建文件

list_allprocnear

callopen_create;openorcreatefile

pushds

movax,es;es里放的是文件

movds,ax

leadx,s1

movah,9

int21h

movdl,0ah

movah,2

int21h

loop_rd:

movah,3fh;readrecordfromfiletomemory读取文件

movdx,offsetnames

movcx,20

movbx,si

int21h

cmpax,0

jeread_finish;readtotheend,thenfinish相等是结束

;--------------------名字

leadx,s3

movah,9

int21h

movbx,0

go_on:

movdl,names[bx]

movah,2h

int21h

incbx

cmpbx,10

jlgo_on

;---------------------年龄

leadx,s2

movah,9

int21h

movdl,age[0]

movah,2

int21h

movdl,age[1]

movah,2

int21h

;---------------------性别

leadx,s2

movah,9

int21h

movbx,0

l1:

movdl,sex[bx]

movah,2h

int21h

incbx

cmpbx,2

jll1

;----------------------身高

leadx,s2

movah,9

int21h

movbx,0

l2:

movdl,height[bx]

movah,2h

int21h

incbx

cmpbx,3

jll2

;----------------------体重

leadx,s2

movah,9

int21h

movbx,0

l3:

movdl,weight[bx]

movah,2h

int21h

incbx

cmpbx,3

jll3

movdl,0dh

movah,2

int21h

movdl,0ah

movah,2

int21h

jmploop_rd;arecordfinished,thentoreadthenext接着显示

read_finish:

callclosef

popds

ret

list_allendp

;-----------------------输入子程序

insertprocnear

callopen_create;openofcreatefile

pushds

movax,es

movds,ax

;------------------------名字输入

movdx,offsetmess_n

movah,9h

int21h

movbx,0

init:

;memoryinitialize初始化

movnames[bx],0

incbx

cmpbx,20

jlinit

movbx,0

lp:

;从键盘接受数据

movah,1

int21h

cmpal,0dh

jzinext

cmpal,0ah

jzinext

movnames[bx],al

incbx

cmpbx,10

jllp

;---------------------年龄的输入

inext:

leadx,s2

movah,9

int21h

movdx,offsetmess_a

movah,9h

int21h

movbx,0

lp2:

movah,1h

int21h

cmpal,0dh

jzinext1

cmpal,0ah

jzinext1

movage[bx],al

incbx

cmpbx,1

jlelp2

;-----------------------性别输入

inext1:

leadx,s2

movah,9

int21h

movdx,offsetmess_s

movah,9h

int21h

movbx,0

lp3:

movah,1h

int21h

cmpal,0dh

jzinext2

cmpal,0ah

jzinext2

movsex[bx],al

incbx

cmpbx,2

jlelp3

;--------------------身高输入

inext2:

leadx,s2

movah,9

int21h

movdx,offsetmess_h

movah,9h

int21h

movbx,0

lp4:

movah,1h

int21h

cmpal,0dh

jzinext3

cmpal,0ah

jzinext3

movheight[bx],al

incbx

cmpbx,3

jlelp4

;-------------------体重输入

inext3:

leadx,s2

movah,9

int21h

movdx,offsetmess_w

movah,9h

int21h

movbx,0

lp5:

movah,1h

int21h

cmpal,0dh

jziexit

cmpal,0ah

jziexit

movweight[bx],al

incbx

cmpbx,3

jlelp5

iexit:

;movethefilepointertotheendoffile

movah,42h;移动文件

moval,2

movbx,si

movcx,0

movdx,0

int21h

movah,40h;writetherecordtofile写入文件

movbx,si

movcx,20

movdx,offsetnames

int21h

back:

callclosef

popds

ret

insertendp

;---------------------------

open_createprocnear

pushds

movax,segfilename;filename文件d的段地址值送给ax

movds,ax

movah,3dh;openthefile

movdx,offsetfilename

moval,2h;显示文件

int21h

jncok;大于等于时跳转

movah,3ch;如果不存在文件,就创建文件

movdx,offsetfilename

movcx,00

int21h

ok:

movsi,ax

popds

ret

open_createendp

closefprocnear

movbx,si

movah,3eh;关闭文件

int21h

ret

closefendp

codeends

endstart

七、结果显示

8、感想、收获及体会

课程设计从开始找资料到课设结束,在这短时间里,课设给我的收获很大,虽然我的题目不是很难,比其他同学的简单,程序也简单,程序的代码都是简单的指令,但我学到的却很多。

以前学程序时思维都很乱,但写这个程序是,我的思路确是非常清晰的,本来想加上一些代码,让显示时带有颜色,但试了几次都不太理想,就去掉了。

这个程序不是我单独完成的,有些东西是在网上找的。

虽然是别人的,但我把它转换为自己的东西。

在写程序时,思路是最终要的,如果思路错了,你就很难写出正确的程序,但要是思路非常的清晰,就算程序有写错误,你也会很快的找出并把它改对。

所以我认为在写一个程序时,必须把思路弄得非常的清楚,然后再开始写。

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

当前位置:首页 > PPT模板 > 动物植物

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

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