ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:242.60KB ,
资源ID:15452936      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15452936.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理实验指导书 1.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

微机原理实验指导书 1.docx

1、微机原理实验指导书 1实验一 系统操作及程序调试举例1. 实验目的学习并掌握实验系统的基本操作,为以后的实验打下基础。2实验设备DICE-8086B实验系统一台3实验准备工作系统一经连好,检查无误后,就可以通电运行。系统提供两种启动方式,即:类型操作显示功能热启动按线路板左下角的复位开关WELCOME TO YOU!复位CPU、接口,清断点冷启动上电复位WELCOME TO YOU!复位CPU、接口,清断点,自检系统系统自动完成后,显示器上会显示“”提示符,等待键入操作命令。4实验内容及步骤(1) 系统操作练习(一)要求:从3500内存单元开始建立015共16个数据。程序流程图如下:实验步骤1

2、 输入与修改:在“”提示符下键入A2000,此时显示器上将会显示程序的段地址CS和偏移地址IP(=2000H),接着就可以在光标处输入程序。注:在输入过程中,若发现本行有错误,则可以按“”键删除并重新输入;若回车后系统提示“ERROR!”,则要在原地址指针处重新正确输入。输入程序后可通过反汇编查看程序。(U操作)2 程序运行:在DICE-8086B实验系统上,程序的运行方式有单步、连续和断点运行几种方式。可参考(T操作,G操作,GB操作等)3 内存单元的修改与显示:用(D操作)可显示内存单元的内容,用(E操作)可修改内存单元的内容。(分别参考前)。运行程序观察从3500H单元开始连续存放的16

3、个数据为多少?任意修改AX的值,再运行程序,显示运行结果是否正确?流程图及参考程序如下: N Y地址 机器码 助记符 注释2000 BF 3500 MOV DI,3500 ;设数据区首址2003 B9 0010 MOV CX,0010 ;字节数送CX2006 B8 0000 MOV AX,00002009 9E SAHF200A 88 05 MOV BDI,AL ;写入一字节200C 47 INC DI ;修改地址指针200D 40 INC AX ;修改数据200E 27 DAA ;十进制调整200F E2 F9 LOOP 200A ;未填完转移2011 CD 00 INT(2) 系统操作练习

4、(二)要求:将内存3500单元开始的015共16个数传递到3600单元开始的数据区中。程序流程图及参考程序如下。实验步骤输入程序并检查无误;运行以上程序;G=2000查看运行结果;分别查看在数据区3500H开始的连续16个单元的内容和3600H开始的内容是否相同。即先D=3500查看,后D=3600查看。在两个数据区的数据是不相同。若不同调试运行,寻找程序错误所在。若数据区3500H单元开始的连续16个单元的内容分别为:23H,33H,43H,45H,34H,44H,24H,20H,61H,62H,38H, 30H,37H,66H,64H,0AH等,试运行程序,观察从3600H单元开始的连续1

5、6个单元的内容应该为多少?流程图及参考程序如下: N Y地址 机器码 助记符 注释2000 BE 3500 MOV SI,3500 ;建立源地址指针2003 BF 3600 MOV DI,3600 ;建立目的地址指针2006 B9 0008 MOV CX,0010 ;字数送CX2009 8B 04 MOV AX,WSI ;取一字200B 89 05 MOV WDI,AX ;送一字200D 46 INC SI ;修改指针200E 46 INC SI 200F 47 INC DI2010 47 INC DI2011 49 DEC CX2012 75 F5 JNZ AGAIN ;未传完转移2014

6、CD 00 INT(3) 实验前的准备工作要求在作所有实验前,大家利用课余时间完成以下程序的设计,并通过汇编生成列表文件(.LST)。以便在输入程序过程中用到一些转移地址,或通过计算每个指令的字节数来计算其在转移指令的转移地址。例如:要求取X,Y,Z三数(字)的最大值,并把最大值放在MAX单元。假若X,Y,Z,MAX分别在以3500H单元开始的连续区域。则我们可以在下面准备实验时,可先编写源程序,然后进行汇编,并生成列表文件(.LST)。若我们所取文件名为EXAM.ASM,且源程序内容这样实现:DATA SEGMENTORG 3500HX DW ?Y DW ?Z DW ?MAX DW ?DAT

7、A ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA ORG 2000HSTART: MOV AX,DATA MOV DS,AX MOV AX,X CMP AX,Y JAE XGY MOV AX,YXGY: CMP AX,Z JAE GMAX MOV AX,ZGMAX: MOV MAX,AX INT 20HCODE ENDS END START则我们的汇编过程为:在DOS提示符MASM当前目录下:执行DOS提示符MASM(回车) 则系统会提示以下问题:Microsoft MACRO Assembler Version 3.00 (C)Copyright Micro

8、soft Corp 1981, 1983, 1984Source filename .ASM: (输入要汇编的源程序名)EXAM (回车) Object filename EXAM.OBJ: (生成的目标文件名)(回车) Source listing NUL.LST: (生成的列表文件名)(回车) Cross reference NUL.CRF: 49698 Bytes free Warning SevereErrors Errors 0 0 (显示警告和错误个数,这里必须为0时,才允许进行连接)经汇编后生成的列表文件(EXAM.LST)如下: 0000 DATA SEGMENT 3500 O

9、RG 3500H 3500 ? X DW ? 3502 ? Y DW ? 3504 ? Z DW ? 3506 ? MAX DW ? 3508 DATA ENDS 0000 CODE SEGMENT ASSUME CS:CODE,DS:DATA 2000 ORG 2000H 2000 START: 2000 B8 - R MOV AX,DATA 2003 8E D8 MOV DS,AX 2005 A1 3500 R MOV AX,X ;X=W3500 2008 3B 06 3502 R CMP AX,Y ;Y=W3502 200C 73 03 JAE XGY ;符号地址XGY=2011 200

10、E A1 3502 R MOV AX,Y ;Y=W3502 2011 3B 06 3504 R XGY: CMP AX,Z ;Z=W3504 2015 73 03 JAE GMAX ;符号地址GMAX=201A 2017 A1 3504 R MOV AX,Z ;Z=W3504 201A A3 3506 R GMAX: MOV MAX,AX ;MAX=W3506 201D CD 20 INT 20H 201F CODE ENDS END START所以可得我们在实验环境下,可这样来编程序(设CS:IP=0000:2000)地址 助记符2000 MOV AX,00002003 MOV DS,AX2

11、005 MOV AX,W35002008 CMP AX,W3502200C JNB 2011200E MOV AX,W35022011 CMP AX,W35042015 JAE 201A2017 MOV AX,W3504201A MOV W3506,AX201D INT 20最后,再按以上步骤去进行。即(1)E3500(回车)在3500H3505H内存单元输入十六进制数;(2)输入程序;(3)G=2000(回车),执行程序;(4)显示3500H3507H单元的内容,则在3506H3507H单元中内容即为结果(X,Y,Z中的最大值)软件实验 通过以下软件实验程序的调试,使大家熟悉8086/808

12、8的指令系统,了解顺序、分支、循环、子程序四种基本结构的编程技术,掌握汇编语言程序设计方法以及如何使用实验系统提供的调试手段来排除软件错误。 实验二 、数码转换及运算程序设计一、 实验目的1掌握不同进制数及编码间的相互转换的程序设计,加深对数码的了解;2掌握使用运算类指令编程及调试的方法;3掌握运算类指令对状态樗位的影响及其测试方法。4进一步熟悉调试程序的方法。二、 实验设备DICE-8086B实验系统一台三、 实验内容及步骤1、 实验内容(1) 将ASCII码表示的十进制数转换为二进制数;例如:设在3500单元开始存放31 32 33 34,则转换后应为0C 22。(2) 将十进制数的ASC

13、II码转换为BCD码;例如:设在3500单元开始存放31 32 33 34,则转换后应为01 02 03 04等。(3) 将十六制数转换为ASCII码;例如:设在3500单元开始存放3B 20,则转换后应为42 33 30 32。参考程序:地址 助记符 注解2000 MOV CX,00042003 MOV DI,35002006 MOV DX,WDI2008 MOV AX,DX200A AND AX,000F ;取低4位值200D CMP AL,0A ;判断是否“09”200F JB 2013 ;是则转20132011 ADD AL,07 ;否则是“AF”,加072013 ADD AL,30

14、;转换为ASCII码2015 MOV BDI+0A,AL2018 INC DI2019 PUSH CX ;保护循环计数器内容201A MOV CL,04 ;移位次数送CL201E POP CX201F LOOP 20082021 INT(4) BCD码转换为二进制码。例如:设3500单元开始存放非压缩BCD码01 02 03 04 05 06,则转换后应为0C 00 22 00 38 00。(5) 将二进制数转换为ASCII码例如:设3500单元开始存放4FFFH,则转换后为20479或9 7 4 0 2。在数据段中首址为3500H的X单元,3504H开始的Y单元及3508H开始的Z单元,且其

15、数据如下:DS:3500 A0 65 15 00DS:3504 9E B7 21 00DS:3508 假定原数码在3500开始的内存单元中存放,转换结果存放在3520开始的内存单元。(6)多字节加法运算计算Z=X+Y,并将结果存入Z单元。参考程序如下:地址 助记符 注解2000 MOV AX,W3500 ;X低位送AX2003 ADD AX,W3504 ;X低位加Y低位2007 MOV W3508,AX ;存低位和200A MOV AX,W3502 ;X高位送AX200D ADC AX,W3506 ;X高位加Y高位2011 MOV W350A,AX ;存高位和2014 INT(7)BCD码减法

16、运算计算Z=X-Y,编写程序实现。例如,X=40,Y=12,则Z=28。(8)BCD码的乘法运算计算Z=X*Y,试编写程序完成。例如,X=12,Y=35,则Z=420。例如,B=23,A=7,则C=3,R=2。(9)开平方运算用减奇数法可获得平方根的整数部分,是因为。设被开平方数为正整数,存放在3500H单元,参考程序如下:地址(H) 助 记 符 注 解2000 MOV AX,W3500 ;取被开方数2003 MOV CL,00 ;清平方根2005 MOV DX,0001 ;奇数初值2008 SUB AX,DX ;减奇数200A JB 2013 ;不够减则结束200C INC CL ;够减奇数

17、个数计数200E ADD DX,02 ;形成下一个奇数2011 JMP 20082013 MOV B350A,CL ;存平方根2017 INT2、 实验步骤(1) 输入程序并检查无误;(2) 用编辑命令E在3500开始的单元中存放原数码;(3) 用G命令或T命令运行以上程序;(4) 用D命令查看运行结果;(5) 反复试几组数,考查程序的正确性。四、 实验要求1 按要求绘制流程图,并编写程序。2 通过实验验证所编程序的正确性,若运行不正确,应怎样进行修改。3 写出实验结果。4 分析实验过程中出现的问题。实验三、分支、循环、排序及子程序设计一、实验目的1 掌握分支程序的结构,掌握分支程序的设计、调

18、试方法;2 加深对循环结构的理解,熟练掌握循环结构程序的设计方法及调试方法;3 学习子程序的定义和调用方法,掌握子程序、子程序的嵌套、递归子程序的结构,掌握子程序的设计及调试方法;4 学习综合程序的设计、编制及调试方法。二、实验内容1 设计一数据块的搬移程序提示:源数据块和目的数据块有可能不重叠,有可能部分重叠,也有可能全部重叠。请在一个程序中来完成。2 根据条件求和求S=1+2*3+3*4+N(N+1),直到N(N+1)项大于200为止。参考程序如下:地址(H) 助记符 注解2000 MOV DX,0001 ;和S送初值12003 MOV BL,02 2005 MOV AL,BL ;送被乘数

19、2007 INC BL ;送乘数2009 MUL BL200B ADD DX,AX ;累加和200D CMP X,00C8 ;AX200吗?2010 JBE 20052012 INT3 求某数据区内负数(正数或零)的个数地址(H) 助记符 注解2000 MOV DI,3000 ;送数据区首地址2003 MOV CL,BDI ;送数据个数2005 XOR CH,CH ;CH清02007 MOV BL,CH ;BL送02009 INC DI ;指针指第一个数据200A TEST BDI,80 ;符号位是否为1200D JZ 2011 200F INC BL ;负数个数累加2011 INC DI20

20、12 LOOP 200A2014 MOV BDI,BL ;存结果2016 INT4求无符号字节序列中的最大值及最小值5数据排序三、实验步骤1输入程序并检查无误;2用编辑命令E在指定存储单元中存放操作数;3用G命令或T命令运行以上程序;4用D命令查看运行结果;5反复试几组数,考查程序的正确性。四、实验要求1按要求绘制流程图,并编写程序。2通过实验验证所编程序的正确性,若运行不正确,应怎样进行修改。3写出实验结果。4分析实验过程中出现的问题。硬件实验硬件部分实验,可使学生进一步掌握微机系统的接口技术。了解微机的中断系统、输入/输出系统、定时/计数器、并行接口、A/D、D/A转换等接口的硬件设计与编

21、程技术。实验四、8255并行接口应用实验一、 学习目的:学习并掌握8255的各种工作方式及其应用。二、 实验设备DICE8086B实验系统一台三、 实验内容及步骤:系统为8255提供的端口地址为60H63H。1、 8255接口应用实验(1)(方式0输出)按图1所示实验线路,编写程序,使8255端口A工作在方式0并作为输出口将其PA0PA3通过74LS48BCD码七段显示驱动器,在数码管上循环显示“09”10个数。实验参考程序如下:地址 助记符 注解2000 MOV AL,82 ;控制字2002 OUT 63,AL ;送控制字2004 MOV AL,00 ;第一次显示“0”2006 CMP AL

22、,0A2008 JZ 2004 ;显示数=“10”转移200A OUT 60,AL ;输出所显数字200C CALL 2013 ;调延时程序200F INC AL ;显示数+12011 JMP 2006 ;显示下一数2013 PUSH AX ;延时子程序2014 MOV CX,01002017 MOV AX,0560201A DEC AX201B JNZ 201A201D LOOP 2017201F POP AX2020 RET实验步骤:按图在DICE8086上连接实验线路;输入源程序并运行,观察七段数码管是否循环显示“09”10个数;4 按RESET中止程序运行,停止显示。1 8255接口应

23、用(2)(方式0输入输出)按图2所示实验线路,编写程序,使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。用一组开关信号接入端口B,端口A输出线接至一组发光二极管上,然后通过对8255芯片编程来实现输入/输出功能。要求8255先检测开关组DIP2的状态,然后根据开关的闭合情况分别点亮对应的发光二极管。输入程序并运行,拨动开关组DIP2,观察发光二极管的点亮情况。3、8255接口应用(3)(方式1输入和方式0输出)按图3所示实验线路,编写程序,使8255端口A工作在方式0作为输出端口,端口B工作在方式1并作为输入口,则端口C在PC2成为选通信号输入端,PC0成为中断请求信

24、输出端INTRB,当B口数据就绪后,通过发负脉冲信号来请求CPU读取端口B数据,并送端口A输出显示。输入程序并检查无误,运行实验程序,然后拨动开并组DIP2,准备好后,按动开关KK1,观察发光二极管的点亮情况。四、实验要求1按要求绘制流程图,并编写程序。2通过实验验证所编程序的正确性,若运行不正确,应怎样进行修改。3写出实验结果。4分析实验过程中出现的问题。实验五、8253定时/计数器应用实验一、 实验目的1熟悉DICE8086B上的8253电路的典型接法;2掌握8253的工作方式及应用编程。二、 实验设备DICE8086B实验系统一台三、 实验内容及步骤系统规定,8253的端口地址为40H4

25、1H,且8253的0#通道与8259的0#中断源相连,作为实时钟中断信号;1#通道入口接1.8432MHz的信号源,输出接8251的收、发时钟端,供串行通讯用,这里1#计数器仅当作为一个分频器来用;2#通道作为开放接口,提供用户使用,并且在J6、J7接口引出。1 8253计数器应用实验设定8253的2#通道方式为方式0,用于事件计数,当计数值为5时结束,发出中断请求信号,并显示“M”,如图4连线图:要求:(1)按图4接线,编写程序;(2)在0000:003CH单元起填入IRQ7中断矢量,即E0000:003C 12 20 00 00(4) 运行程序,并拨动KK1开关,观察每按几次,屏上显示一个

26、“M”字符。为什么?参考程序如下:地址(H) 助记符 注解2000 IN AL,212002 AND AL,7F 2004 OUT 21,AL ;初始化82592006 MOV AL,902008 OUT 43,AL200A MOV AL,05200C OUT 42,AL ;初始化8253200E HLT200F STI2010 JMP 200A2012 MOV AX,014D ;中断服务程序2015 INT 10 ;显示“M”2017 MOV AX,0120201A INT 10 ;显示“空格”201C MOV AL,20201E OUT 20,AL2020 IRET ;中断返回2 8253

27、定时器应用实验利用0#通道来定时中断(IRQ0),循环显示“09”10个数,其线路图见图5,分析程序,画出程序流程图,并输入到实验系统中;运行程序,观察显示屏上应连续一行一行地显示,直到用RST复位来中止程序运行为止;修改8253的0#时间常数,再运行程序,观察显示的快慢。四、实验要求1按要求绘制流程图,并编写程序。2通过实验验证所编程序的正确性。,若运行不正确,应怎样进行修改3写出实验结果。4分析实验过程中出现的问题。实验六、A/D转换和D/A转换实验一 实验目的1 了解A/D转换的基本原理,掌握ADC0809的使用方法;2 了解D/A转换的基本原理,掌握DAC0832的使用方法。二 实验设

28、备DICE8086B实验系统一台;螺丝刀一把;示波器一台三 实验内容及步骤1 如图6所示实验线路,编写程序,从IN0号通道采样模拟信号并转换成数字量,在屏幕上显示,即IN0 xx参考程序如下:地址 助记符 地址 助记符2000 MOV AL,822002 OUT 63,AL2004 OUT 00,AL2006 CALL 20442009 IN AL,00200B MOV CH,AL200D AND AL,F0200F MOV CL,042011 SHR AL,CL2013 CMP AL,092015 JG 201B2017 ADD AL,302019 JMP 201D2020 MOV AH,062022 INT 102024 MOV AH,012026 INT 102028 MOV AL,CH202A AND AL,0F202C CMP AL,09202E JG 20342030 ADD AL,302032 JMP 2036203

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2