课后作业答案Ch6

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1第6章输入输出和中断技术6.1I/O接口的主要功能有哪些?有哪两种编址方式?在8088/8086系统中采用哪一种编址方式?解:I/O接口主要需具有以下几种功能:(1)I/O地址译码与设备选择。保证任一时刻仅有一个外设与CPU进行数据传送。(2)信息的输入输出,并对外设随时进行监测、控制和管理。必要时,还可以通过I/O接口向CPU发出中断请求。(3)命令、数据和状态的缓冲与锁存。以缓解CPU与外设之间工作速度的差异,保证信息交换的同步。(4)信号电平与类型的转换。I/O接口还要实现信息格式转换、电平转换、码制转换、传送管理以及联络控制等功能。I/O端口的编址方式通常有两种:一是与内存单元统一编址,二是独立编址。8088/8086系统采用I/O端口独立编址方式。6.2试比较4种基本输入输出方法的特点。(不要求)解:在微型计算机系统中,主机与外设之间的数据传送有4种基本的输入输出方式:无条件传送方式、查询工作方式、中断工作方式、直接存储器存取(DMA)方式。它们各自具有以下特点:(1)无条件传送方式适合与简单的、慢速的、随时处于“准备好”接收或发送数据的外部设备,数据交换与指令的执行同步,控制方式简单。(2)查询工作方式针对并不随时“准备好”、且满足一定状态才能实现数据的输入/输出的简单外部设备,其控制方式也比较简单,当CPU的效率比较低。(3)中断工作方式是由外部设备作为主动的一方,在需要时向CPU提出工作请求,CPU在满足响应条件时响应该请求并执行相应的中断处理程序。这种工作方式使CPU的效率提高,但控制方式相对较复杂。(4)DMA方式适合于高速外设,是4种基本输入/输出方式中速度最高的一种。26.3主机与外部设备进行数据传送时,采用哪一种传送方式,CPU的效率最高?(不要求)解:使用DMA传送方式CPU的效率最高。这是由DMA的工作性质所决定的。6.4利用三态门芯片74LS244作为输入接口,接口地址为40FBH,试画出其与8088系统总线的连接图。解:16位地址信号通过译码电路与74LS244芯片连接。其连接如下图所示。A12A0IORA15&A14A1374LS244D0D7…E1E2I0I1...I7...≥1A1A2A3A4A5A6A7A8A11A9A10≥1系统总线DB36.5某输入接口的地址为0E54H,输出接口的地址为01FBH,分别利用74LS244和74LS273作为输入和输出接口。试编写程序,使当输入接口的bit1、bit4和bit7位同时为1时,CPU将内存中DATA为首址的20个单元的数据从输出接口输出;若不满足上述条件则等待。解:首先判断由输入接口读入数据的状态,若满足条件,则通过输出接口输出一个单元的数据;之后再判断状态是否满足,直到20个单元的数据都从输出接口输出。LEASI,DATA;取数据偏移地址MOVCL,20;数据长度送CLAGAIN:MOVDX,0E54HWAITT:INAL,DX;读入状态值ANDAL,92H;屏蔽掉不相关位,仅保留bit1、bit4和bit7位状态CMPAL,92H;判断bit1、bit4和bit7位是否全为1JNZWAITT;不满足bit1、bit4和bit7位同时为1则等待MOVDX,01FBHMOVAL,[SI]OUTDX,AL;满足条件则输出一个单元数据INCSI;修改地址指针LOOPAGAIN;若20个单元数据未传送完则循环6.68088/8086系统如何确定硬件中断服务程序的入口地址?解:8088/8086系统的硬件中断包括非屏蔽和可屏蔽两种中断请求。每个中断源都有一个与之相对应的中断类型码n。系统规定所有中断服务子程序的首地址都必须放在中断向量表中,其在表中的存放地址=n×4,(向量表的段基地址为0000H)。即子程序的入口地址为(0000H:n×4)开始的4个单元中,低位字(2个字节)存放入口地址的偏移量,高位字存放入口地址的段基地址。46.7中断向量表的作用是什么?如何设置中断向量表?解:中断向量表用于存放中断服务子程序的入口地址,位于内存的最低1K字节(即内存中0000H~003FFH区域),共有256个表项。设置中断向量表就是将中断服务程序首地址的偏移量和段基址放入中断向量表中。如:将中断服务子程序CLOCK的入口地址置入中断向量表的程序如下:MOVAX,0000HMOVDS,AX;置中断向量表的段基地址MOVSI,中断类型码×4;置存放子程序入口地址的偏移地址MOVAX,OFFSETCLOCKMOV[SI],AX;将子程序入口地址的偏移地址送入中断向量表MOVAX,SEGCLOCKMOV[SI+2],AX;将子程序入口地址的段基址送入中断向量表6.8INTR中断和NMI中断有什么区别?解:INTR中断为可屏蔽中断,中断请求信号高电平有效。CPU能否响应该请求要看中断允许标志位IF的状态,只有当IF=1时,CPU才可能响应中断。NMI中断为非屏蔽中断,请求信号为上升沿有效,对它的响应不受IF标志位的约束,CPU只要当前指令执行结束就可以响应NMI请求。6.9在中断服务程序的入口处,为什么常常要使用开中断指令?解:中断服务程序分为两种,一种是在进入服务子程序后不允许被中断,另一种则可以被中断。在入口处使用开中断指令表示该中断服务程序是允许被中断的服务程序,即在进入服务子程序后允许CPU响应比它级别高的中断请求。56.10试说明8088CPU可屏蔽中断的响应过程。解:可屏蔽中断的响应过程主要分为5个步骤,即:(1)中断请求。外设在需要时向CPU的INTR端发出一个高电平有效的中断请求信号。(2)中断判优。若IF=1,则识别中断源并找出优先级最高的中断源先予以响应,在其处理完后,再响应级别较低的中断源的请求。(3)中断响应。中断优先级确定后,发出中断的中断源中优先级别最高的中断请求就被送到CPU。(4)中断处理。(5)中断返回。中断返回需执行中断返回指令IRET,其操作正好是CPU硬件在中断响应时自动保护断点的逆过程。即CPU会自动地将堆栈内保存的断点信息弹出到IP、CS和FLAG中,保证被中断的程序从断点处继续往下执行。6.11CPU满足什么条件能够响应可屏蔽中断?解:(1)CPU要处于开中断状态,即IF=1,才能响应可屏蔽中断。(2)当前指令结束。(3)当前没有发生复位(RESET)、保持(HOLD)和非屏蔽中断请求(NMI)。(4)若当前执行的指令是开中断指令(STI)和中断返回指令(IRET),则在执行完该指令后再执行一条指令,CPU才能响应INTR请求。(5)对前缀指令,如LOCK、REP等,CPU会把它们和它们后面的指令看作一个整体,直到这个整体指令执行完,方可响应INTR请求。6.14单片8259A能够管理多少级可屏蔽中断?若用3片级联能管理多少级可屏蔽中断?(不要求)解:因为8259A有8位可屏蔽中断请求输入端,故单片8259A能够管理8级可屏蔽中断。若用3片级联,即1片用作主控芯片,两片作为从属芯片,每一片从属芯片可管理8级,则3片级联共可管理22级可屏蔽中断。66.16具备何种条件能够作输入接口?何种条件能够作输出接口?解:对输入接口要求具有对数据的控制能力,对输出接口要求具有对数据的锁存能力。6.17已知(SP)=0100H,(SS)=3500H,(CS)=9000H,(IP)=0200H,(00020H)=7FH,(00021H)=1AH,(00022H)=07H,(00023H)=6CH,在地址为90200H开始的连续两个单元中存放一条两字节指令INT8。试指出在执行该指令并进入相应的中断例程时,SP、SS、IP、CS寄存器的内容以及SP所指向的字单元的内容是什么?解:CPU在响应中断请求时首先要进行断点保护,即要依次将FLAGS和INT下一条指令的CS、IP寄存器内容压入堆栈,亦即栈顶指针减6,而SS的内容不变。INT8指令是一条两字节指令,故其下一条指令的IP=0200H+2=0202H。中断服务子程序的入口地址则存放在中断向量表(8×4)所指向的连续4个单元中。所以,在执行中断指令并进入响应的中断例程时,以上各寄存器的内容分别为:SP=0100H-6=00FAHSS=3500HIP=[8×4]=1A7FHCS=[(8×4)+2]=6C07H[SP]=0200H+2=0202H

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功