微型计算机技术课后答案第六章-第八章_第1页
微型计算机技术课后答案第六章-第八章_第2页
微型计算机技术课后答案第六章-第八章_第3页
微型计算机技术课后答案第六章-第八章_第4页
微型计算机技术课后答案第六章-第八章_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、6.1 分类说明8086CPU有哪几种中断?答:8086CPU中断源可分为内部中断和外部中断,内部中断有溢出中断、除法出错中断、INTn指令中断、断点中断、单步(陷阱)中断;外部中断有可屏蔽中断INTR不可屏蔽中断NMI。6.2 简述 8086可屏蔽中断的响应过程。可屏蔽中断INTR接受来自普通外设的中断请求信号(一般使用可编程中断控制器8059A来管理此类外设的中断请求),当该信号线有效时,CPU将根据中断允许标志IF的状态来决定是否响应。如果IF=0,则表示INTR线上中断被屏蔽或禁止,CPU将不理会该中断请求而处理下一条指令。由于CPU并不锁存INTR信号,INTR信号必须保持有效状态,

2、直到接受到响应信号或撤销请求为止。如果IF=1,则表示INTR线上的中断开放,CPU在完成现在正在执行的指令后,识别该中断请求,并进行中断处理。6.5 中断应答时序如图6.2所示,说明前后两个INTA周期的任务。第一个INTA表示对中断请求的响应,用于通知中断请求设备,第二个INTA用于将中断类型号送数据总线的低8位上。期间LOCK信号用于保证在中断响应过程中不会被其他CPU占用总线而导致中断响应失败。6.9某外设中断类型号为10H,它的中断服务程序的入口地址为1020H:3FC9H,求其向量地址并具体描述中断向量的各字节在存储器中的存储情况。解:向量地址:10H*4=40H0040H、004

3、1H、0042H、0043H依次存放C9H、3FH、20H、10H6.10某外设的中断服务子程序名称为INT_PROC,其中断类型号为18H,试编写一程序段将该外设的中断向量装入到中断向量表中。解:向量地址:18H*4=60HPUSHDSMOVAX,0MOVDS,AXMOVWORDPTR0060H,OFFSETINT_PROCMOVWORDPTR0062H,SEGINT_PROCPOPDSHLT7.2 简述CPU与外围设备交换信息的过程。解:(1)CPU向设备所在地接口地址发送读写控制; (2)接口向设备发送数据或状态信息; (3)设备与接口交换数据或状态; (4)接口与CPU交换数据或状态;

4、7.4 某输入设备可随时为CPU提供8位数字输入数据。请使用74LS244芯片作为接口电路,设计该设备与8086CPU的连接图。7.5某8位数字输出设备在其BUSY信号为低时可接收计算机发来的数据。如果将该设备连接到8086CPU的系统总线上,请采用74LS373作为接口电路,设计其连接图。7.6 某8位输入设备的接口电路中,数据口地址为200H,状态口地址为201H,状态口中第6位为1表示数据已准备好。试编写程序从该输入设备获得100个字节。MOVDX,201HPOLL: INAL,DX TESTAL,0100000B JZPOLL DECDX MOVCX,100LL: INAL,DXMOV

5、1000H,ALDECCXJZLL7.9图为一个LED接口,写出使8个LED灯自右至左依次发光2秒的程序。 MOV AL,11111110B MOV CX,8LOP: OUT 20H,AL CALL DELAY2S ROL AL,1 LOOP LOP7.10 简述DMA方式数据传送的工作过程(1)外设准备好,要求进行DMA传送时,外设向DMA控制器发出DMA传送请求信号DREQ;(2)DMA控制器收到请求后,向CPU发出总线请求保持信号HOLD,向CPU申请占用总线;(3)CPU在完成当前总线周期后会立即对HOLD信号进行响应(响应包括两个方面:一方面是CPU将数据总线、地址总线和相应的控制总

6、线信号线均置为高阻态,放弃对总线的控制权;另一方面,CPU向DMA控制器发出“总线响应”信号(HLDA);(4)DMA控制器收到HLDA信号后,就获得总线的控制权开始控制总线,并向外设发出DMA响应信号DACK,进入DMA工作方式;(5)DMA控制器送出地址信号和相应的控制信号,实现内存与外设或内存与内存之间的直接数据传送;(6)规定的数据传送完后,DMA控制器就撤销发往CPU的HOLD信号。CPU检测到HOLD失效后,紧接着撤销HLDA信号,并在下一时钟周期开始重新控制总线,继续执行原来的程序。8.1根据接口电路的功能,简要说明I/O接口电路应包括哪些电路单元?可编程接口一般应具备以下基本电

7、路单元:输入/输出锁存器与缓冲器、命令寄存器和状态寄存器、地址译码电路、读/写控制逻辑、中断控制逻辑。8.2根据8255A工作方式于方式0和方式1的区别。在方式0时,不能采用中断的方法与CPU交换信息,但可用应答查询方式进行数据传送。通常以A口和B口作为数据口,而用C口的某些位作为查询方式的控制与状态信号线使用。C口中哪条引线充当何种应答功能,可以由用户来指定。方式1可以工作于查询传送方式和中断传送方式,芯片规定了PC口中6条线作为PA 口和PB口同外设之间的联络信号线以及同CPU之间的中断请求线。8.3说明8255A在方式1输入时的工作过程。当外设有数据需要输入时,将数据送到8255A接口上

8、,STB 变为有效,数据锁存入8255A,同时IBF变有效。STB 由低变高时,若8255A片内中断允许信号INTE高电平有效,则8255A的PC3(或PC0)位INTR变高电平有效,向CPU发出中断请求。CPU响应中断后,在中断服务程序中CPU执行到从8255A端口读取数据指令时,产生RD 有效信号。一方面将8255A锁存的数据读入到CPU中并延迟一段时间,撤销向CPU申请中断的信号INTR,使其无效,另一方面利用RD 信号的上升沿使IBF复位。8.4说明8255A在方式1输出时的工程过程。在方式1下,若利用中断方式进行A口或B口的数据输出,则数据输出过程须从CPU响应中断开始。进入中断服务

9、程序后,CPU向指定接口写数据,IOW 将数据锁存在接口之中。当数据被锁存并由端口信号线输出时,8255A就消除INTR信号并使OBF 通知外设接收数据。一旦外设将数据接收,就送出一个有效的ACK 脉冲,该脉冲使 OBF 无效,同时产生一个新的中断请求,请求CPU向外设输出下一个数据。8.5 8255A的三个端口在使用时有什么差别?端口A或B作为输入输出的数据端口(端口A还可以作为双向数据端口),而端口C作为控制或状态信息的端口,它在方式字的控制下,可以分成两个4位的端口。每个端口包含一个4位锁存器。它们分别与端口A和B配合使用,可用以作为控制信号输出,或作为状态信号输入。8.17 8255A

10、用作查询式打印机接口的电路连接和信号时序如图8.8所示,8255A的端口地址为90H93H,工作方式0。试编写程序段,将数据区中变量DATA的八位数据送打印机打印。MOV AL 10000001BOUT 90H,ALMOV AL,00001101BOUT 93H,ALLOP: IN AL,92HTEST AL,00000100BJNZ LOP MOV AL,DATA OUT 90H,ALMOV AL,00001100BOUT 93H,ALNOPNOPNOPMOV AL,00001101BOUT 93H,ALHLT8.34一个采用查询方式传送的输入接口,其数据端口地址为160H,状态端口地址为1

11、61H,D7为数据就绪位。利用上述接口从输入设备上输入1000B的数据送存储器中BUFFER缓冲区,试画出流程图,编写控制程序段。MOV CX,5000XOR SI,SIL0:MOV DX,201HIN AL,DXL1:TEST AL,01HJNE L1MOV AL,BUFFERSIMOV DX.200HOUT DX,ALINC SILOOP L0HLT8.35用一片8255A控制一组红、绿、黄灯,如附图8.8所示,反复检测S1、S2,要求由S1、S2的“闭合”和“断开”控制红、绿、黄3灯的点亮。当S1合,S2合时,黄灯亮;当S1合,S2断时,红灯亮;当S1断,S2合时,绿灯亮;当S1断,S2

12、断时,黄灯亮。试根据上述条件编写初始化及控制程序(设8255A端口地址为80H83H)。MOV AL,10010000BOUT 83H,ALL0:IN AL,80HJNE L2TEST AL,00000010BJNE L3MOV AL,00000000BOUT 82H,ALMOV AL,00000010BOUT 82H,ALMOV AL,00000101BOUT 82H,ALJMP L5L3:MOV AL,00000001BOUT 82H,ALMOV AL,00000010BOUT 82H,ALMOV AL,00000100BOUT 82H,ALJMP L5L2:TEST AL,0000001

13、0BJNE L4MOV AL,00000000BOUT 82H,ALMOV AL,00000011BOUT 82H,ALMOV AL,00000100BOUT 82H,ALJMP L5L4:MOV AL,00000000BOUT 82H,ALMOV AL,00000010BOUT 82H,ALMOV AL,00000101BOUT 82H,ALL5:JMP L08.43 8255A的PA口与8个LED管连接如附图8.14,用8253作定时器控制8个LED管自下向上闪动,8253连接如附图8.15,闪动频率为10次/秒,8253的端口地址为40H43H,8255A的端口地址为60H63H,其控制

14、程序片段如下。主程序:MOV AL,80H (1)OUT 63H,AL (2)MOV AL,34H (3)OUT 43H,AL (4)MOV AL,0ABH (5)OUT 40H,AL (6)MOV AL,61H (7)OUT 40H,AL (8)MOV AL,7FH (9)OUT 60H,AL (10)STILOP: HLTJMP LOP中断服务程序:INTROUT PROC FAR (11)(设CS=1280H)ORG 2000H (12)ROR AL,1 (13)OUT 60H,AL (14)IRET (15)试问:(1)从程序中的数据,计算8253中CLK0的时钟周期Tclk0以及该控

15、制程序中所使用的中断服务程序的中断类型号n的值,中断向量表如附图8.16所示。输入次数为61A8H=25000次,Tclk0=2500010=2500秒=41min由CS=1280H知,n=34H4=0DH(2)若闪动频率改为1次/分,且为自上到下闪动,可采用如附图8.17所示的串接形式,中断类型号为(1)中计算值加1,请对程序做最小限度的更改,以满足上述要求(计数通道0工作不变)。在(8)后插入MOV AL,74HOUT 43H,ALMOV AL,58HOUT 41H,ALMOV AL,02HOUT 41H,AL8.44 8086CPU通过8255A同发光二极管LED0LED7不断显示对应开

16、关S0S7的通断状态。要求:(1)S0S7的状态每隔30秒改变一次,把每次变化的状态记录在2000H:1000H开始的内存单元中。(2)S接通时,对应的二极管熄灭,S断开时,对应的对应的二极管发亮(即S0断开,LED0发亮;S0接通,LED0熄灭)。(3)连续工作24小时结束。用8086汇编语言编写的控制程序如下,请填上程序中空缺的部分(包括指令、操作数或标号,初始化时无关项置“0”)。START:MOV MOV DX,ALMOV MOV DS,AXLOP:MOV LOP1:MOV LOP2:MOV DX,170H AL,DXMOV BX,ALINC MOV CALL DELAY30SLOOP

17、 HLT延时半分钟子程序DELAY30S PROCMOV BX,3000DELAY:MOV CX,2800WAIT:LOOP WAITDEC BXJNZ DELAYDELAY30S ENDP8.6 说明8253的方式2与方式3的工作特点。方式2一次写入计数值多次计数。GATE=1启动计数,重复启动重复计数。计数过程中改变计数值,下次启动按新的计数值计数。计数值为N,计数N次方式3写入计数值开始计数,周期性计数。N=偶数,正负半周=N/2;N=奇数,正半周=(N1)/2,负半周=(N1)/2。计数过程中GATE=0,暂停计数;GATE=1,重新计数。计数过程中改变计数值,下一周期按新的计数值计数

18、。 8.7说明8253的方式1与方式5的工作特点。方式1一次写入计数值多次计数。GATE=1启动计数,重复启动重复计数。计数过程中改变计数值,下次启动按新的计数值计数。计数值为N,计数N次方式5一次写入计数值多次计数。GATE上升沿启动计数,重复启动重新计数。计数过程中改变计数值,下次启动按新的计数值重新计数。 计数值为N,计数N+1次。8.8 8253在写入计数初值时,二进制计数与十进制计数有什么区别?答:采用二进制计数时,将计算所得的数值采用二进制、十进制或十六进制表示都可以;采用十进制计数时,必需将计算所得的数值写成BCD码表示。8.21 8253通道0按方式3(方波发生器)工作,时钟C

19、LK0的频率为1MHz,要求输出方波的频率为50kHz,此时写入的计数初值应为多少?输出方波的“1”和“0”各占多少时间?解:计数初值=1M/50K=20。1占时10微秒,0占时10微秒。8.22 8253某通道的时钟频率为1MHz,按BCD方式计数,若写入的计数初值为0080H,则该通道的定时时间是多少?解:定时时间=1/1M*8=8微秒8.24 8253的计数通道0的连接如附图8.4,试回答:(1) 计数通道0工作于何种方式,并写出工作方式名称;方式2:频率发生器方式(2) 写出计数通道0的计数初值(要列出计算式)。计数初值=1000/0.4=25008.25若用8253计数器对设备的转轴的旋转速度进行测试,接口电路如附图8.5所示。若与轴相连的转盘上均匀地钻有每圈50个孔,当轴旋转时,通过光电转换,每通过一个小孔,产生一个正脉冲,当轴旋转一圈,就会有50个脉冲通过CLK输入8253计数器进行计数。假设此转轴的转速范围为501000转/秒,并设8253的端口地址为64H67H。(1) 给出一个算法,将测量转轴的转速转换为计量脉冲的个数。 转速=频率脉冲个数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论