




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验指导书 微机原理与接口技术 第9页微机原理与汇编语言前言本课程是一门实践性较强的课程。教学采用以课堂教学为主,讲授微型计算机的各部分组成、工作过程、互相之间的连接,以及如何使用汇编语言编程,同时使用教学实验设备,通过一定数量的实验,让学生动手完成微型机各部件之间通过接口的联接、编程及简单应用,使学生对微型计算机的主要技术做到深入理解、牢固掌握、灵活应用。并为一些对计算机硬件要求较高的专业提供了锻炼学生的动手能力以及发挥创造能力的实验平台。本实验系统在windows窗口界面调试软件和实验演示软件的支持下,极大地激发了学生学习、实验的兴趣,有效地提高了教学质量。本书的实验内容由汇编语言程序设计实验和硬件接口电路实验两个部分构成。接口部分实验是针对DVCC-8086H通用微机原理与接口实验系统而设计的两个实验。通过开设基础性、提高性、综合性实验以及相关的课程设计,来提高学生的动手能力。汇编语言程序设计的实验环境及上机步骤一、 实验环境汇编语言程序设计的实验环境如下:1、硬件环境微型计算机一台2、软件环境 Windows98/2000/XP操作系统 任意一种文本编辑器(EDIT、NOTEPAD(记事本)、UltraEDIT等) 汇编程序(MASM.EXE或TASM.EXE) 连接程序(LINK.EXE或TLINK.EXE) 调试程序(DEBUG.EXE或TD.EXE)文本编辑器建议使用EDIT或NOTEPAD,汇编程序建议使用MASM.EXE,连接程序建议使用LINK.EXE,调试程序建议使用TD.EXE。二、 上机实验步骤1、确定源程序的存放目录建议源程序存放的目录名为ASM(或MASM),并放在C盘或D盘的根目录下。如果没有创建过此目录,请用如下方法创建:通过Windows的资源管理器找到C盘的根目录,在C盘的根目录窗口中点击右键,在弹出的菜单中选择“新建”“文件夹”,并把新建的文件夹命名为ASM。把MASM.EXE、LINK.EXE、DENUG.EXE和TD.EXE都拷贝到此目录中。2、建立ASM源程序汇编语言原程序后缀为.asm。建立ASM源程序可以使用EDIT或NOTEPAD(记事本)文本编辑器。下面的例子说明了用EDIT文本编辑器来建立ASM源程序的步骤(假定要建立的源程序名为HELLO.ASM),用NOTEPAD(记事本)建立ASM源程序的步骤与此类似。在Windows中点击桌面左下角的“开始”按钮选择“运行”在弹出的窗口中输入“EDIT.COM C:ASMHELLO.ASM”,屏幕上出现EDIT的编辑窗口, 窗口标题行显示了EDIT程序的完整路径名。紧接着标题行下面的是菜单行,窗口最下面一行是提示行。菜单可以用Alt键激活,然后用方向键选择菜单项,也可以直接用Alt-F打开File文件菜单,用Alt-E打开Edit编辑菜单,等等。如果键入EDIT命令时已带上了源程序文件名(C:ASMHELLO.ASM),在编辑窗口上部就会显示该文件名。如果在键入EDIT命令时未给出源程序文件名,则编辑窗口上会显示“UNTITLED1”,表示文件还没有名字,在这种情况下保存源程序文件时,EDIT会提示输入要保存的源程序的文件名。编辑窗口用于输入源程序。EDIT是一个全屏幕编辑程序,故可以使用方向键把光标定位到编辑窗口中的任何一个位置上。EDIT中的编辑键和功能键符合Windows的标准,这里不再赘述。源程序输入完毕后,用Alt-F打开File菜单,用其中的Save功能将文件存盘。如果在键入EDIT命令时未给出源程序文件名,则这时会弹出一个“Save as”窗口,在这个窗口中输入你想要保存的源程序的路径和文件名(本例中为C:ASMHELLO.ASM)。3、用MASM.EXE汇编源程序产生OBJ目标文件源文件HELLO.ASM建立后,要使用汇编程序对源程序文件汇编,汇编后产生二进制的目标文件(.OBJ文件)。具体操作如下:方法一:在Windows中操作用资源管理器打开源程序目录C:ASM,把HELLO.ASM拖到MASM.EXE程序图标上。方法二:在DOS命令提示符窗口中操作选择“开始”“程序”“附件”“命令提示符”,打开DOS命令提示符窗口,然后用CD命令转到源程序目录下,接着输入MASM命令:I:C: C:CD ASMC:ASMMASM HELLO.ASMC: C:CD ASMC:ASMLINK HELLO.OBJ不管用以上二个方法中的哪个方法,进入LINK程序后,都会提示让你输入可执行文件名(Run file),并在方括号中显示默认的可执行文件名,建议输入可执行文件的完整路径名,如:C:ASMHELLO.EXE回车。后面的两个提示为可选项,直接按回车。注意,若打开LINK程序时未给出OBJ文件名,则LINK程序会首先提示让你输入OBJ文件名(Object Modules),此时输入OBJ文件名HELLO.OBJ并回车,然后进行的操作与上面完全相同。如果没有错误,LINK就会建立一个HELLO.EXE文件。如果OBJ文件有错误,LINK会指出错误的原因。对于无堆栈警告(Warning:NO STACK segment)信息,可以不予理睬,它不影响程序的执行。如链接时有其它错误。须检查修改源程序,重新汇编、连接,直到正确。5、执行程序建立了HELLO.EXE文件后,就可以直接在DOS下运行此程序,如下所示:C:HELLO回车程序运行结束后,返回DOS。如果运行结果正确,那么程序运行结束时结果会直接显示在屏幕上。如果程序不显示结果,我们如何知道程序是否正确呢?例如,这里的HELLO.EXE程序并未显示出结果,所以我们不知道程序执行的结果是否正确。这时,我们就要使用TD.EXE调试工具来查看运行结果。此外,大部分程序必须经过调试阶段才能纠正程序执行中的错误,调试程序时也要使用TD.EXE。下图为汇编语言程序上机的整个流程:YYYNNN有错?有错?有错?结束汇 编输入(修改)源程序连 接运 行查 错开始用EDIT,NOTEPAD等任何文本编辑器。源程序存为.ASM文件 用TD、DEBUG等调试程序进行调试。命令格式:TD 用LINK连接程序进行连接。连接后生成.EXE可执行文件。命令格式:LINK ; 用MASM宏汇编程序进行汇编。汇编后生成.OBJ目标文件。命令格式:MASM ; 例:下面给出了一个完整的汇编语言程序hello.asm,请按照上面所介绍的过程练习。data SEGMENTHello DB Hello, world!,0DH,0AH,$data ENDSprog SEGMENT ASSUME CS:prog,DS:datastart: MOV AX,data MOV DS,AX LEA DX,hello MOV AH,9 INT 21H MOV AH,4CH INT 21Hprog ENDS END start1、 用MASM程序对其进行汇编,产生SAMPLE.OBJ文件。2、 用LINK程序对其进行连接,产生SAMPLE.EXE文件。3、 执行SAMPLE.EXE文件,并观察运行结果是否相符。4、 用DEBUG调试程序。问题汇编语言源程序、汇编程序及汇编之间的区别与联系?程序中MOV AH,4CH 与 INT 21H 这两条语句的功能是什么?能否省略?实验一 DEBUG程序的使用预习内容预习DEBUG程序的各种命令功能及使用方法。实验目的1、 掌握DEBUG程序的各种命令,重点是R,D,E,U,T,G,Q等命令的使用。2、 掌握用DEBUG调试自编程序的方法,为以后实验打下基础。实验内容1、 程序的装入和退出 C:DEBUGd:path name.exe退出DEBUG -Q2、 程序的运行连续运行 -G=地址1地址2跟踪运行 -T=地址值 缺省时从CS:IP处执行3、内容查询D命令 显示内存单元内容 -D 地址R命令 显示寄存器内容 -R 寄存器名4、修改存储单元和寄存器E命令 可方便地修改任一RAM单元的内容 -E地址 内容表R命令 修改寄存器内容 -R 寄存器名5、 反汇编U命令 反汇编用于把内存单元的内容作为机器指令,用助记符的形式显示出来。-U地址 或者-U 地址范围。问题1、 在指令MOV BX,AX中,操作数BX的寻址方式是什么?在DEBUG下执行完该指令后,如何查看执行结果?2、 可否随意在DEBUG提示符“-”后不带参数发出命令G?什么情况下使用命令G时,可不用“=”给出程序的首地址?实验二 DOS系统功能调用预习内容1、 预习DOS系统功能调用的方法。2、 复习比较指令、条件转移指令的用法。实验目的1、掌握DOS系统功能调用中单字符的输入和显示;字符串的输入和显示的方法。2、掌握宏汇编语言MASM上机操作过程和系统功能调用的使用方法。实验内容设计要求:要求从键盘接受一个字符,并判断是否为Y如果是则从键盘读入一串字符I am glad to see you!并显示该字符;否则显示该输入的字符。问题1、 DOS系统功能调用如何实现的?2、调用INT 21H中的09H功能时,要注意什么?实验三 分支程序设计预习内容1、 预习转移类指令的用法。2、复习比较指令、转移指令、的用法。实验目的1、学习提示信息的显示及键盘输入字符的方法。2、掌握宏汇编语言MASM上机操作过程和分支程序的编写方法。实验内容设计要求:要求从键盘接受一个字符,并判断是否是“09”数字键,如果是则提示:it is a number!,如果不是则提示:it is not a number!问题1、 转移指令分为哪几种,各指令之间有何区别?2、调用INT 21H中的09H功能时,要注意什么?实验四 循环程序设计预习内容预习循环控制指令的用法。实验目的掌握宏汇编语言MASM上机操作过程和循环程序的编写方法。实验内容设计要求:写一个把字符串中的所有大写字母改为小写的程序假设字符串以0结尾。参考流程如下:问题1、 循环控制指令分为哪几种,各指令之间有何区别?2、 汇编语言程序中语句END后的标号作用是什么?3、 一个段的大小为多少?一定是64KB吗?如何在DEBUG下查看程序在内存的存放情况?、取一个字符转成小写并保存调整指针是大写字符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 线上产品代销合同范本
- 租车公司年租合同范本
- 正规物业托管合同范本
- 音乐编曲制作协议合同
- 理财平台转让合同范本
- 软件许可使用合同范本
- 绿植租赁合同补充协议
- 项目招标总价合同范本
- 酒店招牌合同范本模板
- 安徽省芜湖市会展中心消防安全测试题十八(含答案)
- 乡镇人大主席“干在实处、走在前列”学习讨论发言材料
- 电工四级考试理论题库及答案
- 世纪英才教程课件
- 婴幼儿发展引导员技能竞赛考试题库(含答案)
- 小学生航空航天知识题库及答案
- 用户反馈收集及问题分析表
- 无人机飞行操作规范手册
- 统编版八年级上册道德与法治第三课 共建网络美好家园 课件
- 【里斯】年轻一代新能源汽车消费洞察与预测 -新物种 新理念 新趋势(2024-2025)
- 企业数据安全管理制度与操作规程
- 2025年合肥市公安局第一批招聘430名警务辅助人员笔试模拟试题带答案详解
评论
0/150
提交评论