



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验课程名称 微机原理实验 实验项目名称用表格形式显示字符 实验指导老师 学 生 姓 名 学 院 理学院 专 业 电子信息科学与技术 年 级 2008级(一)班 学 号 实 验 时 间 2010年12月20日 总 成 绩教师签名 1. 实验目的 熟悉堆栈指令的功能与应用。 掌握子程序调用的方法和应用。 掌握常用寄存器的使用方法和不同寄存器的使用限制。2. 实验内容 按15*16的表格形式显示ASCII码为10H100H的所有字符,即以行为主的顺序及ASCII码递增的次序依次显示对应的字符。每16个字符为一行,每行中的相邻两个字符之间用空白字符(ASCII码为0)隔开。3. 实验准备 熟悉堆栈指
2、令定义、功能及应用。 认真预习有关子程序调用的方法、了解入口参数及出口参数、元调用及进调用。 按正常的方法编写程序实现表格显示(15×16)ASCII的所有字符。4. 实验步骤实验1 用表格形式显示字符1、题目:用表格形式显示ASCII字符2、实验要求:按15*16的表格形式显示ASCII码为10H100H的所有字符,即以行为主的顺序及ASCII码递增的次序依次显示对应的字符。每16个字符为一行,每行中的相邻两个字符之间用空白字符(ASCII码为0)隔开。3、提示: 显示每个字符可使用功能号为2的显示输出功能调用 MOV AH,2 MOV DL,10H;字符从10H开始,每显示一个D
3、L+1产生下一个字符 INT 21H 显示空白符时DL=00H; 每行显示结束时需要显示回车(ASCII码为0DH)和换行(ASCII码为0AH),本行显示结束后可另起一行显示。分析: 本题中可把DL初始化为10H, 然后不断使其加1(用INC指令) 以取得下一个字符的ASCII码。 显示空白符时,用其ASCII码0置入DL 寄存器,每行结束时,用显示回车(ASC|为0DH)和换行符(ASCII为0AH)来结束本行并开始下一行。 由于逐个显示相继的ASCII字符时,需要保存并不断修改dl寄存器的内容,而显示空白、回车、换行符时也需要使用DL寄存器,为此可使用堆栈来保存相继的ASCII字符。具体
4、用法是:在显示空白或回车,换行符前用指令。 PUSH DX 把DL的内容保存到堆栈中去。在显示空白或回车,换行符后用指令,POP DX 恢复DL寄存器的原始内容。用表格形式显示字符源程序代码:STACKSEGMENT PARA STACK 'STACK'LENDB 512 DUP(?)STACK ENDS CODESEGMENT ASSUME CS:CODE,DS:CODE,SS:STACKSTART:MOVDL, 10H ;DL存放ASCII码初始值,ASCII码的初始值为10H MOV CH, 000FH ;行循环次数15NEXT1: MOV CL, 0010H ;列循环次
5、数16,以下为列循环 NEXT2: CALL DISPLAY ;显示DX 内的字符 INC DL ;DL自增,值为下一个ASCII码的十六进制值 CALL BLANK ;空格 DEC CL ;列自减 CMP CL, 0 ;判断列结束? JNE NEXT2 ;未结束,继续 CALL ENTER ;列结束回车换行 DEC CH ;行自减 CMP CH,0 ;判断行结束? JNE NEXT1 ;未结束,下一行 MOV AH,4CH ;结束程序 INT 21HDISPLAY PROC ;显示字符过程的子程序,入口参数为DL MOV AH,02H INT 21H RETDISPLAY ENDP BLAN
6、K PROC ;显示空格过程 PUSH DX ;压栈保护DX中的ASCII值 MOV DL,20H ;调用子程序,显示空格 CALL DISPLAY POP DX RETBLANK ENDPENTER PROC ;回车换行过程 PUSH DX MOV DL,0DH CALL DISPLAY;调用子程序,显示回车 MOV DL,0AH CALL DISPLAY ;调用子程序,显示换行 POP DX RETENTER ENDPCODE ENDS END START编译源程序:连接成已.EXE为扩展名的目标文件:运行程序,验证程序设计是否符合设计要求:又上图运行结果可知,程序设计正确。5. 实验报告总结本实验程序设计中需要多次显示回车,空格,换行字符,所以在程序设计中如果不使用模块设计方法,将会使程序非常冗长。所以本实验在编写程序时把需要反复显示的字符用一个字程序来实现,当需要显示字符时,只需对入口参数正确赋值,然后调用子程序,这样使程序简洁、清晰明了。但是需要特别注意的是在调用子程序时,如果存放入口参数值的寄存器在程序的其他地方需要用到时,那么在调用子程序之前一定要对该寄存器压栈保护,否则将会影响程序结果的正确性。列入本实验的中,DX
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河底清运施工方案
- 糖厂保温施工方案
- 边缘计算下的强夯施工安全及质量智能监控方法研究与应用
- 多组学解析关键微生物和代谢物参与奶牛乳脂合成的机制
- 碱土金属掺杂ZIF-67纳米片及其衍生材料的合成与电化学应用研究
- 大温差作用下水工隧洞围岩变形特征及承载特性研究
- 蓝布正提取物对光栓所致小鼠脑缺血后神经功能损伤的保护作用及机制研究
- 基于地方特色资源的化学情境教学设计与实践-以河南省禹州市钧瓷和矿产资源为例
- 课题申报书:新时代高校学生评价文化治理的路径研究
- 课题申报书:新时代高校高质量发展战略研究
- 啤酒采购合同协议书模板
- 中医把脉入门培训课件
- 高血糖症的急救与护理
- 成人失禁性皮炎的预防与护理
- 技术信息收集与分析方法考核试卷
- 小学2025年国防教育课程开发计划
- 义务教育数学课程标准(2024年版)
- 三年级下册面积单位换算练习100道及答案
- 工程安全质量问题罚款通知单
- 幼儿园其他形式的教育活动课件
- 住宅项目开盘前工作倒排表
评论
0/150
提交评论