资源描述:
《微机原理接口技术实验教案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.微机原理与接口技术实验讲义物理与电子工程学院罗长更word范文.显示程序实验3数据传送实验5运算类程序实验6分支程序设计实验17循环程序设计实验20综合程序设计实验22word范文.显示程序实验实验目的(1)掌握在PC机上以十六进制形式显示数据的方法。(2)掌握部分DOS功能调用使用方法。(3)熟悉Tdpit集成环境和调试器的使用。实验内容及说明 一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使
2、用DOS功能调用(INT21H)。(1)显示单个字符输出入口:AH=02H调用参数:DL=输出字符(2)显示字符串入口:AH=09H调用参数:DS:DX=串地址,’$’为结束字符(3)键盘输入并回显入口:AH=01H返回参数:AL=输出字符(4)返回DOS系统入口:AH=4CH调用参数:AL=返回码 实验步骤(1)运行Tdpit软件,选择文件菜单,点击新建,进入一个源文件编辑界面。根据实验内容的描述编写实验程序,本实验显示部分参考实验流程如图1所示。(2)使用编译菜单中的编译和链接对实验程序进行汇编、连接。(3)使用编译菜单中的运行,运行程序,观察运行结果
3、。(4)使用编译菜单中的调试,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容。(5)更改数据区中的数据,检查程序的正确性。参考程序清单DATASEGMENTMESDB'Showaashex:',0AH,0DH,'$'SDDB'a'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAword范文.START:MOVAX,DATAMOVDS,AXMOVDX,OFFSETMES;显示提示信息MOVAH,09HINT21H MOVDI,OFFSETSDMOVAL,DS:[DI]ANDAL,0F0H;取高4位SHRA
4、L,4图1 CMPAL,0AH;是否是A以上的数JBC2ADDAL,07HC2:ADDAL,30HMOVDL,AL;显示字符word范文.MOVAH,02HINT21HMOVAL,DS:[DI]ANDAL,0FH;取低4位CMPAL,0AHJBC3ADDAL,07HC3:ADDAL,30HMOVDL,AL;显示字符MOVAH,02HINT21HMOVAX,4C00H;返回DOSINT21HCODEENDSENDSTART数据传送实验 实验目的(1)熟悉Tdpit集成环境和调试器的使用。(2)掌握与数据有关的不同寻址方式。 实验内容本实验要求将数据段中的一个
5、字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。实验步骤(1)运行Tdpit软件,选择文件菜单,点击新建进行实验程序的编写。(2)使用编译菜单中的编译和连接对实验程序进行汇编、连接。(3)使用编译菜单中的运行,运行程序,观察运行结果。(4)使用编译菜单中的调试,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容。(5)更改数据区中的数据,考察程序的正确性。参考程序:DDATASEGMENT;定义源数据段MSRDB"HELLO,WORLD!$"LENEQU$-MSRDDATAENDS EXDASEGMENT;定义附加数据段word
6、范文.MSDDBLENDUP(?)EXDAENDS MYSTACKSEGMENTSTACK;定义堆栈段DW20DUP(?)MYSTACKENDSCODESEGMENT;定义代码段ASSUMECS:CODE,DS:DDATA,ES:EXDASTART:MOVAX,DDATAMOVDS,AX;装载数据段寄存器MOVAX,EXDAMOVES,AX;装载附加数据段寄存器MOVSI,OFFSETMSR;设置SIMOVDI,OFFSETMSD;设置DIMOVCX,LENNEXT:MOVAL,[SI];开始传输数据MOVES:[DI],ALINCSIINCDIDECCX
7、JNZNEXTPUSHESPOPDS;将附加段寄存器指向的段值赋给数据段寄存器MOVDX,OFFSETMSDMOVAH,9INT21HMOVAX,4C00H;利用DOS功能调用返回DOS状态INT21HCODEENDSENDSTART将程序主体部分的寄存器间接寻址方式改为相对寻址方式,则如下所示:MOVBX,0MOVCX,LENNEXT:MOVAL,MSR[BX]MOVES:MSD[BX],ALINCBXLOOPNEXT运算类程序实验word范文.实验目的(1)掌握运算类指令编程及调试方法。(2)掌握运算类指令对各状态标志位的影响及测试方法。 实验内容及说
8、明 80x86指令系统提供了实现加、减、乘、除运算的基本指令,