微机原理实验—汇编语言指导书.docx
微机原理及接口技术试验指导书董洁编北京科技高校自动化学院限制科学与工程系2013年5月微机原理与接口技术是工科计算机与相关专业学习微型计算机基本学问和应用技能的重要课程。本课程帮助学生驾驭微型计尊机的硬件组成与运用:学会运用指令系统和汇编语言进行程序设计:熟识各种类型的接口与其应用,树立起微型计算机体系结构的基本概念,为后继计算机课程的学习与应用打好基础。试验教学是本课程的重要组成部分,对学生理解概念、进行程序设计与提高应用技能至关重要。在指导书中,每一个试验均依据该课程试验大纲的要求编写,力求紧扣理论学问点、突出设计方法、明确设计思路,通过多种形式完成试验任务,最终引导学生有目的、有方向地完成试验任务,得出试验结果C书中标(*)的试验可酌情选作。由于作者水平有限,书中难免存在不足之处,敬请读者指责指正。编者2013年5月微机原理试胺一汇编语言指导书实验一显示程序试验一、试验目的1 .驾驭在PC机上以十六进制形式显示数据的方法;2 .驾驭部分DOS功能调用运用方法;3 .熟识汇编语言调试环境和TUrbODebUgger的运用。二、试验所用设备PC微机一台。三、试验内容一般来说,程序须要显示输出提示运行的状况和结果,有的还须要将数据区中的内容显示在屏幕上。本试验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。试验中可运用DOS功能调用(INT21H)。(1)显示单个字符输出入口:AH=O2H调用参数:D1.=输出字符(2)显示字符串入口:AH=O9H调用参数:DS:DX=串地址,'$'为结束字符(3)键盘输入并回显入口:AH=O1.H返回参数:A1.=输出字符(4)返回DOS系统入口:AH=4CH调用参数:A1.=返回码四、试验步源1 .运行轻松汇编软件,选择Edit菜单,依据试验内容的描述编写试验程序,本试验显示部分参考试验流程如图IT示;2 .运用Cofnpi1e菜单中的Cof1.IPi1e和1.ink对试验程序进行汇编、连接:3 .运用RUn菜单中的RUn,运行程序,视察运行结果;4 .运用RUn菜单中的DCbUg,谓试程序,视察调试过程中,数据传输指令执行后,各寄存器与数据区的内容:5 .更改数据区中的数据,考察程序的正确性。11W11图17显示程序试验流程图五、参考程序清单DATASEGMENTMESDB'Showaashex:',OAH,OD1.I,SDDB'a,DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS.AXMOVDX,OFFSETMES;显示提示信息MOVH,0911INT21HMOVDI,OFFSETSDMOV1.DS:DIANDA1.,OFOH:取高4位SHRA1.4CMP.OAH;是否是A以上的数JBC2ADDA1.,07HC2:ADD1.,30HMOVD1.A1.;显示字符MOVH,02HINT21HMOV1.,DS:DIAND1.,OFH;取低4位CMPA1.,OAHJBC3ADD1.07HC3:ADD1.,30HMOVD1.1A1.;显示字符MOVH,02HINT21HMOVAX,4C00H;返回DoSINT2111CODEENDSENDSTART六、试验报告内容与要求写出程序调试过程与运行状况。2 .运用CompiIe菜单中的Compi1.e和Iink对试验程序进行汇编、连接:3 .运用RUn菜单中的RUn,运行程序,视察运行结果;4 .更改数据区中的数据,考察程序的正确性。五、试验报告内容与要求依据试验要求编写程序并调试,写出程序调试过程与运行状况。实验七子程序设计试验一、试验目的1 .驾驭子程序的定义调用方法;2 .驾驭系统功能调用程序的运用和编写方法。二、血所用设备PC微机一台。三、试验内容在汇编程序设计中,用户通常会将常用的具有特定功能的程序段编制成子程序运用。般过程定义伪操作的格式如下:procedurenamePROCAttribute*procedurenameENDP其中AttribUte是指类型属性,可以是NEAR或FAR,调用程序和过程在同一个代码段中运用NEAR属性,不在同一个代码段中,运用FAR。1 .数据移动试验本试验要求将指定数据区的数据搬移到另一个数据区,并通过子程序调用的方法将搬移的数据显示在屏幕上。密»据块H标«据块目“攻JS块源数M块图7-1源数据块和目标数据块在存储器中的位置示意源数据块和目标数据块在存储中的位置可能有三种状况,如图7-1所示。对于两个数据块分别的状况,数据的传送从数据块的首地址起先,或者从数据块的末地址起先均可。但对于有部分垂桎的状况,则要加以分析,否则重在部分会因搬移而遭到破坏。所以搬移过程可以通过以下两个方式完成:当源数据块仃地址目标块仃址时,从数据块的"地址起先传送数据;当源数据块首地址II标块首址时,从数据块的末地址起先传送数据。2 .数码转换与显示试验有时、,系统运行或者程序运行期间在遇到某些特别状况时,须耍计算机白动执行一组特地的例行程序来进行中断处理。这段例程称为中断子程序。中断分为内部中断和外部中断两类。象除法错或者程序中为了作某些处理而设置的中断指令等属于内部中断。外部中断则主要用来处理I/O设备与CPu之间的通信。在汇编语言程序设计中运用系统功能调用程序,只须要通过MOV指令,将中断参数装到与此有关的寄存器中,然后用INT指令调用所需中断。假如希望中断处理程序是用户白已编写的段程序,则须要修改对应中断的中断处理程序入口。微机系统中可以运用0-255共256个中断。当80x86系统【作于实模式的时候,内存的OoOH-3FFH被用于作为中断向量表,向殳表中包含/256个中断的中断子程序入口(中断向量地址),向量表内容如图7-2示。07FHOOSHOO1.HOOOH、rii/单步中Wj×中IKMfiU0/除法精供用户使用系娩用或保留图7-2中断向量表本试验要求利用47H号中断将组字符转换成十六进制数码,并在屏幕上显示出来。四、试殴步骤I.运行轻松汇编软件,选择Edit菜单编写试验程序,对试验1,供应16字节的数据:11H,2211,3311,4411,5511,66H,77H,88H,99H,OAAH,OBBH,OCCH,ODDH,OEEH,OFFH,0011;2 .运用Compi1.e菜单中的Compi1.e和1.ink对试险程序进行汇编'连接:3 .运用RUn菜单中的RUn,运行程序,视察运行结果:4 .更改数据区中的数据,考察程序的正确性。五、试4ft报告内容与要求依据试验要求编写程序并调试,写出程序调试过程与运行状况。实验八综合程序设计试验一、试验目的1 .驾驭分支、循环、子程序调用的基木程序结构:2 .驾驭16位寄存器、指令运用的基木方法;3 .学习综合程序的设计、编制与调试。二、试验所用设备PC微机一台。三、试验内容1 .排序试验编写一个程序,对存贮区中的一组字进行排序,并将排序结果显示在醉幕上。在编写过程中,应运用16位寄存器,并且采纳基址+变址+偏移的寻址方式。2 .用16位寄存器、指令、寻址方式实现数码转换与显示将组ASCI1.字符转换成十六进制数码,并在屏幕上显示出来。要求运用16位寄存器、16位的指令和寻址方式。如将字符串“He1.1.o!China!"进行转换,应转换成:48H、65H,6CH,6CH、6FH、21H、20H,43H、681.k691.k6EH、61H、21H.四、试验步骤1 .运行轻松汇编软件,选择Edi1.菜单编写试脸程序;2 .运用ComPi1.e菜单中的Compi1.e和1.ink对试验程序进行汇编、连接;3 .运用RUn菜单中的RUr1,运行程序,视察运行结果:4 .更改数据区中的数据,考察程序的正确性。五、试验报告内容与要求依据试验要求编写程序并调试,写出程序调试过程与运行状况。附录一:试殴报告格式试验报告要求用A4纸,写明试脸目的、试验内容,详细试验按要求写出程序清单、试验过程、试验过程中遇到的问题、解决方法与关于试验的思索。试验名称成果班级姓名学号试验目的f试航内容:试鸵步骤:试验结果与分析I收获体会,