- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课程设计-统计字符串长度推荐
微机原理 课程设计报告
题 目: 计算字符串长度
学生姓名:
学 号:
专业班级: 计科13101
同组姓名:
指导教师:
设计时间:2015.12.28-2015.12.31
指导老师意见:
评定成绩: 签名: 日期:
目录
目录 2
一、需求分析 2
二、系统设计 3
1.内容 3
2.思路 3
三、系统总体框图 3
四、调试分析 4
五 5
六、程序设计 7
七、总结 10
一、需求分析
本程序主要用于,把输入的一串字符,统计长度并输出。
本程序采用汇编语言编程,定义了宏、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字个数为5。
二、系统设计
1.内容
从键盘输入任意一个字符串,以回车作为结束符并显示,统计并显示出它字符的个数。
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,以任意键退出
三、系统总体框图
四、调试分析
本程序主要用于,把输入的一串字符统计字符的个数。本程序采用汇编语言编程,定义了宏、比较判断、循环调用、统计等等,非常人性化的把统计的结果显示出来。比如你输入一串数字“12345”,它会显示出你输入的这串数字,并显示数字的个数为5。
实验结果
(1)用DOSBOX 在win7上运行,将文件夹路径设为C盘
运行masm,编译len.asm,生成len.obj文件
连接len,生成len.exe文件
运行len.exe
六、程序设计
DATAS SEGMENT;数据段定义
MSG1 DB Input the string: ,13,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 ENDS
STACKS SEGMENT;堆栈段定义,此程序不需要,不定义会有警告,但不影响运行。
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT;代码段开始
ASSUME CS:CODES,DS:DATAS,SS:STACKS;说明段寄存器和定义寄存器的关系
START:
MOV AX,DATAS;数据段到AX寄存器
MOV DS,AX;AX寄存器到DS寄存器,不能数据段直接到DS
LEA DX,MSG1;加载定义字符的有效地址MSG1
MOV AH,9;调用dos显示字符串功能
INT 21H;此处输入代码段代码
LEA DX,STR;传偏移地址
MOV AH,0AH;0AH 表示键盘输入到缓冲区
INT 21H;读数据
;MOV传送的是地址所指的内容,而LEA只是地址。
LEA DX,MSG2
MOV AH,9
INT 21H
LEA SI,STR
MOV AL,[SI+1]
MOV AH,0;把AH变成0
MOV BL,10
DIV BL;除法指令,除数有8位和16位两种,如果除数是8位,那么除法的结果AL保存上,AH保存余数
;如果除数是16位,那么除法的结果AX保存商,DX保存余数。
;被除数默认存放在AX中(10位以内)或AX和DX中(32位,DX存放高16位,AX存放低16位)
ADD AX,3030H;把两字节的非压缩BCD码转成可以显示的ASCII码
MOV DX,AX
MOV AH,2;显示输出
INT 21H
MOV DL,DH
INT 21H
MOV AH,7;点击enter程序退出,应该是任意键退出
INT 21H;
MOV AH,4CH;
您可能关注的文档
最近下载
- 黑龙江农业工程职业学院单招数学模拟试题(附答案).docx VIP
- 2025读书心得:屏幕时代如何重塑孩子的自控力.docx VIP
- 中国艰难梭菌感染诊断、治疗与预防指南(2024)详细解读PPT课件.pptx VIP
- 第14课《我们都是中国人》第2课时 这是我国的标志 教案设计 2025道德与法治二年级上册.docx
- 湘少版四年级上册、下册的英语单词默写表.pdf VIP
- GBT 危险货物运输应急救援指南 第1部分:一般指南.pdf VIP
- 煤炭掺配合同范本.docx VIP
- 汽车整体认识(汽车发展史)-精.ppt VIP
- 生产安全事故现场处置方案.docx VIP
- 小学数学二年级下册应用题练习.docx VIP
文档评论(0)