




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
辽宁工程技术大学上机实验报告成绩优课程名称计算机硬件基础实验题目综合程序设计(三)院系软件学院专业网络工程班级09-2姓名母涵予学号0920020214实验日期10-17实验目的1熟练掌握子程序的结构。2掌握子程序设计的思想、方法及上机调试过程。3熟练掌握系统功能调用的作用。4掌握系统功能调用的思想、方法。实验准备18086/8088汇编语言指令及伪指令的用法2子程序设计的思想和方法(1)子程序是功能相对独立的程序段,它可以实现源程序的模块化,简化源程序结构,提高编程效率(2)子程序定义:利用过程伪指令PROC和ENDP,格式如下: 过程名PROC NEAR|FAR ;过程体 过程名ENDP其中:可选的参数指定过程的调用属性。没有指定过程属性,则采用默认属性NEAR。NEAR属性:段内近调用,子程序只能被相同代码段的其他程序调用FAR属性:段间远调用,子程序可以被相同或不同代码段的程序调用(3)主程序(调用程序)调用子程序(被调用程序):利用CALL指令(4)子程序返回主程序:利用RET指令(5)保护现场:子程序开始处应该保护子程序中使用的寄存器(通常利用堆栈),子程序返回前相应进行恢复。(6)子程序中对堆栈的压入和弹出操作通常成对使用,以保持堆栈的平衡。(7)子程序允许嵌套和递归(8)处理好子程序与主程序之间的参数传递问题:利用寄存器、内存缓冲区及堆栈。3DOS和BIOS中断调用是机器及操作系统提供的中断调用功能4系统功能调用的步骤: 在AH寄存器中设置系统功能调用号 在指定寄存器中设置入口参数 用中断调用指令(INT i8)执行功能调用 根据出口参数分析功能调用执行情况5DOS利用21H号中断提供给用户近百个系统功能,主要包括设备管理、目录管理和文件管理三个方面的功能(1)输入一个字符,01H号功能调用(2)输出一个字符,02H号功能调用(3)输入一个字符串,0AH号功能调用(4)输出一个字符串,09H号功能调用注意它们的入口参数及出口参数6BIOS也以中断服务程序的形式,向程序员提供系统的基本输入输出程序BIOS功能更加基本,且与操作系统无关,当DOS没有启动或不允许使用DOS功能调用时,可以使用BIOS功能调用(1)键盘I/O中断调用INT 16H(2)显示器输入中断调用INT 10H实验进度本次共有 2 个练习,完成 2 个。实验内容实验内容(续)包含本次实验项目要完成的实验内容、实验原理、实验步骤或过程;对原始实验数据记录要详实。1 编写主程序调用一个过程,实现将两个非压缩BCD码转换为一个压缩BCD码,并用字符显示功能和字符串显示功能完成在屏幕上显示一个字符串“Hello World!”的功能。(1)实现方法(2)程序代码datasegmentadb04hbdb05hcdb?ddb10hstringdbhelloworld,$dataendscodesegmentassumecs:code,ds:datastart:cldmovax,datamovds,axcallhmovax,segstringmovds,axmovdx,offsetstringmovah,09hint21hhprocmoval,amuldaddal,bmovc,alhendpcodeendsend start2在内存建立一个表TABLE,其中存放20个字节型无符号数,从键盘输入一个数X(一位数),查找该数X在TABLE中是否存在,若存在,则在RESULT单元存入1,否则存入-1。(1)实现方法 定义一个table表 ,存有20个字节数。利用repne scasb比较01 是否在table中,利用CX 存放字符串长度,al中01在我所编写的程序中,在result中存入1.(2)程序代码data segmenttable db 01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20result db ?data endscseg segmentassume cs:cseg,es:datastart:cldMOV AX, DataMOV es, AXLEA di, tablemov cx,20mov ah,01hint 21hmov al,0fhrepne scasbjz zermov result,-1jmp stopzer:mov result,1stop:MOV AH, 4CHINT 21HCSEG ENDSEND START实验分析实验分析(续)日记录实验的调试方法和运行结果;实验数据的分析和处理;实验过程;实验中遇到的问题和解决方案。【实验1】(1)利用编辑成编辑器完成保存连接以及调试工作。(2)进入DOS系统,进行调试。用反汇编命令u。进行反汇编。(3)用d指令查看数据段的内容。(4)使用T指令使程序运行。P命令查看运行。(5)继续使用p命令查看结果。(6)实验问题和解决方案实验进行中忽视了p命令与命令的区别。就是说T是比较老实的,他可以说是按照CPU的真实运行过程来的,执行中断的入口。如果用P命令不会跳转到中断程序的入口,然后直接就接着下一条指令执行。【实验2】(1)利用编辑成编辑器完成保存连接以及调试工作。(2)进入DOS 界面用反汇编指令-u,查看指令的物理地址。DS=13C6H,将TABLE的偏移量存入DI=0000H,跳转的物理地址为001C,有两个强制的转换,强制把数据转换为byte类型。(3)用T 指令逐条执行,观察程序执行过程,直到程序执行完毕。因为程序中,01在TABLE的表中,而且第一个就是,所以跳转到名为ZER的程序执行。把1放入RESULT中。(4)查看es 段的结构,是否将01h送入。本程序,用es段代替ds,段。(5)实验问题和解决方案 利用反汇编指令-u查看物理地址的时候出现了BYTE PTR,以为是数据无法传递,后来查资料明白这是强制转换。数据段实验总结【实验1】1存在的问题想要显示HELLO WORD 时使用T指令,会执行中断,所以不会显示结果,但是p指令却可以向下执行。使用p指令。2实验结论 实现了压缩BCD码和非压缩BCD码之间的转换,和在DOS屏幕上的显示。3收获和体会本次试验,我们用汇编语言来实现具体问题并成功的学习过程。并深刻的体会到本次实验的重要性以及动手能力在科学学习中不可或缺的重要性。了解到了存储器之间内容的传递,体会到了运用汇编语言,编写数值计算程序的方法和步骤。分步骤的了解到了计算机程序在各个储存器, 寄存器,之间的调度。 4改进意见(暂无)【实验2】1存在的问题利用反汇编指令-u查看
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 波峰焊技术员试题及答案
- ISO 9001(DIS)-2026重大变化之1:“质量文化和道德行为”专题深度专业解读与应用指导材料(雷泽佳编制-2025A0)
- 农业银行2025金融科技岗笔试题及答案安徽地区
- 农业银行2025乐山市秋招笔试英语题专练及答案
- 中国银行2025六盘水市秋招结构化面试经典题及参考答案
- 2025年3D打印技术的骨骼修复技术
- 2025年3D打印技术的材料科学与制造工艺
- 建设银行2025吐鲁番市信息科技岗笔试题及答案
- 辅导员业务知识培训课件
- 农业银行2025黄石市秋招笔试创新题型专练及答案
- 医疗机构患者信息管理制度
- 云南省公路工程试验检测费用指导价
- 安全生产管理制度-普货运输
- 建设项目日照分析报告
- 2024八年级数学上册第12章一次函数12.1函数第1课时上课课件新版沪科版
- 一年级新生家长会课件(共25张课件)
- 第八届全国职工职业技能大赛(网络和信息安全管理员)安徽选拔赛试题及答案
- 2024年秋新译林版英语三年级上册 Unit 3第1课时 Cartoon time 教学课件
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 送教上门记录24篇
- 2025届广东省佛山市南海区数学七上期末统考试题含解析
评论
0/150
提交评论