资源描述
1. 什么是最大模式?什么是最小模式?用什么方法将8086/8088置于最大模式和最小模式?
答:最小模式,即系统中只有一个微处理器,所有的总线控制信号都直接由8086/8088,因此,系统总线控制电路被减到最小。
最大模式,即系统里包括两个或多个微处理器,主处理器就是8086/8088,其它均为协助主处理器工作的协处理器。它主要用于中等规模或大型的8086/8088系统中。
将8086/8088的第33脚接地时,系统处于最大模式,接+5V时,为最小模式
2. 8086有两种工作方式,即最小模式和最大模式,它由什么信号决定?最小模式的特点是什么?最大模式的特点是什么?
答:8086的两种工作模式由信号决定。当接入+5V时,系统处于最小模式,只有一个微处理器,总线控制逻辑部件被减到最小。当接地时,系统处于最大模式,实现多处理器控制系统,主要应用于大中型系统。
3. 8086/8088的执行部件EU由多少个通用寄存器,多少个专用寄存器,几个标志寄存器和什么组成?
答:执行部件由以下几部分组成:1、四个通用寄存器 AX BX CX DX;2、四个专用寄存器,即基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,目的变址寄存器DI;3一个标志寄存器FR;4算术逻辑部件ALU。
4.简述8086CPU对中断的响应和处理过程。
答:8086对各类中断的响应不完全相同,主要区别在于如何获得中断类型码。
A. 可屏蔽中断的响应过程。首先必须满足中断允许标志IF置1,当没有内部中断,非屏蔽中断(NMI=0)和总线请求(HOLD=0)时,外设向中断控制器8259A发出中断请求,经8259A处理,得到相应的中断类型码,并向CPU申请中断(INTR=1)。
⑴等待当前指令结束,CPU发出中断响应信号。
⑵8259A连续(两个总周期)接收到两个INTA 的负脉冲的中断响应信号,则通过数据总线将中断类型码送CPU,CPU把中断类型码乘4作为中断矢量表的地址指针。
⑶CPU保护断点,将状态标志字PSW及当前的CS和IP内容压栈。
⑷清IF和TF标志为0。
⑸查中断矢量表,取中断处理程序首地址,将其分别置入IP和CS中,程序转入执行中
断处理程序。
B. 非屏蔽中断的响应过程:非屏蔽中断请求在NMI加入,等待当前指令执行结束,CPU优先响应NMI中断请求,其中断类型码由硬件决定类型为2,无须从外部引入,其余响应过程与可屏蔽中断相同。
C. 内部中断响应操作:内部中断响应的共同点是:
⑴中断类型码由指令码给定或硬件决定,无须外部逻辑输入;
⑵无INTA 信号响应周期;
⑶不受IF控制;
⑷除单步中断 外,其它内部中断响应优先于外部中断,响应过程与非屏蔽中断类似。
5. 简述中断控制器8259A的内部结构和主要功能。
答: 8259芯片内部结构包括八个部分:1、数据总线缓冲器:是一个双向八位三态缓冲器,由它构成8259与CPU之间的数据接口,是8259与CPU交换数据的必经之路。2、读/写控制电路:用来接收来自CPU的读/写控制命令和片选控制信息。3、级联缓冲/比较器:在多片8259级联使用,构成主从关系。4、中断请求寄存器(IRR):是一个八位寄存器,用来存放由外部输入的中断请求信号IR0-IR7。5、中断服务寄存器(ISR):是一个八位寄存器,用来记录正在处理的中断请求。6、中断屏蔽寄存器(IMR):是一个八位寄存器,用来存放各级中断请求的屏蔽信息。7、优先权判别器(PR)用来识别各中断请求的优先级别。8、控制电路:是8259A内部的控制器,根据中断请求寄存器IRR的置位情况和优先权判别器PR与判定结果向8259A 内部其他部件发控制信号,并向CPU 发中断请求信号 INT 和接收中断响应信号INTA 控制8259A 进入中断服务状态。
6. 8086可引入哪些中断,它们是如何引入的?
答:8086具有256种不同中断类型的能力。中断源可来自CPU内部或外部设备,可由硬件
或软件产生。
A. 非屏蔽中断:8086的两条外部中断线是非屏蔽中断NMI和可屏蔽中断INTR。NMI是边缘触发方式,要求高电平有效。一般用在如电源断电等紧急事件中,优先权较高,请求信号不受标志位IF的影响。NMI中断类型码规定为2。
B. INTR可屏蔽中断请求是高电平有效的另一外部硬件中断源,高电平保持时间应维持到当前指令结束。在8086中它不自中断控制器8259A,其外部电路所产生的中断的优先级别由8259A管理产生。CPU只根据标志位IF的状态决定是否响应INTR。
C. 内部中断:8086的内部中断产生的过程完全与硬件电路无关,是CPU根据软件中某条指令或软件对PSW中的标志设置而产生的。内部中断可分为两大类型:一类是内部已硬件设置好的类型0~类型4,它们依次为除法出错、单步中断、NMI、断点中断和溢出中断;另一类是8086的中断系统中有一条两字节的中断指令INT n。n 即为中断类型码,CPU根据中断类型码即可找到中断服务程序入口。
2. 简述微处理器、微计算机及微计算机系统三个术语的内涵。
答:微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影响。微计算机包括微处理器、存储器、I/O接口电路及系统总线。微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系统。
3. 80X86微处理器有几代?各代的名称是什么?
答:从体系结构上可分为3代:8080/8085:8位机、 8086/8088/80286:16位机。80386/80486:32位机。
第2章 微处理器80X86结构
1.8086是多少位的微处理器?为什么?
答:8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。
2.EU与BIU各自的功能是什么?如何协同工作?
答:EU是执行部件,主要的功能是执行指令。BIU是总线接口部件,与片外存储器及I/O接口电路传输数据。EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。
3.8086/8088与其前一代微处理器8085相比,内部操作有什么改进?
答:8085为8位机,在执行指令过程中,取指令与执行执令都是串行的。8086/8088由于内部有EU和BIU两个功能部件,可重叠操作,提高了处理器的性能。
4.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?
答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。AX、BX、CX、DX一般作为通用数据寄存器。SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。
5.8086对存储器的管理为什么采用分段的办法?
答:8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围 (1MB,20位地址)。若不用分段方法,16位地址只能寻址64KB空间。
6.在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。
答:逻辑地址是在程序中对存储器地址的一种表示方法,由段地址和段内偏移地址两部分组成,如1234H:0088H。偏移地址是指段内某个存储单元相对该段首地址的差值,是一个16位的二进制代码。物理地址是8086芯片引线送出的20位地址码,用来指出一个特定的存储单元。
7.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。
答:物理地址:320F8H。
8.8086/8088为什么采用地址/数据引线复用技术?
答:考虑到芯片成本,8086/8088采用40条引线的封装结构。40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。
9.8086与8088的主要区别是什么?
答:8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度为6字节,8088只有4字节。
10.怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同?
答:引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式,MN/MX#引线接低电平,8086被设定为最大模式。
最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的S2#~S0#三条状态信号引线提供。
11. 8086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?
答:标志寄存器、IP、DS、SS、ES和指令队列置0,CS置全1。处理器从FFFFOH存储单元取指令并开始执行。
12. 8086基本总线周期是如何组成的?各状态中完成什么基本操作?
答:基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号RD#、WR#及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。
13. 结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。
答:ALE为外部地址锁存器的选通脉冲,在T1期间输出;M/IO#确定总线操作的对象是存储器还是I/O接口电路,在T1输出;DT/R#为数据总线缓冲器的方向控制信号,在T1输出;RD#为读命令信号;在T2输出;READY信号为存储器或I/O接口"准备好"信号,在T3期间给出,否则8086要在T3与T4间插入Tw等待状态。
14. 8086中断分哪两类?8086可处理多少种中断?
答:8086中断可分为硬件中断和软件中断两类。8086可处理256种类型的中断。
15. 8086可屏蔽中断请求输入线是什么?"可屏蔽"的涵义是什么?
答:可屏蔽中断请求输入线为INTR;"可屏蔽"是指该中断请求可经软件清除标志寄存器中IF位而被禁止。
16. 8086的中断向量表如何组成?作用是什么?
答:把内存0段中0~3FFH区域作为中断向量表的专用存储区。该区域存放256种中断的处理程序的入口地址,每个入口地址占用4个存储单元,分别存放入口的段地址与偏移地址。
17.8086如何响应一个可屏蔽中断请求?简述响应过程。
答:当8086收到INTR的高电平信号时,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,请除IF、TF;8086将类型码乘4后得到中断向量表的入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程。
18.什么是总线请求?8086在最小工作模式下,有关总线请求的信号引脚是什么?
答:系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。8086在最小工作模式下有关总线请求的信号引脚是HOLD与HLDA。
19.简述在最小工作模式下,8086如何响应一个总线请求?
答:外部总线主控模块经HOLD引线向8086发出总线请求信号;8086在每个时钟周期的上升沿采样HOLD引线;若发现HOLD=1则在当前总线周期结束时(T4结束)发出总线请求的响应信号HLDA;8086使地址、数据及控制总线进入高阻状态,让出总线控制权,完成响应过程。
20.在基于8086的微计算机系统中,存储器是如何组织的?是如何与处理器总线连接的?
BHE#信号起什么作用?
答:8086为16位处理器,可访问1M字节的存储器空间;1M字节的存储器分为两个512K字节的存储体,命名为偶字节体和奇字节体;偶体的数据线连接D7~D0,"体选"信号接地址线A0;奇体的数据线连接D15~D8,"体选"信号接BHE#信号;BHE#信号有效时允许访问奇体中的高字节存储单元,实现8086的低字节访问、高字节访问及字访问。
21."80386是一个32位微处理器",这句话的涵义主要指的是什么?
答:指片内寄存器和主要功能部件均为32位,片内数据通路为32位。
22.80X86系列微处理器采取与先前的微处理器兼容的技术路线,有什么好处?有什么不足?
答:好处是先前开发的软件可以在新处理器组成的系统中运行,保护了软件投资。缺点是处理器的结构发展受到兼容的约束,为了保持兼容性增加了硅资源的开销,增加了结构的复杂性。
23.80386内部结构由哪几部分组成?简述各部分的作用。
答:80386内部结构由执行部件(EU)、存储器管理部件(MMU)和总线接口部件(BIU)三部分组成。EU包括指令预取部件、指令译码部件、控制部件、运算部件及保护检测部件,主要功能是执行指令。存储器管理部件包括分段部件、分页部件,实现对存储器的分段分页式的管理,将逻辑地址转换成物理地址。总线接口部件作用是进行片外访问:对存储器及I/O接口的访问、预取指令;另外的作用是进行总线及中断请求的控制
24.80386有几种存储器管理模式?都是什么?
答:80386有三种存储器管理模式,分别是实地址方式、保护方式和虚拟8086方式
25.在不同的存储器管理模式下,80386的段寄存器的作用是什么?
答:在实地址方式下,段寄存器与8086相同,存放段基地址。在保护方式下,每个段寄存器还有一个对应的64位段描述符寄存器,段寄存器作为选择器存放选择符。在虚拟8086方式下,段寄存器的作用与8086相同。
26.试说明虚拟存储器的涵义,它与物理存储器有什么区别?80386虚拟地址空间有多大?
答:虚拟存储器是程序员面对的一个巨大的、可寻址的存储空间,这个空间是内存与外存联合形成的,在操作系统的管理下,程序可象访问内存一样去访问外存而获得所需数据。物理存储器是指机器实际拥有的内存储器,不包括外存。80386的虚拟地址空间为64TB大。
27.试说明描述符的分类及各描述符的作用。
答:描述符分为三类:存储器段描述符、系统段描述符、门描述符。存储器段描述符由8字节组成,它用来说明一个段中保存信息的情况。32位段基地址和20位段界限值定位了该段在存储空间中的位置,其它有关位决定访问权限及段的长度单位。系统段描述符与存储器段描述符大多数字节段相同,有关访问权及属性字节段有些不同。门描述符用来改变程序的特权级别、切换任务的执行以及指出中断服务程序的入口。
28.描述符表的作用是什么?有几类描述符表?
答:描述符表顺序存放一系列描述符,描述符表定义了在80386系统中被使用的全部存储器段。有3类描述符表,即全局描述符表、局部描述符表及中断描述符表。
29.80386的分段部件是如何将逻辑地址变为线性地址的?
答:分段部件根据段选择符从全局描述符表或局部描述符表中取出对应的段描述符。把段描述符32位段基地址与逻辑地址中的32位偏移量相加就形成了线性地址。
30.80386中如何把线性地址变为物理地址?
答:分段部件形成的32位线性地址中高10位作为寻址页目录表的偏移量,与控制寄存器CR3中页目录表基地址共同形成一个32位的地址指向页表中的一个页项,即为一个页面描述符。该页面项中高20位作为页面基地址,线性地址的低12位为偏移量,相加后形成指向某一存储单元的32位物理地址。若禁止分页功能,线性地址就是物理地址。
31.80386对中断如何分类?
答:80386把中断分为外部中断和内部中断两大类,外部中断经NMI和INTR引线输入请求信号。内部中断也叫内部异常中断,分为陷阱中断、内部故障异常中断、异常终止中断。
32.80386在保护方式下中断描述符表与8086的中断向量表有什么不同?
答:8086工作在实地址方式,向量表是在存储器的0段中最低1024字节内存中。80386在保护方式下要通过中断描述符表中的描述符访问虚拟空间的中断向量,中断描述符表的位置不是固定的,要由IDTR寄存器实现在虚拟空间的定位。
33.简述80386在保护方式下的中断处理过程。
答:80386响应中断后,接收由中断源提供的类型码并将其乘8,与IDTR寄存器中基地址相加,指出中断描述符的位置,读出中断描述符,依其中的段选择符及条件决定从两个描述符表LDT或GDT中的一个得到段描述符,形成中断服务程序入口所在存储器单元的线性地址。
第7章 中断控制器8259A
1.试说明一般中断系统的组成和功能。
答:处理器内部应有中断请求信号的检测电路,输出中断响应信号,保存断点的逻辑,转向中断处理程序的逻辑,中断返回逻辑。系统中要有一中断控制器,管理多个中断源,提供处理机所需的中断处理信息。系统中请求中断处理的I/O接口电路要有提供中断请求信号及接收中断响应信号的逻辑。
2.什么是中断类型码、中断向量、中断向量表?在基于8086/8088的微机系统中,中断类型码和中断向量之间有什么关系?
答:处理机可处理的每种中断的编号为中断类型码。中断向量是指中断处理程序的入口地址,由处理机自动寻址。中断向量表是存放所有类型中断处理程序入口地址的一个默认的内存区域。在8086系统中,中断类型码乘4得到向量表的入口,从此处读出4字节内容即为中断向量。
3.什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?
答:硬件中断是通过中断请求线输入电信号来请求处理机进行中断服务;软件中断是处理机内部识别并进行处理的中断过程。硬件中断一般是由中断控制器提供中断类型码,处理机自动转向中断处理程序;软件中断完全由处理机内部形成中断处理程序的入口地址并转向中断处理程序,不需外部提供信息。
4.试叙述基于8086/8088的微机系统处理硬件中断的过程。
答:以INTR请求为例。当8086收到INTR的高电平信号时,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,清除IF、TF;8086将类型码乘4后得到中断向量入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程。
5.在PC机中如何使用"用户中断"入口请求中断和进行编程?
答:PC机中分配给用户使用的中断是IRQ9,经扩展插槽B4引出,故把用户的中断请求线连接到B4上。在应用程序中,利用25H号系统调用将中断服务程序的入口地址写入对应0AH类型中断对应的中断向量表中去。在应用程序中把主片8259A D2屏蔽位清0,把从片8259A D1屏蔽位清0,使主片的IR2、从片的IR1可以输入中断请求。中断服务程序结束前向主片8259A发中断结束命令。应用程序结束之前对主片的IR2和从片的IR1进行屏蔽,关闭用户中断请求。
6.8259A中断控制器的功能是什么?
答:8259A中断控制器可以接受8个中断请求输入并将它们寄存。对8个请求输入进行优先级判断,裁决出最高优先级进行处理,它可以支持多种优先级处理方式。8259A可以对中断请求输入进行屏蔽,阻止对其进行处理。8259A支持多种中断结束方式。8259A与微处理器连接方便,可提供中断请求信号及发送中断类型码。8259A可以进行级连以便形成多于8级输入的中断控制系统。
7.8259A初始化编程过程完成那些功能?这些功能由那些ICW设定?
答:初始化编程用来确定8259A的工作方式。ICW1确定8259A工作的环境:处理器类型、中断控制器是单片还是多片、请求信号的电特性。ICW2用来指定8个中断请求的类型码。ICW3在多片系统中确定主片与从片的连接关系。ICW4用来确定中断处理的控制方法:中断结束方式、嵌套方式、数据线缓冲等。
8.8259A在初始化编程时设置为非中断自动结束方式,中断服务程序编写时应注意什么?
答:在中断服务程序中,在返回主程序之前按排一条一般中断结束命令指令,8259A将ISR中最高优先级位置0,结束该级中断处理以便为较低级别中断请求服务。
9.8259A的初始化命令字和操作命令字有什么区别?它们对应于编程结构哪些内部寄存器?
答:8259A的工作方式通过微处理器向其写入初始化命令字来确定。初始化命令字分别装入ICW1~ICW4内部寄存器。8259A在工作过程中,微处理器通过向其写入操作命令字来控制它的工作过程。操作命令字分别装入OCW1~OCW3内部寄存器中。8259A占用两个端口号,不同的命令字对应不同的端口,再加上命令字本身的特征位及加载的顺序就可以正确地把各种命令字写入对应的寄存器中。
10.8259A的中断屏蔽寄存器IMR与8086中断允许标志IF有什么区别?
答:IF是8086微处理器内部标志寄存器的一位,若IF=0,8086就不响应外部可屏蔽中断请求INTR引线上的请求信号。8259A有8个中断请求输入线,IMR中的某位为1,就把对应这位的中断请求IR禁止掉,无法被8259A处理,也无法向8086处理器产生INTR请求。
11. 若8086系统采用单片8259A中断控制器控制中断,中断类型码给定为20H,中断源的请求线与8259A的IR4相连,试问:对应该中断源的中断向量表入口地址是什么?若中断服务程序入口地址为4FE24H,则对应该中断源的中断向量表内容是什么,如何定位?
答:中断向量表入口地址为:0段的0090H地址。对应4FE24H中断服务程序入口,在向量表中定位情况:(0090H)=24H、(0091H)=00H、(0092H)=E0H、(0093H)=4FH。
12.试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,全嵌套中断优先级,数据总线无缓冲,采用中断自动结束方式。中断类型码为20H~27H,8259A的端口地址为B0H和B1H。
答:ICW1=1BH (送B0H端口),ICW2=20H (送B1H端口),ICW4=03H (送B1H端口)
第8章 串并行通信及接口
1. 8255A的3个端口在使用上有什么不同?
答:8255A的A端口,作为数据的输入、输出端口使用时都具有锁存功能。
B端口和C端口当作为数据的输出端口使用时具有锁存功能,而作为输入端口使用时不带有锁存功能。
2. 当数据从8255A的C端口读到CPU时,8255A的控制信号 、 、 、A1、AO分别是什么电平?
答:当数据从8255A的C 端口读入CPU时,8255A的片选信号 应为低电平,才能选中芯片。A1,A0为10,即A1接高电平,A0接低电平,才能选中C端口。 应为低电平(负脉冲),数据读入CPU, 为高电平。
3. 如果串行传输速率是2400波特,数据位的时钟周期是多少秒?
答:数据位的时钟周期是 = 4.17×10-4 秒
8. 8251A在编程时,应遵循什么规则?
答:8251在初始化编程时,首先使芯片复位,第一次向控制端口(奇地址)写入的是方式字;如果输入的是同步方式,接着向奇地址端口写入的是同步字符,若有2个同步字符,则分2次写入;以后不管是同步方式还是异步方式,只要不是复位命令,由CPU向奇地址端口写入的是命令控制字,向偶地址端口写入的是数据。
8259A控制字
展开阅读全文