




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理实验指导书 通信专业江苏科技大学电子信息学院2006-8-232前 言 课程名称:微机原理适用对象:通信专业本科学时学分:共56学时,3.5学分,其中实验时数12学时。随着微型计算机应用的日益广泛和深入,接口技术有了迅速的发展,并已经成为直接影响微机系统功能和推广应用的关键。从硬件的角度来看,微机的开发与应用,在很大程度上就是微机原理电路的开发与应用,因而微机原理技术成为涉及本专业的大学生必不可少的基本技能。微机原理是建立在模拟电子线路、数字电路、计算机组成原理、微机原理、汇编语言程序设计和操作系统原理基础之上的一门综合性理论与实践相结合的课程。要求学生在熟练掌握这些先导课程知识的基础之上,采用理论与实践相结合的方法,在理论的指导下,加强动手实验,在实践中巩固理论,进而达到全面掌握微机接口理论并具有一点实际应用开发能力。微机原理是通信专业的必修课程,该课程3.5学分,总学时为56学时,根据教学大纲的要求以及现有实验设备条件,对本课程的实验部分安排了12学时的上机操作,具体分为6次进行,其安排如下:实验一:数据传送与算术运算(设计)实验二:代码转换(设计)实验三:程序的基本结构练习(设计)实验四:存储器扩展(设计)实验五:并行接口(8255)扩展(设计)实验六:串行接口(8251)扩展(设计)为了让学生能够比较好的完成实验,在做实验前需要做下述准备:1实验前的准备工作 认真复习理论教学内容及相关资料。 认真查询相关实验资料,做好预习准备。2实验时应注意的事项 按时参加上机实习,不得无故迟到、早退。 遵守机房管理制度和实验操作规则。 上机者在上机规定的时间内,不能从事与实验无关的内容。 独立完成实验,严禁抄袭他人成果。 按时提交实验报告。3实验报告要求 实验课题 实验设备及工具 实验目的 实验过程和结果分析 通过实验,学生应达到以下几点目的: 通过实验,掌握微机接口的基本概念、功能、组成,掌握CPU与接口交换数据的方式及分析和设计接口电路的基本方法。 掌握定时器/计数器、中断、存储器接口、并行接口、串行接口、A/D与D/A转换器接口以及总线与接口标准的基本概念、组成和特点。熟悉相应的接口芯片的结构。掌握它们一些具体的应用和连接方法,并根据具体的接口功能要求编制相应的接口程序根据所做实验,完成实验总结报告 掌握I/O端口地址译码技术,了解几种主要的人机交互设备接口的功能和原理。15.实验一 数据传送与算术运算一 实验目的:1. 学会数据传送和算运算指令的用法。2. 熟悉在PC机上建立汇编链接调试,和运行8088汇编语言程序的过程。3. 掌握利用DEBUG调试软件来调试汇编语言程序的方法。二 实验器材1. PC机一台; 2. QTH-2008PCI 32位微机教学实验仪一套。三 实验内容:多字节加法,要求把6个字节数据分配在数据区,定义30个字节的堆栈空间。将多字节的和存放在字节sum单元中。四 实验步骤1、 运行EDIT或记事本等编辑器,建立文件名为XXXASM源文件,输入给定程序。2、 用MASMEXE或TASMEXE汇编程序产生XXXOBJ目标文件。方法:MASM XXXASM。3、 用LINK.EXE或TLINK.EXE产生XXXEXE可执行文件。方法:LINK XXX.OBJ。4、 运行DEBUG调入XXXEXE可执行文件。方法一: DEBUG XXXEXE。方法二: DEBUG N XXXEXE。 L。5、 运用DEBUG命令对XXXEXE进行调试和分析。A用反汇编U命令,将汇编程序段调到显示屏幕上。b.用T单步执行程序段,执行每条指令观察其结果。c.用运行命令G执行程序并验证其执行结果。d.用设置断点的方法执行程序段并检查执行结果。e. 利用DEBUG其他命令运行、修改、并观察其结果。注意:以上方法MASMEXE,LINKEXE,XXXASM都在同一路径下。五 思考题1、 常用的数据传送指令和算术运算指令有几种类型?试归纳并举例说明。2、 如果程序中有弹出指令,栈指针如何变化?试举例说明。3、 在DEBUG下输入程序段,如何建立、修改、存盘?试举例说明。4、 程序段近过程与远过程有什么不同?什么情况下是RET?什么情况下是RETF?5、 程序返回系统有几种方法?并说明? 六 报告要求1. 写明本次实验内容和实验步骤。2. 整理出实验任务的源程序和运行结果。3. 对调试过程中的问题进行分析,对运行结果进行分析。4. 写出上机调试各步骤及中间过程。5. 小结DEBUG的使用方法。6. 回答思考题。实验二 代码转换一 实验目的:1. 学习不同数及编码相互转换的程序设计方法。2. 进一步掌握程序编辑,编译,连接过程。3. 进一步掌握可执行文件在DEBUG里调试过程。二 实验器材。1. PC机一台; 2. QTH-2008PCI 32位微机教学实验仪一套。三 实验内容:在数据段中定义1个字节数据,将数据转换成16进制的ASCII码,然后在屏幕上显示这些数据。显示数据用DOS功能2号调用,每个数据用空格分隔。例如 数据4AH,经过转换在屏幕上显示4AH四 实验步骤:1 输入给定的程序,编译、连接并产生可执行文件。2 DEBUG调试分析各程序的功能,观察调试过程中数据传输指令执行后,各寄存器及数据区的内容。并给出16进制数转换成ASCII码数学表达式。3 更改数据区的数据,考察程序的正确性。五 思考题:1. 十六进制数转换成ASCII码还有哪些简单的方法吗?2. 十进制数的ASCII码如何转换为BCD码?。3. 将一个数据改为8个数据,实现它,程序需要怎样修改?4. 试列出数码转换对应关系表。六 实验报告:1写明本次实验内容和实验步骤。2整理出实验任务的源程序和运行结果。并对源程序进行注册说名明。3对调试过程中的过程中的问题进行分析,对运运结果进行分析。4写出上机调试步骤及中间过程。 5回答思考题。实验三 程序的基本结构练习一、 实验目的:1 了解掌握分支循环和子程序调用的基本程序结构。2 学习综合程序设计编制及调试。3 掌握模块化程序编译连接的方法。二、 实验器材:1 PC机一台; 2 QTH-2008PCI 32位微机教学实验仪一套。三、 实验内容:在数据段中有20个字节单元,保存着某一功课的成绩,统计该门功课中不及格、60-69,70-79,80-89,90-100的人数,并且求该门功课的平均值四、 实验步骤:1. 输入给定程序,分析模块程序结构,编译、连接产生可执行文件。2. 断点调试程序段的工作过程。3. 更改数据区中的数据,考察程序的正确性。4. 试着进行成绩的输入和输出结果。五、 思考题:1. 统计人数还有什么好的方法?2. 输入和输出注意那些问题?六、 实验报告:1. 总结编写程序的基本结构的方法和原则,编译和连接方法。2. 写明本次实验内容和实验步骤。3. 整里出实验任务的源程序和运行结果,并对源程序进行注释说明。4. 对调试过程中的问题进行分析,对运行结果进行分析。5. 写出上机调试各步骤及中间过程。6. 回答思考题。实验四 存储器扩展一、 实验目的:1、 熟悉微机接口实验装置的结构及使用方法2、 了解微机存储器系统的组成结构3、 掌握对微机存储器扩充的方法二、 实验器材:1 PC机一台; 2 QTH-2008PCI 32位微机教学实验仪一套。三、 实验说明1、61256介绍微处理器通过数据总线、地址总线及控制总线与存储器连接,如下图所示:控制总线地址总线存储器CPU数据总线地址总线为地址信号,用来指明选中的存储单元地址。数据总线为数据信号,它是微处理器送往存储器的信息或存储器送往微处理器的信息。它包括指令和数据。控制总线发出存储器读写信号,以便从ROM、RAM中读出指令或数据,或者向RAM写入数据。在微机系统中,常用的静态RAM有6116、6264、62256等。在本实验中使用的是61256。61256为32K8位的静态RAM,其逻辑图如下:其中A014为15根地址线,I/O07为8根数据线,CS 为片选端,OE为数据输出选通端,WR为写信号端。其工作方式见下表:控制信号CSOEWR数据线读LLH输出写LL输入非选H高阻态2、访问地址超过1M的地址空间由于实验装置中映射的存储器地址空间大于DOS应用程序可以访问的1M地址空间,因此必须进入保护模式才可以访问大于1MB的存储器空间地址。在32位微机原理中已经学习了保护模式下程序的编写,本实验要求编写保护模式的程序,访问高于1MB的存储空间,实现对61256的读写访问为了实现对61256的读/写,实验中需要安排两个数据段描述符,第一个描述源数据段,为1MB以内空间的某个存储区域;第二个描述目标数据段,指向实验系统中某个61256扩展的存储区域。实验程序可以在保护模式下将源数据段中的内容写入目标数据段,传输结束后可以在把源数据段内容清为0,再把目标数据段的内容写入源数据段,然后在显示这个内容看是否实现了正确的数据写和读。四、 实验内容 编写一个保护模式下的实验程序,对实验装置上的1片的61256芯片内写入一些数据,然后读出显示在屏幕上以验证正确与否。五、 实验步骤:1. 存储器连线2. 输入给定程序,分析模块程序结构,编译、连接产生可执行文件。3. 断点调试程序段的工作过程。4. 更改数据区中的数据,考察程序的正确性。六、 思考题:保护模式下访问内存与实模式相比有什么不同?七、 实验报告:1. 写明本次实验内容和实验步骤。2. 整里出实验任务的源程序和运行结果,并对源程序进行注释说明。3. 对调试过程中的问题进行分析,对运行结果进行分析。4. 写出上机调试各步骤及中间过程。5. 回答思考题。实验五 并行接口(8255)扩展一、 实验目的了解可编程并行接口芯片 8255 的内部结构、工作方式、初始化编程及应用。二、 实验设备1. PC 机一台;2. QTH-2008PCI 32位微机教学实验仪一套。三、 实验说明1 实验四所用74LS244,74LS27芯片是不可编程的简单I/O接口,而8255是 一个可以编程的接口芯片。2 8255A 的内部结构:(1)数据总线缓冲器:这是一个双向三态的 8 位数据缓冲器,它是 8255A 与微机系统数据 总线的接口。输入输的数据、CPU 输出的控制字以及 CPU 输入的状态信息都是通过这个缓冲器 传送的。(2)三个端口 A,B 和 C:A 端口包含一个 8 位数据输出锁存器和缓冲器,一个 8 位数据输 入锁存器。B 端口包含一个 8 位数据输入/输出锁存器和缓冲器,一个 8 位数据输入缓冲器。C 端口包含一个 8 位数据输出锁存器及缓冲器,一个 8 位数据输入缓冲器(输入没有锁存器)。(3)A 组和 B 组控制电路:这是两组根据 CPU 输出的控制字控制 8255 工作方式的电路, 它们对于 CPU 而言,共用一个端口地址相同的控制字寄存器,接收 CPU 输出的一字节方式控制 字或对 C 口按位复位字命令。方式控制字的高 5 位决定 A 组工作方式,低 3 位决定 B 组的工作方式。对 C 口按位复位命令字可对 C 口的每一位实现置位或复位。A 组控制电路控制 A 口和 C 口上半部,B 组控制电路控制 B 口和 C 口下半部。(4)读写控制逻辑:用来控制把 CPU 输出的控制字或数据送至相应端口,也由它来控制把 状态信息或输入数据通过相应的端口送到 CPU。3. 8255A 的工作方式:方式 0基本输入输出方式;方式 1选通输入输出方式;方式 2双向选通输入输出方式。4. A0,A1:端口选择信号。规定A1A0为00,01,10,11等分别选中端口A,端口B,端口C和控制口。四、 实验内容1. I/O 输入输出实验:利用 8255 的 A 口读取开关状态,8255 的 B 口把状态送发光二极管显示2. 流水灯实验:利用 8255 的 A 口,B口循环点亮发光二极管。 五、 实验步骤1 实验连线2 汇编、连接、运行程序3 观察运行结果六、 思考题:1 若把实验内容1的发光二极管换成七段数码管,根据开关设置的数据(09,AZ的ASCII码)分别显示相应的字符09和AZ。电路及程序应如何修改?2 若利用8255的A口模拟交通信号灯,内容2电路及程序如何修改?七、 实验报告:1 画出硬件原理图,说明各部分功能2 画出程序框图,完成程序设计3 分析调试运行结果4 回答思考题实验六、串行接口8251扩展一 实验目的 1 掌握 8251芯片的结构及工作方式各应用。 2 学习有关串行通讯的知识。 3 学习 PC 机串口的操作方法。 4 掌握使用 8251实验双机通讯的软件编制和硬件连接技术。 二 实验设备 1 PC 机一台; 2 QTH-2008PCI 32 位微机教学实验仪一套。 三 实验说明微机系统使用Intel 8251串行接口芯片构成其串行通讯实验单元,其连接线路如图所示。8251A是 Intel 公司的产品,具有同步、异步接收或发送的功能,使用单+5V电源的单相时钟,其功能是: 1 同步或异步方式下,字符位数 5-8 个; 2 同步传输率 0-64K,异步传输率 0-19.2K; 3 异步传输时,自动产生 1 个起始位,编程可产生 1 个或1 个半或2 个停止位; 4 具有奇偶错、数据丢失和帧错误检测能力;5 同步方式时,可自动检测,插入同步字符四 实验内容在本实验中,要求使用8251做异步方式串行传输。数据帧格式规定为:每一帧数据包括一个逻辑“0”的起始位,7位ASCII码数据位,1位逻辑“1”的停止位,传输波特率为2400 baut,其波形如图2所示。 低位 高位 起始位“0” 7位字符 奇偶 停止位“1” 间歇 起始位“0”图2 串行传输的数据格式1. 数据信号的串行输出 按图3所示连接示波器,以观察串行输出的数据波形。程序的功能是连续发送字符“7”到8251串口输出。 + - 示波器 TXD GND 图3系统的串口与示波器的连接2. 自发自收实验:使8251工作在异步方式下,8253计数器用于产生发送和接收时钟,TxD和RxD连在一起构成自发自收的实验环境。五 实验步骤:1. 实验连线。2. 连接示波器。3. 输入程序并运行,在示波器上观察数据波形并作记录。4. 改变发送的字符,运行程序,观察相应的波形并作记录。5. 在自发自收程序中,观察收发数据是否一致六 思考题6. 分析实验程序,写出相应的流程图。7. 8251 有几种工作方式,其数据格式如何? 8. 8251 对收发时钟有何特殊要求?七 实验报告:1. 画出硬件原理图,说明各部分功能2. 画出程序框图,完成程序设计3. 分析调试运行结果4. 回答思考题附 录附录一 输入输出功能调用1、带回显的单字符输入(1号功能)功能:等待键盘输入,直到按下一个字符,将字符的ASCII码送AL,并在屏幕上显示该字符。若按下的是Ctrl-C(Break),则停止运行程序。 调用格式: MOV AH,1 INT 21H 2. 单字符显示 (2号功能-又称屏幕显示字符) 功能:将字符送至屏幕上显示。调用格式:DL待显示字符的ASCII码;MOV AH,2INT 21H 例:在屏幕上显示“$”。 MOV DL,$ MOV AH,2 INT 21H3、字符串显示 (9号功能-输出字符串) 功能:在屏幕上显示一个字符串。该字符串必须存放在内存的数据区中,并是以$为结尾的ASCII玛字符串。调用前必须将字符串的首址送DS:DX。 如:BLOCK DB This is an example. $ LEA DX, BLOCK MOV AH, 9 INT 21H4、字符串输入 (0AH号功能) 功能:从键盘接收一串字符,并将它们的ASCII码送入用户指定的缓冲区。 在调用0AH功能前,必须定义一个输入缓冲区。调用时,DS:DX必须指向输入缓冲区DATA SEGMENTBUFFER DB 100 DB ? DB 100 DUP (?)DATA ENDSMOV AX,DATAMOV DS,AXMOV DX,OFFSET BUFFERMOV AH,0AHINT 21H附录二 输出例程;* Procedure to Get a Character *; Given : Nothing; Process : Input a character by using DOS function #1 and interrupt 21h; : Note that no registers are protected in this procedure since it; : returns the character in the AL register.; Return : The input character in AL register;*GETCHAR PROC ;Define procedure MOV AH,01H ;DOS print character function #1 INT 21H ;Get the character RET ;Return to calling procedure GETCHAR ENDP ;End of procedure;* Near procedure to get a char *; Given : The character to print in DL register; Process : Print a character by using DOS function #2 and interrupt 21h; Return : Nothing;* PUTCHAR PROC ;Define procedure MOV AH,02H ;DOS print character function #1 INT 21H ;Get the character RET ;Return to calling procedure PUTCHAR ENDP ;* Procedure to Input the Number *; Given : Nothing; Process : Accept a string of ASCII digits and convert them to an integer; Return : Return the integer in AX register;* GETNUM PROC PUSH BX ;Save the contents of all registers PUSH CX ; except for AX, which will contain the PUSH DX ; number which was read MOV BX,0H ;Zero the BX register NEXTDIGIT:MOV AH,1H ;DOS input character function #1 hex INT 21H ;Get a character CMP AL,0 ;If the character is less than 0, then JL DONE ; we have all the number and are Done CMP AL,9 ;If the character is more than 9, then JG DONE ; we have all the number and are Done SUB AL,30H ;Convert ASCII to integer value XOR AH,AH ;Zero the high byte of AX PUSH AX ;Save the digit on the stack MOV AX,10D ;Place 10 decimal in AX to multiply by MUL BX ;Multiply the number by 10 MOV BX,AX ;Get number from AX and put in BX POP AX ;Get the digit back from the stack ADD BX,AX ;Add the digit to the number JMP NEXTDIGIT ;Get the next digit DONE: MOV AX,BX ;Return the NUMBER in AX register POP DX ;Restore the registers in reverse order POP CX ; POP BX ; RET ;Return to Calling procedureGETNUM ENDP;* Procedure to Print the Number *; Given : The integer to be printed in the AX register; Process : Convert the integer to a string of ASCII digits and print them; one at the time, until all are printed; Return : Nothing;* SHOWNUM PROC PUSHA ;Save the contents of all registers MOV CX,0H ;Zero the CX register for digit counter MOV BX,10D ;Set up divisor of 10 decimal NEXTOUT: MOV DX,0H ;Zero DX reg for high order word of div DIV BX ;Divide number in AX by 10 PUSH DX ;Save remainder on the stack INC CX ;Count the digit CMP AX,0H ;Is number in AX greater than 0 JG NEXTOUT ;Yes, get next digit CHAROUT: POP AX ;Get number from the stack ADD AX,30H ;Convert number to ASCII character MOV DL,AL ;Move to character print register CALL PUTCHAR ;Print the character DEC CX ;Reduce characters to print by one JNZ CHAROUT ;If CX 0 loop to print next digit POPA ;Restore the registers RET ;Return to Calling procedure SHOWNUM ENDP附录三 调试工具debug的使用方法DEBUG是专门为汇编语言设计的一种调试工具,它通过步进,设置断点等方式为汇编语言程序员提供了非常有效的调试手段。1、DEBUG程序的启动在DOS提示符下,可键入命令:CDEBUGd:path文件名 参数1参数2其中文件名是被调试文件的名称,它须是执行文件(EXE),两个参数是运行被调试文件时所需要的命令参数,在DEBUG程序调入后,出现提示符“-”,此时,可键入所需的DEBUG命令。在启动DEBUG时,如果输入了文件名,则DEBUG程序把指定文件装入内存。用户可以通过DEBUG的命令对指定文件进行修改、显示和执行。如果没有文件名,则是以当前内存的内容工作,或者用命名命令和装入命令把需要的文件装入内存,然后再用DEBUG的命令进行修改、显示和执行。2、DEBUG的主要命令汇编命令A,格式为:-A地址该命令从指定地址开始允许输入汇编语句,把它们汇编成机器代码相继存放在从指定地址开始的存储器中。反汇编命令U,有两种格式:1)-U地址该命令从指定地址开始,反汇编32个字节,若地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32个字节。2)-U范围该命令对指定范围的内存单元进行反汇编,例如:-U 04BA:0100 0108或 U 04BA:0100 L9此二命令是等效的。运行命令G,格式为:-G =地址1地址2地址3。其中地址1规定了运行起始地址,后面的若干地址均为断点地址。追踪命令T,有两种格式:1)逐条指令追踪:-T=地址该命令从指定地址起执行一条指令后停下来,显示寄存器内容和状态值。2)多条指令追踪:-T=地址值该命令从指定地址起执行n条命令后停下来,n由值确定。显示内存单元内容的命令D,格式为:-D地
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030儿童自然教育市场发展分析与发展趋势及投资前景预测报告
- 2025-2030儿童绘本阅读行业竞争格局与市场前景预测报告
- 2025-2030儿童科学实验教育行业现状与投资前景预测报告
- 2025-2030儿童心理健康行业市场现状分析与投资前景预测及发展策略研究报告
- 2025-2030儿童安全教育产品形态演进与技术融合趋势报告
- 2025-2030儿童博物馆教育市场潜力与内容策划及运营模式创新分析报告
- 2025-2030儿童体适能训练机构选址策略与客流量预测报告
- 个人科研成果保护承诺书4篇
- 半导体设备制造协议
- 企业团队成员成长计划与记录表模板
- 零售药店医保培训试题及答案,零售药店医保培
- 江苏历年语文高考真题答案
- DB51T 2975-2022气凝胶复合保温隔热材料及系统通用技术条件
- 外科学-第十一章-外科感染(含案例分析)课件
- 《ch棘皮动物》课件
- 急诊科岗位职责
- 中国服用过兴奋剂运动员名单 兴奋剂真的是毒品吗
- 小学英语语法时态讲解与归纳
- 《生存与修炼》熊厚音讲《道德经》教学文案
- 淘宝新店运营计划书文献
- 产教融合校企合作[可修改版ppt]课件
评论
0/150
提交评论