微机原理课程设计统计字符串长度.doc

上传人:laozhun 文档编号:2388795 上传时间:2023-02-17 格式:DOC 页数:10 大小:103KB
返回 下载 相关 举报
微机原理课程设计统计字符串长度.doc_第1页
第1页 / 共10页
微机原理课程设计统计字符串长度.doc_第2页
第2页 / 共10页
微机原理课程设计统计字符串长度.doc_第3页
第3页 / 共10页
微机原理课程设计统计字符串长度.doc_第4页
第4页 / 共10页
微机原理课程设计统计字符串长度.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《微机原理课程设计统计字符串长度.doc》由会员分享,可在线阅读,更多相关《微机原理课程设计统计字符串长度.doc(10页珍藏版)》请在三一办公上搜索。

1、 微机原理 课程设计报告题 目: 计算字符串长度 学生姓名: 学 号: 专业班级: 计科13101 同组姓名: 指导教师: 设计时间:2015.12.28-2015.12.31 指导老师意见:评定成绩: 签名: 日期:目录目录2一、需求分析2二、系统设计31.内容32思路3三、系统总体框图3四、调试分析4五、 实验结果5六、程序设计7七、总结10一、需求分析 本程序主要用于,把输入的一串字符,统计长度并输出。本程序采用汇编语言编程,定义了宏、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字个数为5。 二、系统设计1.内容从键盘输入任意一个

2、字符串,以回车作为结束符并显示,统计并显示出它字符的个数。2思路(1).在数据段中定义各种字符提示信息以便程序清晰明白。(2).在数据段中定义一个STR DB 100,?,100 DUP(?)(3).将数据段存到AX寄存器,再将AX寄存器转移到DS寄存器。(4).提示用户输入一串字符,以回车结束。(5).将偏移地址放入DX。(6).输入数据,长度不能大于100。(7).将输出提示语的偏移地址放入DX。(8).统计字符串的长度。(9).将结果转化成可以显示的ASCII码,并保存到AX中。(10).将AX中的结果转移到DX中。显示DX,以任意键退出三、系统总体框图开始提示输入一个字符串,以回车结束

3、输入统计字符串长度输出结束提示语输出结果结束四、调试分析本程序主要用于,把输入的一串字符统计字符的个数。本程序采用汇编语言编程,定义了宏、比较判断、循环调用、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字,并显示数字的个数为5。五、 实验结果(1)用DOSBOX 在win7上运行,将文件夹路径设为C盘(2) 运行masm,编译len.asm,生成len.obj文件(3) 连接len,生成len.exe文件(4) 运行len.exe六、程序设计DATAS SEGMENT;数据段定义MSG1 DB Input the string: ,13

4、,10,$;定义了一个字符串,13是回车,10是换行,字符串必须以$结束MSG2 DB 13,10,The string lenth is:$STR DB 100,?,100 DUP(?);DB 100 DUP(?)意思是定义100个未经初始化的字节;DB 100 意思是定义一个字节,初始化为100;DB ?意思是定义一个为初始化的字节DATAS ENDSSTACKS SEGMENT;堆栈段定义,此程序不需要,不定义会有警告,但不影响运行。;此处输入堆栈段代码STACKS ENDSCODES SEGMENT;代码段开始ASSUME CS:CODES,DS:DATAS,SS:STACKS;说明段

5、寄存器和定义寄存器的关系START:MOV AX,DATAS;数据段到AX寄存器MOV DS,AX;AX寄存器到DS寄存器,不能数据段直接到DSLEA DX,MSG1;加载定义字符的有效地址MSG1MOV AH,9;调用dos显示字符串功能INT 21H;此处输入代码段代码LEA DX,STR;传偏移地址MOV AH,0AH;0AH 表示键盘输入到缓冲区INT 21H;读数据;MOV传送的是地址所指的内容,而LEA只是地址。LEA DX,MSG2MOV AH,9INT 21HLEA SI,STRMOV AL,SI+1MOV AH,0;把AH变成0MOV BL,10DIV BL;除法指令,除数有

6、8位和16位两种,如果除数是8位,那么除法的结果AL保存上,AH保存余数;如果除数是16位,那么除法的结果AX保存商,DX保存余数。;被除数默认存放在AX中(10位以内)或AX和DX中(32位,DX存放高16位,AX存放低16位)ADD AX,3030H;把两字节的非压缩BCD码转成可以显示的ASCII码MOV DX,AXMOV AH,2;显示输出INT 21HMOV DL,DHINT 21HMOV AH,7;点击enter程序退出,应该是任意键退出INT 21H;MOV AH,4CH;程序结束,控制权返回INT 21HCODES ENDSEND START七、总结微机原理与接口技术是一门很有

7、趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。学习该门课程知识时,其思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下额是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提

8、供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。这次实验并不是很难,主要的困难来自对程序的理解。功夫不负有心人,经过四个人的合作和努力,我们最后对实验的原理有了清晰的认识。虽然实验台上的很多模块单元没有用到,但是就系统功能来说,我觉得我们做的还是不错的。这次课设却让我们对实验台有了足够的了解,让我们知道了实验台上各个模块的用法;而且它还让我们对自己动手写程序来控制实验台的运作有了一定的基础。虽然实验台只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口的知识将会有一个更广泛的认识,而且它对我们以后的学习也会有帮助的。实验中个人的力量是不及群体的力量的

9、,我们四个人分工合作,做事的效率高了很多。虽然有时候会为了一些细节争论不休,但最后得出的总是最好的结论。而且实验也教会我们在团队中要善于与人相处,与人共事,不要一个人解决所有问题。总之,这次课程设计对于我们有很大的帮助,通过课程设计,我更加深入地理解了,微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。感谢老师的悉心指导。对课程设计的建议本次课程设计的三个实验相对都比较简单,而且经过老师的讲解以及实验书上的指导,几乎把我们要用到的程序和实验台电路的接线方法都告诉我们了,所以做起来很容易。但是做完实验,我们对实验台及其上面的各个模块还是不了解。对如何编程控制实验台上各个模块和芯片的运作也没有什么清晰的认识。如果老师对我们实验报告的要求再严格一点,也许同学们会更加自觉地去认真理解程序和实验思路。

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号