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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(现代微型计算机原理与接口技术习题解答接口部分.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

现代微型计算机原理与接口技术习题解答接口部分.docx

1、现代微型计算机原理与接口技术习题解答接口部分习 题 五1接口电路与外部设备之间传送的信号有哪几种?传输方向怎样?数据信号:对于输入设备,数据信号从外设通过接口送往总线,对于输出设备,数据信号从总线通过接口发往外部设备。状态信号:状态信号表明外部设备当前的工作状态,用来协调CPU与外部设备之间的操作。状态信号总是从外部设备通过接口发往总线。控制信号 :控制信号是CPU向外设发出的命令,它指定设备的工作方式,启动或停止设备。控制信号从CPU通过接口发往外部设备。2接口电路有哪些功能?哪些功能是必需的?接口电路可以具备:设备选择功能、信息传输功能、数据格式转换功能、联络功能、中断管理功能、复位功能、

2、可编程功能和错误检测等功能。其中设备选择功能和信息传输功能是每一个接口电路所必备的。其他的功能是否需要则由设备的特点和工作方式决定。3I/O端口的编址有哪几种方法?各有什么利弊?80X86系列CPU采用哪种方法? I/O端口的编址有两种不同的方式。I/O端口与内存统一编址:把内存的一部分地址分配给I/O端口,一个8位端口占用一个内存单元地址。已经用于I/O端口的地址,存储器不能再使用。I/O端口与内存统一编址后,访问内存储器单元和I/O端口使用相同的指令,这有助于降低CPU电路的复杂性,并给使用者提供方便。但是,I/O端口占用内存地址,相对减少了内存可用范围。而且,由于难以区分访问内存和I/O

3、的指令,降低了程序的可读性和可维护性。I/O端口与内存独立编址:这种编址方法中,内存储器和I/O端口各自有自己独立的地址空间。访问I/O端口需要专门的I/O指令。80x86 CPU采用I/O端口独立编址方式。4按照传输信号的种类,I/O端口有几种?它们信号的传输方向怎样?按照传输信号的种类,I/O端口有三种:数据端口:数据信息从端口输入CPU(输入设备接口),或者从CPU写入端口(输出设备接口)。状态端口:外设状态信息从端口输入CPU;控制端口:命令信息从CPU写入端口。5I/O端口译码电路的作用是什么?在最小模式和最大模式下分别有哪些输入信号?I/O端口译码电路用于产生端口的读写选择信号。在

4、最小模式下,译码电路接受来自总线的地址信号(16位),(= 0),或者信号。最大模式下,译码电路接受地址信号(16位),或者信号。6外部设备数据传送有哪几种控制方式?从外部设备的角度,比较不同方式对外部设备的响应速度。外部设备数据传送有以下四种控制方式。直接传送方式(也称为无条件传送方式、同步传送方式):这种情况下,外部端口完全被动地等待CPU的访问,没有确定的响应速度,响应时间取决于CPU忙碌的程度以及程序对外部设备控制采取的策略。查询方式:如果CPU在某一时刻只对一个外设采用查询方式进行数据传输,CPU的响应延迟约为310个指令周期。响应速度快于中断方式,慢于DMA方式。中断方式:CPU的

5、响应延迟平均为几十个指令周期,慢于查询方式,但是这种方式可以同时管理多个外部设备。DMA方式:外部端口的传输请求由DMA控制器响应,由于DMAC是一个专用于传输控制的电路,任务单一,不发生DMA传输竞争时,响应延迟仅为12个DMAC使用的时钟周期,远快于中断方式和查询方式。7叙述一次查询式输出过程中,接口内各电路、信号的状态变化过程。一个数据的查询式输出过程由二个阶段组成:CPU从接口反复读取状态字:由地址译码电路产生状态端口选择信号,该信号不影响接口内部的状态。外部设备输出完成后,返回“确认”信号,该信号将状态寄存器相关位(READY)置位。如状态字表明外设已处于“就绪”状态,则向数据端口传

6、送数据。由地址译码电路产生的数据端口选通信号一方面将数据总线上的数据写入数据寄存器,同时清除状态寄存器中的相关位(READY),向输出设备发出输出启动信号。有的输出接口设有控制端口,输出启动信号通过写控制端口产生。8比较程序中断方式和查询方式的区别,根据比较,指出中断工作方式的优缺点。中断方式:外部设备工作完成后,通过“中断请求”信号“主动”向CPU“报告”。查询方式:外部设备工作完成后,状态信号储存在接口电路内,被动地等待CPU来读取。根据上述比较,可以得到中断工作方式的如下特点:优点:1)CPU能够及时了解外部设备的状态,从而对外部设备IO请求进行及时处理。2)由于CPU“被动”地等待外部

7、设备的“中断请求”,外部设备进行输入/输出操作时,CPU可以同时执行其他的程序,CPU和外部设备“并行”工作。3)由于同样的原因,在中断方式下,CPU可以同时管理多台外部设备,CPU的效率得到提高。缺点:1)用中断方式需要CPU增加相应的管理逻辑,增加了CPU电路的复杂性。2)由于CPU“被动”地接收“中断请求”信号,CPU必须通过与外部的一个联络过程才能知道是那一个设备在申请中断,这增加了响应时间。为了从当前任务转移到中断服务,CPU必须保护原有的运行环境,进行“任务”的“切换”,这也会增加响应时间。3)有较多的设备使用中断方式时,会产生“中断申请”的“竞争”。这一方面降低了响应速度,另一方

8、面增加了管理的复杂性。 9比较DMA方式和程序中断方式的区别,根据比较,指出DMA工作方式的优缺点。中断方式:外部设备每进行一个数据的输入/输出,都要通过“中断申请”要求CPU进行处理。CPU通过执行一段“中断服务程序”完成数据的传输。DMA方式:CPU通过对DMAC的初始化,启动一个数据块的传输操作。之后的数据传输通过信号的联络,在外设接口和存储器之间进行,CPU只需简单地让出总线,而无需其他操作。根据上述比较,可以得到DMA工作方式的如下特点:优点:1)对于CPU而言,它的任务仅仅是在一个数据块传输之前对DMAC进行初始化,CPU用于传输控制的操作达到最小(不考虑与通道/IO处理器方式的比

9、较),CPU的效率最高。CPU与外设“并行”工作。2)外部设备一个数据输入/输出完成后,向DMAC申请进行数据传输,响应时间仅为DMAC的13个时钟周期。响应速度达到最快,可以满足高速传输的需要。缺点:1)实现DMA控制需要增加DMA控制器和总线控制逻辑,增加了系统的复杂性。2)DMA传输需要占用总线,并且具有较高的“优先级”。这使得系统对其他设备的响应速度不能得到明确的保证。10某输入设备接口数据端口、状态端口、控制端口地址分别为70H, 71H, 72H。状态端口D5=1表示输入完成,控制端口D7=1表示启动设备输入(输入完成后由设备清除该位)。从该设备输入100个字节数据,存入以BUFF

10、ER为首地址的缓冲区。如果启动该设备1秒后仍未完成一次输入,则视为超时错,显示出错信息后返回。分别用8086汇编语言和C语言编写完成上述功能的I/O程序。汇编语言程序:DATA SEGMENTBUFFER DB 100 DUP(?)ERROR DB 13, 10, “OVER TIME !”, 13, 10, “$”DATA ENDS。CODE SEGMENT ASSUME CS: CODE, DS: DATASTART: MOV AX, DATA MOV DS, AX MOV CX, 100 LEA BX, BUFFER ONE: XOR DX, DX ;DX用作响应计时器,初值0MOV A

11、L, 80H OUT 72H, AL ;启动输入W: IN AL, 71H INC DX ;记录延迟时间 TEST AL, 00100000B ;测试完成位 JNZ READ ;输入完成,转READ读取数据 CMP DX, 50000 ;假设循环50000次时间为1秒 JB W ;未超时,继续测试 JMP OVERTIME ;超过1秒,报告出错READ: IN AL, 70H ;读入数据 MOV BX, AL ;数据存入缓冲区 INC BX ;修改指针 LOOP ONE ;100个数据尚未输入完成,转ONE继续 JMP DONE ;100个数据输入完成,转DONE结束程序OVERTIME: L

12、EA DX, ERROR MOV AH, 9 INT 21H ;响应超时,显示出错信息DONE: MOV AX, 4C00H INT 21H ;返回OSCODE ENDS END START C语言程序: main( ) int i, status, time, buffer100 。 for( i=0。 i100。 i+ ) outportb( 0x72, 0x80 )。 /* 启动输入 */ for( time = 0。 time = 20000 ) printf( “n Over Time ! n”)。 exit 。 /* 超时报错 */ 11某输出设备数据端口、状态端口地址分别为220

13、H, 221H。状态端口D0=1表示输出完成。将数据段中以STRING为首地址的20个字符(用七位ASCII代码存储)添加水平和垂直校验发送到该外部设备。用8086汇编语言编写完成上述功能的I/O程序。汇编语言程序:DATA SEGMENTSTRING DB 20 DUP ( ? )SUM DB 0DATA ENDS。CODE SEGMENT ASSUME CS: CODE, DS: DATASTART: MOV AX, DATA MOV DS, AX MOV CX, 20 LEA BX, STRING MOV SUM, 0 。 垂直校验码初值为0 ONE: MOV DX, 221H 。 DX

14、置为状态端口地址 IN AL, DX TEST AL, 00000001B ;测试输出完成位 JZ ONE ;未完成,转ONE继续读取状态 MOV AL, BX ;从字符串取出一个字符的ASCII代码 AND AL, 07FH ;清除最高位,准备置入校验位 JPE OUTPUT ;判代码奇偶属性, OR AL, 80H ;奇数个“1”,最高位置1(偶校验)OUTPUT: MOV DX, 220H OUT DX, AL ;输出添加了校验位的代码 XOR SUM, AL ;生成垂直校验位 INC BX ;修改指针 LOOP ONE ;20个数据尚未输出完成,转ONE继续 MOV DX, 221H

15、;输出垂直校验代码LAST: IN AL, DX TEST AL, 00000001B JZ LAST MOV AL, SUM MOV DX, 220H OUT DX, AL DONE: MOV AX, 4C00H INT 21H ;返回OSCODE ENDS END START12试画出矩阵式键盘查询的程序流程图。上述流程中假设键盘为88结构,如果有键按下,返回它的8位扫描码。其中:最低3位为该键所在列,次低3位为该键所在行,最高2位为0。如果没有键按下,返回8位“1”。13试画出公用端口多位LED输出的程序流程图。习 题 六1什么叫中断?有哪几种不同类型的中断?由于某个事件的发生,CPU暂

16、停当前正在执行的程序,转而执行处理该事件的一个程序。该程序执行完成后,CPU接着执行被暂停的程序。这个过程称为中断。 根据中断源的位置,有两种类型的中断。有的中断源在CPU的内部,称为内部中断。大多数的中断源在CPU的外部,称为外部中断。根据中断引脚的不同,或者CPU响应中断的不同条件,也可以把中断划分为可屏蔽中断和不可屏蔽中断两种。 2什么是中断类型?它有什么用处? 用若干位二进制表示的中断源的编号,称为中断类型。中断类型用来区分不同的中断,使CPU能够在中断响应时调出对应的中断服务程序进行中断处理。3有哪几种确定中断优先级的方法?说明每一种方法各自的优劣之处。确定中断优先权有四种可选的方法

17、。(1) 软件查询法:采用程序查询的方法确定中断服务的顺序。这种方法中断逻辑最简单(基本上不需要外部中断逻辑),优先级可以灵活设置,但中断响应所需时间最长。(2) 分类申请法:CPU分设二个中断申请信号的输入引脚。这种方法需要CPU提供条件。(3) 链式优先权排队:菊花链法。这种方法需要的外部中断逻辑比较简单,容易实现,但是设备较多时信号延迟大,对设备故障敏感。(4) 可编程中断控制器: “向量”优先权排队专用电路。这种方法功能最全面,控制灵活,可以通过程序设定中断优先权为固定的或循环的,但需要增加专用的中断控制器。4什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是

18、什么?CPU在处理级别较低的中断过程中,出现了级别较高的中断请求。CPU停止执行低级别中断的处理程序而去优先处理高级别中断,等高级别中断处理完毕后,再接着执行低级别的未处理完的中断处理程序,这种中断处理方式称为多重(级)中断或中断嵌套。使用中断嵌套可以使高优先级别的中断得到及时的响应和处理。对于可屏蔽中断,由于CPU在响应中断时已将IF清零,所以一定要在中断处理程序中加入开中断指令,才有可能进行中断嵌套。5什么叫中断屏蔽?如何设置I/O接口的中断屏蔽?用程序的方法使某些中断源的中断请求不能够发送到CPU,或者虽然能够发送但是不能得到响应,这种方法称为中断屏蔽。在外设的接口内增设一个中断屏蔽触发

19、器(可以用D触发器实现),该触发器的端与中断请求信号相“与”后连接到INTR。当 = 0时,中断请求不能发往INTR。通过设定中断屏蔽触发器的状态,可以控制中断请求信号是否能够送到INTR端。置IF= 0, 可以使80x86CPU不响应来自INTR的可屏蔽中断请求。6什么是中断向量?中断类型为1FH的中断向量为2345H:1234H,画图说明它在中断向量表中的安置位置。中断服务程序的入口地址称为中断向量。中断类型为1FH,它的中断向量放置在1FH4=0000: 7CH开始的位置上。如右图。7叙述一次可屏蔽中断的全过程。(1) 中断源请求中断外部中断源通过INTR引脚向CPU请求中断。(2) 中

20、断响应中断源提出中断请求后,如果CPU处于允许中断状态(IF=1);没有不可屏蔽中断请求和总线请求;当前指令执行结束。则转入中断响应周期。在中断响应周期:CPU取得中断源的中断类型;将标志寄存器FLAGS和CS、IP(断点)先后压入堆栈保存;清除自陷标志位TF和中断允许标志位IF;读中断向量表,获得相应的中断服务程序入口地址,转入中断服务程序。(3) 中断服务 中断服务程序的主要内容包括:保护现场 开中断 中断处理 关中断 恢复现场 (4)中断返回 8简要叙述8259A内部IRR, IMR, ISR三个寄存器各自的作用。三个寄存器长度均为8位。IRR用来记录引脚IR7IR0上由外部设备送来的中

21、断请求信号。当外部中断请求线IRi变为有效时,IRR中与之对应的第i位被置1。IMR用于设置对中断请求的屏蔽信号。此寄存器的第i位被置1时,与之对应的外部中断请求线IRi被屏蔽,不能向CPU发出INT信号。可通过软件设置IMR内容,确定每一个中断请求的屏蔽状态。ISR用于记录当前正在被服务的所有中断级,包括尚未服务完而中途被更高优先级打断的中断级。若CPU响应了IRi中断请求,则ISR中与之对应的第i位置1。ISR用于中断优先级管理。98259A是怎样进行中断优先权管理的?8259A通过以下两种途径实现对中断优先权的管理:(1)通过设置中断屏蔽寄存器IMR,可以屏蔽某些中断请求,从而动态地改变

22、各请求端的优先级别。(2)8259A响应某个中断请求之后,将ISR寄存器对应位置1。如果后续的中断请求级别低于正在响应的中断请求,则该中断不能立即被响应。反之,如果新的中断请求级别高于正在响应的中断请求,则允许进行中断嵌套。中断服务结束时,应将ISR寄存器对应位清零。10特殊全嵌套方式有什么特点?它的使用场合是什么?特殊全嵌套方式一般用于级联方式下的8259A主片。如果8259A主片在一次中断处理尚未结束时,收到了来自同一个引脚的第二次中断请求,并且该8259A采用普通全嵌套方式,则它不会响应来自同一个引脚的第二次中断请求。如果该8259A采用特殊全嵌套方式,就会响应该请求(中断嵌套),从而可

23、以及时响应连接在同一从片8259A上,并且相对有较高优先级别的中断请求。11向8259A发送“中断结束”命令有什么作用?8259A有哪几种中断结束方式?分析各自的利弊。中断服务完成时,必须给8259A一个命令,使这个中断级别在ISR中的相应位清“0”,表示该中断处理已经结束,允许响应新的较低级别的中断。这个命令称为“中断结束”命令。8259A有两种不同的中断结束方式。(1)自动中断结束方式(AEOI) 8259A在中断响应周期内自动清除ISR中对应位。这种方式使用简单,但是不能充分实现中断的优先权管理。这种方式只能用在系统中只有一个8259A,且多个中断不会嵌套的情况。(2)非自动中断结束方式

24、(EOI)从中断服务程序返回前,在程序里向8259A输出一个中断结束命令(EOI),把ISR对应位清“0”。这种方式可以有效地实现中断优先权的管理,从而保证高优先级的中断可以得到及时响应。但是,如果在程序里忘了将ISR对应位清零,那么,8259A将不再响应这个中断以及比它级别低的中断请求。12某系统中有两片8259A,从片的请求信号连主片的IR2引脚,设备A中断请求信号连从片IR5引脚。说明设备A在一次I/O操作完成后通过两片8259A向8086申请中断,8086CPU通过两片8259A响应中断,进入设备A中断服务程序,发送中断结束命令,返回断点的全过程。设备A通过从片IR5引脚向从片发出中断

25、请求;从片将IRR5置“1”,并通过INT(与主片IR2相连)向主片发出中断请求;主片将IRR2置“1”,通过INT(与CPU的INTR相连)向CPU发出中断请求;CPU通过第一个向主片和从片响应中断请求;主片8259A在CAS0CAS2上发出代码“010”,表示连接在IR2上的从片中断被响应,同时主片还把本片ISR2置“1”,把本片IRR2清“0”;从片收到第一个和主片CAS0CAS2上发来的010代码后,将本片ISR5置“1”,同时把本片IRR5清“0”。收到第二个后,将本片IRR5对应的中断类型通过数据总线发往CPU;CPU进入设备A的中断服务程序,在程序中先后对主片和从片发出中断结束命

26、令,两个芯片内的ISR2和ISR5先后被清零。中断服务结束,返回断点继续执行。13某8086系统用3片8259A级联构成中断系统,主片中断类型号从10H开始。从片的中断申请连主片的IR4和IR6引脚,它们的中断类型号分别从20H、30H开始。主、从片采用电平触发,嵌套方式,普通中断结束方式。请编写它们的初始化程序。假设主片端口地址为10H,12H。从片的端口地址分别为 18H, 1AH和 1CH, 1EH。MOV AL, 00011001B ;主片ICW1OUT 10H, AL ;电平触发,级连方式MOV AL, 10H ;主片ICW2OUT 12H, AL ;主片中断类型MOV AL, 01

27、010000B ;主片ICW3OUT 12H, AL ;IR4,IR6连有从片MOV AL, 00010001B ;主片ICW4OUT 12H, AL ;特殊全嵌套,非自动中断结束MOV AL, 00011001B ;从片ICW1OUT 18H, AL ;电平触发,级连方式MOV AL, 20H ;从片ICW2OUT 1AH, AL ;从片中断类型MOV AL, 00000100B ;从片ICW3OUT 1AH, AL ;本片连接在主片IR4引脚上MOV AL, 00000001B ;从片ICW4OUT 1AH, AL ;非特殊全嵌套,非自动中断结束MOV AL, 00011001B ;从片I

28、CW1OUT 1CH, AL ;电平触发,级连方式MOV AL, 30H ;从片ICW2OUT 1EH, AL ;从片中断类型MOV AL, 00000110B ;从片ICW3OUT 1EH, AL ;本片连接在主片IR6引脚上MOV AL, 00000001B ;从片ICW4OUT 1EH, AL ;非特殊全嵌套,非自动中断结束注意:(1)由于8086系统有16根数据线,各8259A的端口地址均为偶数(假设各8259A的数据线连接在8086系统的低8位数据线上)。(2)主片用特殊全嵌套,从片用一般全嵌套。14给下面的8259A初始化程序加上注释,说明各命令字的含义。MOV AL, 13H ;

29、ICW1: 边沿触发,单片8259AOUT 50H, AL ;MOV AL, 08H ;ICW2: 中断类型高5位为00001OUT 51H, AL ;MOV AL, 0BH ;ICW4: 非特殊全嵌套,缓冲方式,主片,非自动中断结束OUT 51H, AL ;15设8259A端口地址为20H和21H,怎样发送清除ISR3的命令?为了清除ISR3,需要通过OCW2发送特殊的中断结束命令,使SL=1, EOI=1, L2L1L0=011。指令如下: MOV AL, 01100011B OUT 20H, AL16图4-17能否直接用于8086系统?为什么?图4-17不能直接用于8086系统,原因是:(1)多个设备的中断请求如果直接送往CPU,应采用“线或”的方法,每个接口的中断请求信号应由“OC门(集电极开路门)”以“负逻辑”的方式连接,如下图。(2)电路没有解决中断优先权的问题。CPU用信号响应中断时,会将所有正在申请中断的接口的请求信号清除

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1