班级通信录管理系统(汇编课程设计)
更新时间:2023-09-11 01:42:02 阅读量: 教育文库 文档下载
班级通信录管理系统
1 需求说明
1.1实验要求
1.1.1建立通讯录,添加一个同学的通信记录,删除一个同学的通信记录,修改一个同学
的通信记录,查询一个同学的通信记录,显示所有同学的通信记录,能根据姓名或宿舍号进行排序。
1.1.2通信记录包括学号、姓名、电话号码、宿舍号等信息,所有信息最终用文件保存。
1.2功能简述
1.2.1 建立通信录
运行程序后,程序自动建立固有的通讯录。
1.2.2添加通信记录
进入“添加\界面,根据提示,依次添加同学的通信记录条目。添加成功,后显示操作成功信息。
1.2.3删除通信记录
进入“删除\界面,依据姓名删除信息。输入姓名后,显示该同学的所有信息,并显示操作成功。删除后,返回主菜单。
1.2.4查询通信记录
进入“查询\界面,询问用户按姓名或学号查找学生记录。待用户正确输入已存有的用户姓名或学号后,按回车键后显示所有匹配该信息的学生记录。若输入信息错误或是无该用户没记录,则显示操作错误。
1.2.5显示所有通信记录
进入“显示\界面,将通讯录中所有同学的通讯记录分行显示出来,每行中同学的不同信息间隔表示。
1.2.6根据姓名进行排序
排序时,显示排序子菜单,按照姓名中字母的升序对记录进行排序。
1
1.2.7保存通讯记录
将填写好的同学通讯记录写入到固定文件中。
1.2.8退出班级通信录管理系统
选择该功能选项后,退出班级通信录管理系统,关闭文件,返回DOS。
2设计说明
2.1 程序流程图设计
Select Insert Modify Delete Write Show Esc Back 结束 选择功能 主界面 入口 查询界面添加界面修改界面删除界面写入文件显示所有记录退出系统 2
2.2各功能之间的关系
2.2.1用户输入信息
在选择Insert选项后,进入adder子程序,需要用户依次输入姓名、学号、宿舍号、电话号码,输入信息分别存入manelist、studlist、dormlist、telelist数组中。
2.2.2搜索同学记录
建立selectbyname和selectbystud子程序,在select子程序中灵活调用,利用相关信息搜索与关键字匹配的同学记录。同时,可以把搜索这个功能提取出来,实现代码的共享。其中,搜索按关键字的类型不同可分为按姓名搜索和按学号搜索。
2.2.3关键字的匹配
selectbyname和selectbystud子程序中都需要进行关键字匹配和比较,故把比较关键字的大小提取出来在strCmp子程序中实现,方便进行搜索和排序。
2.3文档的处理
在用户进入班级通信录管理系统时,若要将输入的信息用文件保存,用户可选择Write to file选项,将缓冲区和文档中的所有记录显示出来。用户退出后,关闭文件。
3详细的算法设计
3.1主程序的设计
start: mov ax,data mov ds,ax mov es,ax call cshdata menu1: call clear
call displaytitle mov ah,01h int 21h cmp al,'1' jz sel
cmp al,'2' jz adde cmp al,'3' jz modi cmp al,'4' jz del
cmp al,'5' jz dis
3
cmp al,'7' jz wrt cmp al,'8' jz out1
jmp menu1 sel:
call clear call select jmp back adde:
call clear call adder jmp back modi: call clear call modify jmp back del:
call clear call delete jmp back dis:
call clear call disdata jmp back wrt:
call clear call write back:
lea dx,backstr ;返回主菜单提示语“Please enter 6 to bace main menu!” mov ah,09h int 21h mov ah,01h int 21h ea si,choice mov [si],al cmp al,'6'
jz menu1 ;输入6,返回主菜单 call clear jmp back out1:
mov ah,4ch int 21h
main endp ;主函数结束 code ends
4
end start
3.2学生记录的数据结构
namelist db 20 dup(20 dup(0)) studlist db 20 dup(20 dup(0)) dormlist db 20 dup(20 dup(0)) telelist db 20 dup(20 dup(0)) newname db 20 dup(0) newstud db 20 dup(0) newdorm db 20 dup(0) newtele db 20 dup(0) cnt db 1 dup(0) cntselect db 1 dup(0) choice db 1 dup(0) enter db 0dh,0ah,'$' blank db ' $' disname db 'Name:$' disstud db 'Stud:$' disdorm db 'Dorm:$' distele db 'Tele:$'
3.3学生通讯录信息的显示和输入
学生通讯录信息的显示和输入的逻辑实现思想是一样的。都是先找到第i条记录的起始地址,即学号的开始地址。然后根据j的值确定记录内部的偏移地址。然后调用相应的
功能实现学生通讯信息的显示和输入。下面以信息的显示为例作详细说明。 disdata proc near ;显示所有信息 lea si,cnt ;循环次数 mov cl,[si] mov bx,0 disdatal:
lea dx,disname mov ah,09h int 21h
lea dx,namelist add dx,bx mov ah,09h int 21h
lea dx,blank mov ah,09h int 21h
lea dx,disstud mov ah,09h int 21h
lea dx,studlist
5
正在阅读:
班级通信录管理系统(汇编课程设计)09-11
环境资源法练习题03-29
2013年潍坊市初中学业水平考生物试题07-03
会计人员职业能力框架问题的研究02-29
2012河北廊坊房地产市场调研报告06-11
年产150吨日式豆腐项目可行性研究报告12-15
中考数学3月模拟试卷(二)(含解析)03-08
不言春作苦 愿化春泥护红花09-12
在西山区2011年产业发展大会上的讲话05-14
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 汇编
- 班级
- 管理系统
- 课程
- 通信
- 设计
- 借大赛对老年服务与管理专业技能教学的启示
- 基于STM32FOC4 - 2MC Application 用户接口函数my
- 建设工程监理论文 - 建设工程组织协调
- 金道环球投资:1月17日汇市交易策略
- 辽宁省新民市第一高级中学2014届高三数学上学期期末考试试题 理 新人教B版
- SC200施工电梯基础方案修改
- 10套数字电路复习题(带完整答案)
- 沙县金沙高级中学高三周周练数学(理)试题(二)答案
- 山东省高中思想政治学科德育教育实施方案
- 河北省预防接种门诊基本标准
- 环境影响评价-咨询继续教育考试84分
- 路基水稳层规范要求
- EAGLE60焊线机操作与保养说明书-1
- 《红楼梦》·林黛玉写的诗词有哪些
- 老子《道德经》新解 第一篇:守道篇
- 东苕溪十足目种类调查 论文 - 图文
- 数据库第1-3章 课后习题答案
- 实验室能力建设计划 - 图文
- 基于SWOT分析法分析O2O模式外卖早餐的发展
- 控制基标测量方案修改版