文档详情

微机原理(用汇编语言实现电话本功能)课程设计.doc

发布:2017-01-02约9.64千字共13页下载文档
文本预览下载声明
微机原理 课 程 设 计 报 告 学 号: 200604135156 姓 名: 朱 庆 春 学 院: 信息科学与工程学院 专 业: 电子信息工程 班 级: 0605班 指导教师: 熊 庆 国 课程设计目的 运用所学的汇编语言写一个具有电话本功能的程序,达到提高动手能力及解决问题的能力。 设计要求 能够存储50个电话号码,包括人名(20个字符)、电话号码(8个字符)。 系统可以随时接受新的人名和电话号码。 具有随时查询号码的功能。要求输入人名后,在屏幕上显示相应的电话号码。 具有删除号码的功能。要求输入人名后,系统自动删除相应的号码。 运行此系统后,要显示菜单选择的功能。 程序设计思想 每个人的信息包括人名和号码,人名占20个字节,外加一个$字符,电话号码占8个字节,外加一个$字符,所以每个人的信息一共占30个字节。可以开辟一片连续的存储区,包含30*50即1500个字节, 即ZHU DB 1500 DUP(0)。 另外再定义四个需要输入信息的变量,依次为: ZHU1 DB 21,0,21 DUP(0) ;搜索姓名变量 ZHU2 DB 21,0,21 DUP(0) ;添加姓名变量 ZHU3 DB 9,0,9 DUP(0) ;添加号码变量 ZHU4 DB 21,0,21 DUP(0) ;删除姓名变量 添加新的人名和号码时,可以通过10号功能调用,先将人名和号码暂时存放在ZHU2和ZHU3中,然后在逐字节地复制到ZHU 中,记住在人名和号码末尾加上$字符。查询号码时,将输入的要查询的人名存放在ZHU1中,然后再每隔30个字节与ZHU中的人名逐个字符地比较,若完全相等,则将人名下面的号码输出,否则说明要查询的人名不存在。删除时,先输入要删除的人名,同查询相似,按同样的方法在ZHU中寻找相应的数据区,若找到了,则从找到时下面一个人的信息开始,统一向上移动30个字节,若没有找到,则说明要删除的人名的信息不存在。 程序框图 五、程序清单 DATAS SEGMENT OBF1 DB Welcome to use this phone book!$ OBF2 DB Please choose the function buttom(1/2/3):$ OBF11 DB 1 for inputing$ OBF16 DB 2 for searching$ OBF17 DB 3 for deleting$ OBF18 DB Other for exiting$ OBF3 DB Please input a new name(within 20 words):$ OBF4 DB please input the number(within 8 numbers):$ OBF5 DB Continue to input?(y/n)$ OBF6 DB Are you sure to end the phone book?(y/n)$ OBF7 DB Please input a name you want to search(within 20 words):$ OBF8 DB Got it,it is:$ OBF9 DB Have not found ,it does not exit!$ OBF10 DB Continue to search?(y/n)$ OBF12 DB Please input the name you want to delete(within 20 words):$ OBF13 DB The name you want to delete does not exit!$ OBF14 DB Success to delete!$ OBF15 DB Continue to delete?(y/n)$ ZHU1 DB 21,0,21 DUP(0) ;搜索(查询)姓名变量 ZHU2 DB 21,0,21 DUP(0) ;添加姓名变量 ZHU3 DB 9,0,9 DUP(0) ;添加号码变量 ZHU4 DB 21,0,21 DUP(0) ;删除姓名变量 ZHU DB 1500 DUP(0) DATAS ENDS STACKS SEGMENT DW 32 DUP(0) STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STA
显示全部
相似文档