微机原理与接口技术简答题集锦(河北专升本计算机)

第一章 微型计算机基础

1. 微处理器、微型计算机和微型计算机系统三者之间有什么区别?

  1. 微处理器(CPU)∶将运算器与控制器集成在一起,它包括运算器、控制器、寄存器组和片内总线。用于实现微型计算机的运算和控制功能,是微型计算机的核心;
  2. 微型计算机是由微处理器(CPU)、存储器、输入/输出接口电路和系统总线构成的裸机系统。
  3. 微型计算机系统包括硬件系统和软件系统两部分,是以微型计算机为主机,配上系统软件和外设构成的计算机系统。
  4. 三者之间是有很大不同的,微处理器是微型计算机的一个组成部分,而微型计算机又是微型计算机系统的一个组成部分,微型计算机系统主要由微型计算机硬件构成。

2. 若用一个字节来表示符号数,判断下列各运算在机内进行时是否会产生溢出,写出判断过程。

(1)5BH+32H
(2) -08H-15H

  1. 产生溢出,5BH=01011011B其补码表示的机器数为:01011011
    32H=00110010B其补码表示的机器数为:00110010
    相加的结果为:10001101
    数值最高位向符号位进位,但符号位向前无进位,(两进位不一样溢出,反之不溢出)故产生溢出。
  2. 不产生溢出,-08H=-00001000B,其补码表示的机器数为:11111000
    -15H=-00010101B,其补码表示的机器数为:11101011
    相加的结果为:111100011
    数值最高位向符号位进(是借)位,符号位同时也向前进(是借)位,(两进位一样无溢出,反之溢出)故不产生溢出。

3. 简述计算机的冯·诺依曼结构的特点(基本设计思想)。

  1. 采用二进制,机器用二进制表示数据和指令。
  2. 存储程序,将程序和数据存放在存储器中。
  3. 程序控制,计算机在工作时从存储器取出指令加以执行,自动完成计算任务。
  4. 指令的执行是顺序的,即一般按照指令在存储器中存放的顺序执行。
  5. 计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成。

4. 计算机的内存容量、主频、存取周期各是指什么?

  1. 内存容量:指内存储器中能存储信息的总字节数。通常以8个二进制位(bit)作为一个字节(Byte)。
  2. 主频:也称为时钟频率,是指计算机CPU在单位时间内输出的脉冲数,它在很大程度上决定了计算机的运行速度,单位是MHz。它的倒数是计算机的时钟周期数;
  3. 存取周期:存储器进行一次完整的读/写操作所需的时间,也就是存储器连续两次读(或写)所需的最短时间间隔,单位是纳秒 ( n s , 1 n s = 1 0 − 9 s ) (ns,1ns=10^{-9}s) (ns1ns=109s)

5. 什么是内存?什么是外存?什么是CPU?什么是适配器?简述其功能。

  1. 内存:用于存放系统当前运行所需要的程序和数据的半导体存储器,称为内存储器,简称内存;
  2. 外存:用于存放程序和数据,但不能被CPU直接访问的大容量存储器,称为外存储器,简称为外存,外存一般包括磁盘存储器和光盘存储器。
  3. CPU:运算器和控制器合称为中央处理器,简称CPU。
  4. 适配器:主机和不同速度的外设之间的一种部件,用于主机和外设之间的信息转换。

6. 什么是总线,简述各类总线的应用场合?

  1. 总线(Bus)是计算机各种功能部件之间传送信息的公共通信线,它是CPU、内存、输入、输出设备传递信息的公用通道。
  2. 按总线功能或信号类型来分,分为数据总线、地址总线和控制总线。
  3. 按总线的层次结构分:
    1. CPU片内总线:微机系统中速度最快的总线,连接 CPU 内部运算器、控制器和寄存器组。
    2. 系统总线:CPU 和主板器件之间以及 CPU和高速外设之间的快速信息通道。
    3. 通信总线:也称为外部总线,是微机与微机,微机与外设之间进行通信的总线。

第二章 16位微处理系统

1. 8086存储器内部如何分段?怎样理解物理地址,并进行计算?

  1. 8086的20条地址线能访问1MB存储空间。8086内部寄存器是16位,寻址内存空间只有64KB,所以8086系统采用地址分段的方法,将1MB空间分段,每段最多64KB。段基址存放在CS、DS、SS和ES这4个段寄存器内,各段位置可分开,也可重叠。
  2. 物理地址(PA)是指CPU和存储器进行数据交换时实际使用的地址,由段基址和偏移地址两部分组成。段基址由段寄存器给出,偏移地址(也称为有效地址EA)是所要访问的内存单元离段起始地址的偏移距离,一般由IP、DI、SI、BP、SP等16位寄存器给出。当CPU寻址某个存储单元时,先将段寄存器的内容左移4位(乘以16或10H),然后加上指令中提供的16位偏移地址形成20位物理地址。
  3. 存储器物理地址计算公式:物理地址=段基值×10H+偏移地址。

2. 8086的最大工作方式和最小工作方式的主要区别是什么﹖它们分别应用在何种场合?

  1. 8086工作在最小方式时,CPU的33引脚 M N / M X ‾ MN/\overline{MX} MN/MX接+5V(Vcc),此时系统只有一个微处理器,且系统所有的控制信号全部由8086微处理器提供。
  2. 8086工作在最大方式时,CPU的33引脚 M N / M X ‾ MN/\overline{MX} MN/MX接地(GND),此时系统有两个以上的微处理器组成,其中一个为主处理器8086,另一个为协处理器,组合后构成多个处理器系统,系统的控制信号通过总线控制器8288产生,各处理器可共享系统资源。
  3. 最小方式一般用于简单的单处理器系统,是一种最小构成,该系统功能比较简单,成本较低;最大方式用在中等规模的多处理器系统中,系统配置要比最小方式复杂,如要增加总线控制器8288和中断控制器8259A等,但其处理功能要丰富的多。

3. 可屏蔽中断响应过程为何有两个 I N T A ‾ \overline{INTA} INTA周期?

  1. 在第一个中断响应周期中, I N T A ‾ \overline{INTA} INTA有效(低电平),作为对中断请求的响应。中断请求设备(通常是中断控制器)收到后要准备中断类型号。
  2. 在第二个中断响应周期中, I N T A ‾ \overline{INTA} INTA有效(低电平),中断请求设备(通常是中断控制器)将中断类型号提供到CPU的数据总线低8位上,以供CPU读取。CPU在读取中断类型号后经过硬件处理可以找到对应的中断服务程序的入口。

4. 简述8086 微机系统中硬件中断和软件中断的区别。

  1. 硬件中断是由外设引发的,软件中断是执行中断指令产生的;
  2. 硬件中断的中断号是由中断控制器提供的,软中断的中断号由指令直接指出,无需使用中断控制器;
  3. 硬件中断由外部硬件产生,是由CPU外部中断请求信号触发的一种中断,分为非屏蔽中断NMI和可屏蔽中断INTR。
  4. 软件中断是CPU根据某条指令或者对标志寄存器的某个标志位的设置而产生的,也称为内部中断。通常有除法出错中断、INTO溢出中断、INTN中断、断点中断和单步中断等。
  5. 硬件中断处理程序要确保它能快速地完成任务,这样程序执行时才不会等待较长时间,称为上半部;软件中断处理硬中断未完成的工作,是一种推后执行的机制,属于下半部。

5. 在 8086微处理器构成的系统中,什么是存储器的规则字和非规则字?

  1. 读写的是从偶地址开始的字(低字节在偶体中,高字节在奇体中),这种字的存放规则称为“规则字”或“对准字”。
  2. 读写的是从奇地址开始的字(低字节在奇体中,高字节在偶体中),这种字的存放规则称为“非规则字”或“非对准字”。

6. 8086微处理器对一个规则字和一个非规则字读写时,有什么差别?

  1. 规则字的读/写操作可以一次完成。由于两个存储体上的地址线 A 19 ∼ A 1 A_{19}\sim A_1 A19A1是连在一起的,只要使 A 0 A_0 A0=0, B H E ‾ \overline{BHE} BHE=0,就可以实现一次在两个存储体中对一个字的读/写操作。
  2. 非规则字的读/写,需要两次访问存储器才能完成。第一次访问存储器读/写奇地址中的字节;第二次访问存储器读/写偶地址中的字节。

7. 在最小模式下,8086CPU一个基本的总线周期一般由几个时钟周期组成?以读总线周期为例,请说明在每个时钟周期中,CPU做了哪些工作?

  1. 8086的基本总线周期为4个时钟周期。
  2. 每个时钟周期间隔称为一个T状态。最小方式下,读总线时,在各个时钟周期中,CPU要做的工作如下: (记黑体的)
    1. T 1 T_1 T1状态:
      ①首先发出访问存储器或外设的控制信号M/IO:在这里插入代码片
      ②将地址信息送入 A D 0 ∼ A D 15 AD_0\sim AD_{15} AD0AD15 A 16 / S 3 ∼ A 19 / S 6 A_{16}/S_3\sim A_{19}/S_6 A16/S3A19/S6;
      ③发出地址锁存允许信号 A L E ALE ALE;
      ④发出 B H E ‾ \overline{BHE} BHE信号,以确定是否允许高8位数据总线 D 8 ∼ D 15 D_8\sim D_{15} D8D15传送数据。
      T1:CPU 向数据/地址分时复用总线上发出访问存储器或 I/O 端口的地址信息。
    2. T 2 T_2 T2状态:
      A 19 ∼ A 16 A_{19} \sim A_{16} A19A16送状态 S 6 ∼ S 3 S_6\sim S_3 S6S3 A D 7 ∼ A D 0 AD_7\sim AD_0 AD7AD0浮空,准备接收数据。同时 R D ‾ = 0 \overline{RD}=0 RD=0,表示进行读操作,而 D E N ‾ = 0 \overline{DEN}=0 DEN=0作为8286/8287的选通信号,允许进行数据传输。
      T2:CPU 从总线上撤销地址,发出 R D ‾ \overline{RD} RD读控制信号,使复用总线的低 8 位处于高阻状态。
    3. T3状态:
      从指定的存储单元将数据读出送 A D 7 ∼ A D 0 AD_7\sim AD_0 AD7AD0。若存储器速度较慢,不能及时读出数据的话,则通过READY引脚通知CPU,CPU在 T 3 T_3 T3的前沿采样READY,如果READY=0,则在T3结束后自动插入1个或几个等待状态 T w T_w Tw,并在每个Tw的前沿检测READY,等到READY变高后,就自动脱离 T w T_w Tw进入T4状态。
      (T3:数据/地址分时复用总线的低8位上出现从内存或 I/O 端口读入的数据。)
    4. T4状态:
      CPU采样数据线,获得数据。 R D ‾ 、 D E N ‾ \overline{RD}、\overline{DEN} RDDEN等信号失效。
      (T4:8086 完成数据传送,控制信号变为无效,结束总线周期。)

8. 8086CPU从功能上可以分为哪两部分?它们的功能分别是什么?

  1. 8086 CPU从功能上划分成两部分∶总线接口单元BIU(Bus Interface Unit)和执行单元EU(Execution Unit).
  2. BIU作为总线控制单元,负责与存储器及IO接口来传输数据;EU作为执行单元,负责执行指令。具体来说,BIU根据EU的请求,将指令送到指令流队列中排队,为EU提供即将执行的指令﹔
  3. EU从BIU的指令队列取得的指令和数据,来对片外操作数(片外就是指CPU以外存储数据的地方,比如存储器、I/O接口等)进行访问的。这样EU与BIU可独立工作,BIU在保证EU与片外传输操作数的前提下,可进行指令预取,与EU可重叠操作。取指部分与执行部分可分开进行,提高CPU的利用率。

9. 简述CPU与外部设备采用中断控制方式传输数据的过程。

  1. 当外部设备需要与CPU进行数据交换时,由接口部件发出一个中断请求信号。
  2. CPU响应中断请求,便可在中断服务程序中完成一个字节或一个字的信息交换。
  3. 数据交换完成后,返回原程序。
  4. CPU每执行一次中断传送数据,要打断原来执行的程序去执行中断服务程序。
  5. 执行前要保护PSW和断点。

10. 8086的存储器空间最大可以为多少?怎样用16 位寄存器实现对20位地址的寻址?完成逻辑地址到物理地址转换的部件是什么?

  1. 8086的存储器空间最大可以为1MB;
  2. 8086计算机引入分段管理机制,当CPU寻址某个存储单元时,先将段寄存器内的内容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址;
  3. 完成逻辑地址到物理地址转换的部件是地址加法器。

11. 有一个由10个字组成的数据区,其起始地址为1200H:0120H。试写出该数据区的首末存储单元的实际地址。

(在内存中,10个字的数据要占20个存储单元,转换成十六进制数为14H,由于数据存放时以偶数地址开始,计算实际地址时要注意其偏移地址是从0000H~0013H。)

本题的数据区首末单元实际地址计算如下:
数据区首地址=1200H×10H+0120H=12120H
数据区末地址=12120H+0013H=12133H

12. 有一双字87654321H在内存中的地址为30101H,画出其在8086系统的内存中的存放情况。

在8086系统中,双字在内存中占连续4个字节,按照小端存储方式,低位字节存于低地址,高位字节存于高地址。如图:
在这里插入图片描述

13. 8088/8086CPU中指令队列的作用是什么?

指令队列的作用:在执行指令的同时从内存中取一条或多条指令,取来的指令放在指令队列中,这样它就不需要像以往的计算机那样让CPU轮番进行取值和执行指令的工作,实现了取指令、执行指令这种流水线工作方式,从而提高CPU的利用率。

14. 中断向量表的功能是什么?若中断向量号分别为1AH和20H,则它们的中断向量在中断向量表的什么位置上?

  1. 中断向量表的功能:当中断源发出中断请求时,即可查找该表,找出其中断向量,就可以转入相应的中断服务子程序。
  2. 1AH在中断向量表的位置是1AH×4=68H,在中断向量表0000:00068H处;
  3. 20H在中断向量表的位置是20H×4=80H,在中断向量表0000:0080H处。

15. 简述在最小工作模式下,8086如何响应一个总线请求?

  1. 外部总线主控模块经HOLD引脚向 8086 发出总线请求信号;
  2. 8086在每个时钟周期的上升沿采样HOLD引脚;
  3. 若发现 HOLD=1 则在当前总线周期结束时(T4 结束)发出总线请求的响应信号 HLDA;
  4. 8086 使地址、数据及控制总线进入高阻状态,让出总线控制权,完成响应过程。

16. 8086系统中为什么要用地址锁存器?

8086微处理器的数据线和地址线复用引脚 A D 0 ∼ A D 15 AD_0\sim AD_{15} AD0AD15,状态和高4位地址线复用引脚 A 19 ∼ A 16 A_{19}\sim A_{16} A19A16。在CPU与存储器或I/O进行数据交换时,CPU先发出总地址信号然后再发出控制信号及传送数据。为了使读/写总线周期内地址稳定,需要添加地址锁存器,先将地址锁存。

17. 8086处理器的输入控制信号RESET、HOLD的含义各是什么?当它们有效时,8086CPU将有何反应?

RESET:复位输入信号,高电平有效。该引脚有效时,将迫使处理器回到其初始状态;转为无效时,CPU重新开始工作。
HOLD:总线请求,高电平有效。该引脚有效时,表示其他总线主控设备向处理器申请使用原来有处理器控制的总线。

18. 锁存器和寄存器有什么不同?

  1. 锁存器与寄存器都是用来暂存数据的器件,在本质上没有区别。
  2. 寄存器的输出端平时不随输入端的变化而变化,只有在时钟有效时才将输入端的数据送输出端暂存到寄存器,而锁存器的输出端平时总随输入端变化而变化,只有当锁存器信号到达时,才将输出端的状态锁存起来,使其不再随输入端的变化而变化。

19. 8086CPU中的地址加法器的作用是什么?

  1. 地址加法器是8086CPU的总线接口单元BIU中的一个器件,在8086存储器分段组织方式中它是实现存储器寻址的一个关键器件。
  2. 地址加法器将两个16位寄存器中的逻辑地址移位相加,得到一个20位的实际的物理地址,把存储器寻址空间从64K扩大到1M,极大地扩大了微型计算机的程序存储空间,从而大大提高了程序运行效率。

20. 什么是时钟周期、总线周期、指令周期?它们的时间长短取决于哪些因素?

  1. 时钟周期:CPU连接的系统主时钟CLK一个周期的时间。CLK信号频率越高,时钟周期越短。
  2. 总线周期:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程称为总线周期。8086CPU总线周期一般由4个时钟周期组成,存储器/IO设备(接口)速度不能满足CPU要求时,可以增加一个或多个时钟周期。
  3. 指令周期:CPU执行一条指令的时间(包括取指令和执行该指令所需的全部时间)称为指令周期。指令周期的时间主要取决于主时钟的频率和指令的复杂程度,它也受到存储器或I/O设备接口工作速度的影响。

20(2). 指令周期、总线周期和时钟周期三者的关系怎样?如果在存储器读周期时,存储器的速度较慢,无法与CPU匹配应采取什么措施?

  1. 执行一条指令所需要的时间为指令周期,不同指令的指令周期是不等长的。
  2. 总线周期是CPU与外设或存储器进行一次读或写操作所需要的时间为总线周期。
  3. 时钟周期是指时钟脉冲的重复周期,是CPU的时间基准,由计算机的主频决定。
  4. 一个指令周期通常由一个或若干个总线周期组成;对8086/8088而言,一个总线周期至少由4个时钟周期组成。
  5. 如果存储器的存取速度较慢,可设计一个等待电路向CPU发出请求延长总线周期的READY信号,CPU接到此信号后就在 T 3 T_3 T3 T 4 T_4 T4之间插入若干个等待周期 T w T_w Tw

21. 8086处理器的输入信号NMI和INTR的含义是什么?当它们有效时,8086CPU将有何反应?

  1. NMI:不可屏蔽中断请求,是一个利用上升沿有效的输入信号。该引脚信号有效时,表示外界向处理器申请不可屏蔽中断。
  2. INTR:可屏蔽中断请求,是一个利用高电平有效的输入信号。该引脚信号有效时,表示中断请求设备向处理器申请可屏蔽中断。

22. 什么叫端口?通常有哪几类端口?计算机对I/O端口编址时通常采用哪两种方法?在8086/8088系统中,用哪种方法对I/O端口进行编址?

  1. CPU 和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为端口。

  2. 端口通常有3类:数据端口、状态端口、控制端口。

  3. 计算机对端口编址的两种方法为:

    1. 计算机对内存和 I/O 端口统一编址;
    2. 计算机对内存和 I/O 端口独立编址。
  4. 在 8086/8088 系统中用内存和 I/O 端口各自独立编址。

23. “8086执行了一个总线周期”是指8086做了哪些可能的操作?基本总线周期如何组成?在一个典型的读存储器总线周期中,地址信号、ALE信号、 R D ‾ \overline{RD} RD、数据线信号分别在何时产生?

  1. “8086 执行了一个总线周期”是指:
    1. 8086 可能从片外的存储器取指令;
    2. 8086 可能对片外的存储器或 I/O 接口进行了一次读/写数据的操作。
  2. 基本总线周期由 T1至 T4 四个时钟周期组成。
  3. 在一个典型的读存储器总线周期中:
    1. 地址信号:在 T1 周期内产生;
    2. ALE 信号:在 T1 周期内产生;
    3. R D ‾ \overline{RD} RD信号:在 T2 周期内产生;
    4. 数据信号:一般在 T3 周期内产生,若存储器在T3内来不及提供数据,8086 会在总线周期中插入等待状态 Tw,存储器将在某Tw中给出数据。

24. 简述8086/8088内部的两大功能结构。

(1)总线接口单元BIU由段寄存器、指令指针、地址形成逻辑、总线控制逻辑和指令队列等组成。BIU完成从内存储器指定区域取出指令送到指令队列;执行指令时所用的操作数(内存操作数和I/O操作数)也由BIU从相应的内存区域或I/O端口取出传送给EU;指令执行结果,也由BIU写入相应的内存区域;20位物理地址的形成。
(2)执行单元EU由通用寄存器、标志寄存器、运算器和EU控制系统等组成。EU从BIU的指令队列中获得指令然后执行该指令,完成指令所规定的操作。EU用来对寄存器内容和指令操作数进行算术和逻辑运算以及内存有效地址的计算。此外,EU还能对通用寄存器、标志寄存器和指令操作数进行管理。

第三章 指令系统与汇编程序设计

1. 从内存地址34120H,依次存放3个数,它们分别是字数据27H,字节数据OF1H和字数据9145H。请用图表示出这些数在内存的存放情况。

在这里插入图片描述

2. 将AL的高4位与低4位分别放入BH与BL的低4位,且将BH与BL的高4位清0。

X O R   B X , B X ; 清 空 XOR\ BX,BX\qquad\color{DeepSkyblue}{;清空} XOR BX,BX;
M O V   A H , A L MOV\ AH,AL MOV AH,AL
A N D   A L , O F H ; 高 四 位 清 零 AND\ AL,OFH\qquad\color{DeepSkyblue}{;高四位清零} AND AL,OFH;
M O V   B L , A L MOV\ BL,AL MOV BL,AL
M O V   C L , 4 MOV\ CL,4 MOV CL,4
S H R   A H , C L ; 逻 辑 右 移 四 位 ( 高 四 位 清 零 ) SHR\ AH,CL\qquad\color{DeepSkyblue}{;逻辑右移四位(高四位清零)} SHR AH,CL;
M O V   B H , A H MOV\ BH,AH MOV BH,AH

3. 定义一个数据段DATASG,并且在该数据段中定义一个有5个字节的字节数组ARRB,其值分别为34H,12H,45H,26H,25H。

D A T A S G   s e g m e n t DATASG\ segment DATASG segment
A R R B   D B   34 H , 12 H , 45 H , 26 H , 25 H \qquad ARRB\ DB\ 34H,12H,45H,26H,25H ARRB DB 34H,12H,45H,26H,25H
D A T A S G   e n d s DATASG\ ends DATASG ends

4. 伪指令与指令的本质区别是什么?

  1. 指令语句在汇编过程中被翻译成相应的目标代码,连接后生成可执行的机器代码。指令语句在程序运行期间由CPU执行。
  2. 伪指令语句在汇编时由汇编程序处理,其功能是为汇编程序提供一些信息,使指令语句正确地翻译成相应的机器代码。

5. 汇编语言源程序的语句类型有哪几种?各自的作用和使用规则是什么?

  1. 汇编语言源程序的语句类型通常有3种类型,分别是:指令语句、伪指令语句和宏指令语句。
    1. 指令语句是能产生目标代码、CPU可以执行的,能完成特定功能的语句,主要由CPU指令组成。
    2. 伪指令语句是种不产生目标代码的语句,在汇编过程中告诉汇编程序应如何汇编。
    3. 宏指令语句是一个指令序列,汇编时凡有宏指令语句的地方都将用相应的指令序列的目标代码插入。

6. 一个汇编源程序应该由哪些逻辑段组成?各段如何定义?各段的作用和使用注意事项是什么?

  1. 汇编语言源程序应该由若干个逻辑段组成,可以有若干个数据段、代码段、堆栈段和附加数据段,至少要有一个代码段。各段的作用如下:
    1. 代码段用来存放程序和常数。
    2. 数据段用于数据的保存。
    3. 堆栈段用于保护数据,尤其在子程序调用、中断过程中进行现场信息保护。
    4. 附加数据段用于数据的保存。

7. 汇编程序中主程序和子程序间传递参数的方法有哪些?简述其内容。

  1. 寄存器传递参数方式,将要传递的少数参数(入口或出口参数)直接存放在寄存器中进行传递,或者将入口和出口参数存放在存储器中,而将其首地址和长度通过寄存器传递。
  2. 存储器传递参数方式。通过约定,入口与出口参数存放在指定的存储区域进行传递,或者通过指定存储区域传递数据区的首地址和长度。
  3. 堆栈传递参数方式。在主程序中,将要传递的参数压入堆栈,而在子程序中设法取出入口参数;另一方面,将子程序得到的结果存放在堆栈区域,在主程序中可以通过访问堆栈得到出口参数。

8. 8086CPU中,怎样才能找到下一条要执行的指令?

要找到下一条要执行的指令,关键是计算下一条要执行的指令所在存储单元的物理地址,8086CPU系统中,指令存放在代码段CS中,指令在段内的偏移量为IP的值,因此下一条要执行的指令的物理地址为16×(CS)+IP。

9. 【简答题】判断对错并说明理由:

(1) M O V   A X , [ D X ] MOV\ AX,[DX] MOV AX,[DX]
(2) C M P   D X , 15 CMP\ DX,15 CMP DX,15
(3) M O V   A L , [ B X ] MOV\ AL,[BX] MOV AL,[BX]
(4) S H R   A X , 4 SHR\ AX,4 SHR AX,4
(5) T E S T   A X , 21 H TEST\ AX,21H TEST AX,21H

(1)×,DX不可以作间接寻址
(2)√.
(3)√.
(4)×,移位次数大于1时,必须用CL表示
(5)√.

第四章 存储器系统

1. 简述ROM和RAM的类型、特点和用途。

  1. ROM为只读存储器,包括:PROM、EPROM和EEPROM
    1. ROM为只读存储器,制造时数据就已经固化好,使用中不可以改变;
    2. PROM为一次可编程只读存储器,只可以写入一次数据;
    3. EPROM为可擦除只读存储器,写入数据后可以通过紫外线照射擦除,可以多次写入和擦除;
    4. EEPROM为电可改写只读存储器,写入数据后可以使用电信号擦除,可以多次写入和擦除。
  2. DRAM的特点:
    1. 相对SRAM,存取速度慢;
    2. 由电容构成,依靠电容存储电荷来存储信息。由于电容漏电,数据不能长久保存,需要专门的动态刷新电路,定期给电容补充电荷,即 刷新;
    3. 集成度高、功耗小,成本低;
    4. 适合制作大规模和大容量的内存;

2. ROM、PROM、EPROM和EEPROM在使用上各有什么特点?

  1. ROM为只读存储器,制造时数据就已经固化好,使用中不可以改变。
  2. PROM为一次可编程只读存储器,出厂时内容为空白,只可以写入一次数据。
  3. EPROM为可擦除只读存储器,出厂时内容为空白,写入数据后可以通过紫外线照射擦除,可以多次写入和擦除。
  4. EEPROM为电可改写只读存储器,出厂时内容为空白,写入数据后可以使用电信号擦除,可以多次写入和擦除。

3. 已知2114是1K×4位的RAM芯片,若要组成8K×8位的存储器,需要多少片2114芯片。

按照存储器容量的扩充方法,将给定的1K×4位的RAM芯片组合成8K×8位的存储器系统,需要进行字和位的同时扩展。即总芯片数=(8K×8)/(1K×4)=16,所以共需要16片2114芯片。

4. 8086系统中的存储器分为几个逻辑段?各段之间的关系如何?每个段寄存器的作用是什么?

  1. 8086CPU将1MB的存储空间分成逻辑段来进行管理:每个逻辑段最小16B,最多可分成64K个段;每个逻辑段最大为64KB,最少可分成16个逻辑段。
  2. 各段的起始位置由程序员指出,可以彼此分离,也可以首尾相连、重叠或部分重叠。
  3. 4个16位的段寄存器用来存放每个逻辑段的段起始地址:
    1. CS中为代码段的起始地址;
    2. DS中为数据段的起始地址;
    3. SS中为堆栈段的起始地址;
    4. ES中为附加段的起始地址。

5. 若要用4K×4的静态RAM扩展成一个8K×8的存储器阵列。

(1)这种RAM芯片有几根数据线?几根地址线?共需多少块这样的芯片?分多少个组?每组有多少块这样的芯片?
(2)请画出其连接图。
(3)若该组芯片的起始地址为02000H,则地址为偶地址芯片组的地址范围是什么?

(1)由存储器容量为4K×4的静态RAM知,芯片上有4K=4×210=212个单元。每个单元位数是4,所以这种芯片有4根数据线,12根地址线。
用存储容量为4K×4存储器芯片扩展成一个8K×8的存储器阵列,先进行位数扩展,2片4K×4形成一个芯片组4K×8=4KB。再进行单元数扩展,两个芯片组形成8KB,所以共需要4块这样的芯片。
(2)芯片组示意图如下图所示:
在这里插入图片描述
(3)若该组芯片的起始地址为02000H,则偶地址芯片组的地址分配如下:
在这里插入图片描述
所以,偶地址芯片组的地址范围是02000H~03FFFH中所有偶地址。

6. 在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点?

  1. 全译码方式:存储器芯片中的每一个存储单元对应一个唯一的地址。译码需要的器件多;
  2. 部分译码方式:存储器芯片中的一个存储单元有多个地址。译码简单;
  3. 线选法:存储器芯片中的一个存储单元有多个地址。地址有可能不连续。不需要译码。

第五章 输入输出与中断系统

1. 简述在微机系统中,DMA控制器从外设提出请求到外设直接将数据传送到存储器的工作过程。

  1. DMA传送方式要利用系统的数据总线、地址总线和控制总线来传输数据。
  2. 原先这些总线是CPU管理的,但当外设需要利用DMA方式进行数据传送时,接口电路可以向CPU提出请求,要求CPU让出对总线的控制权,用DMA控制器的专用硬件接口电路来取代CPU临时接管总线,控制外设和存储器之间直接进行高速的数据传送,而不要CPU进行干预。
  3. 在DMA传送结束后,它能释放总线,把对总线的控制权又交给CPU。

2. 什么是运算溢出?什么是串行通讯溢出错?

  1. 运算溢出是指运算结果超出存放运算结果(一般为目的操作数)所能表示数的范围。
  2. 串行通讯溢出错,(也称丢失错误)是指在串行传送中,若CPU还没有把输入缓冲器中的数据取走,新的数据又被送入缓冲器,使得前一个数据被覆盖而丢失。

3. 若中断向量表地址0040H单元存放的是1234H,0042H单元中存放的是5678H,试问:

(1)这些单元对应的中断类型号是什么?
(2)该中断服务程序的起始地址是什么?

  1. 中断向量地址=中断类型号×4=用二进制表示的中断类型号逻辑左移2位,反之,中断类型号=用二进制表示的中断向量地址逻辑右移2位(就是除以4)。由0040H=0100 0000B,逻辑右移2位(除以4)得:0001 0000B=10H。
  2. 中断向量即中断服务程序的起始地址,使用逻辑地址表示,由段地址和段内偏移地址两部分组成。每个中断向量在中断向量表中都占用连续的4个字节空间存放。高地址字单元存放段地址,低地址字单元存放偏移地址。所以0040H单元中存放的是1234H,1234H是偏移地址。0042H单元中存放的是5678H,5678H是段地址。即该中断源的中断服务程序的首地址是5678H:1234H。

3(2). 8086内存的最低1K字节建立了一个中断向量表,可以容纳多少个中断向量?如果有中断向量表指针是004CH,假设由该指针起的四个内存单元中顺序存放着59H、ECH、00H、F0H,则中断服务程序入口地址是多少?

可以容纳256个中断向量。
CS=0F000H,IP=0EC59H,CS左移4位(也就是CS*10H)与IP相加,得到中断服务程序人口地址为0FEC59H。

4. 设中断类型号20H的中断服务程序的起始地址为0485H:0016H,它在中断向量表中如何存放?

由中断类型号20H,推出其中断向量地址为:20H×4=10 0000B×4=1000 0000B=80H,
所以,它在中断向量表占用80H、81H、82H和83H共4个字节单元。
偏移地址0016H存放在80H和81H两个单元中,其中(80H)=16H,(81H)=00H。段地址0485H存放在82H和83H两个单元中,其中(82H)=85H,(83H)=04H。

5. 写出8086CPU各内中断源的名称及产生的条件。

8086/8088CPU的内部中断有五种:
(1)指令中断INT n。是由用户编程时预先安排的软件中断。
(2)断点中断INT 3。主要用于程序调试。
(3)单步中断(陷阱中断),类型号为1,IF=1,主要用于程序调试。
(4)溢出中断,中断类型号为4,执行INTO指令,同时OF=1,是由溢出标准为1而启动的中断。
(5)除法出错中断,执行DIV或IDIV指令后,商大于规定范围(AL或AX)。

6. 简要说明中断控制器8259中IRR、IMR、ISR三个寄存器的作用。

  1. 中断请求寄存器IRR:暂存中断请求线上由设备发出的中断请求信号。IRR对应位为“1”时表示设备发出了中断请求。
  2. 中断屏蔽触发器IMR:CPU是否受理中断或批准中断的标志。IMR对应位为“1”时,CPU可受理对应的外界中断请求。
  3. 中断服务寄存器ISR:该寄存器用于存放当前正在被服务的所有中断级,包括尚未服务完而中途被更高级别的中断,打断了的中断级。

7. 8086的可屏蔽中断INTR和非屏蔽中断NMI有何不同?(要求从触发方式、优先级、CPU对其响应来比较)

  1. 可屏蔽中断INTR是高电平触发;
  2. 非屏蔽中断NMI是边沿触发。
  3. 非屏蔽中断NMI的优先级高于可屏蔽中断INTR的优先级。
  4. CPU响应可屏蔽中断要执行两个中断响应周期,获取相应的中断类型号;
  5. 非屏蔽中断的中断类型号已规定为2,CPU响应非屏蔽中断时,不必由外部提供中断类型号,所以也不需要执行两个中断响应周期。

8. 简述l/O接口的基本功能是什么?接口内部一般由哪些寄存器组成?

  1. I/O接口的基本功能:
    1. 进行地址译码和I/O设备选择。
    2. 实现CPU和I/O设备的通信联络控制。由接口中的同步控制电路完成。
    3. 传递控制命令和状态信息。
    4. 对输入/输出数据进行缓冲、隔离和锁存
    5. 对信号的形式和数据格式进行变换。
  2. 接口内部的寄存器包括:
    1. 数据寄存器:在输入时,保存从外设发往CPU的数据的(称数据输入寄存器据);在输出时,保存从CPU发往外设的数据(称数据输出寄存器)
    2. 状态寄存器:保存状态数据,CPU可以从中读取当前接口电路的状态,其状态间接反映了外设的状态。
    3. 控制寄存器:保存控制数据,CPU可向其中写入命令,选择接口电路的工作方式,并控制外设进行有关操作。

8(2). 简述I/O接口的功能。

  1. 速度匹配、数据缓冲。协调快速CPU与慢速的外设之间速度差异;
  2. 数据格式的转换。串行/并行的转换,电平高低转换、数/模或模/数转换等;
  3. 对I/O端口寻址、地址译码。识别CPU要访问的外设;
  4. CPU与外设信息联络。 CPU控制外设工作,外设状态和请求信号给CPU;
  5. 设置中断和DMA控制逻辑。完成中断(8259)和DMA(8237)传输。

9. I/O接口电路的主要功能是什么?一般的I/O接口电路是由哪些部分组成?

  1. I/O 接口电路主要功能:

    1. 地址译码或设备选择功能;
    2. 数据缓冲功能;
    3. 输入/输出功能;
    4. 信息转换功能;
    5. 中断请求与管理功能;
    6. 可编程功能,其中前 4 种功能一般接口都需要。
  2. I/O 接口电路组成部分: I/O 接口电路一般都由端口寄存器和控制逻辑两大部分组成。

    1. 其中端口寄存器包括数据缓冲寄存器、控制寄存器和状态寄存器,它们是接口电路的核心;
    2. 控制逻辑电路包括数据总线缓冲器、地址译码、内部控制逻辑、联络控制逻辑。

10. 简述8086CPU响应可屏蔽中断的条件。

  1. INTR是可屏蔽中断请求信号,高电平有效,采用电平触发方式。
  2. 8086 / 8088 CPU是否响应INTR的请求,取决于中断允许触发标志IF的状态。
    1. 若IF=1,则响应INTR的请求,暂停现行后续指令的执行,转去执行中断服务程序;
    2. 若IF=0,则不会响应INTR的请求。
  3. 中断允许触发标志lF由指令STI置为1,由CLI指令清除。因此对INTR中断的响应,可以用软件来控制。
  4. 当系统复位后,或当8086 /8088 CPU响应中断请求后,都使IF=0,此时,要允许INTR请求,必须先用STI指令使IF=1之后,才能响应INTR的请求。

10(2). 简述8086CPU响应可屏蔽中断的条件。

  1. 外设有可屏蔽中断请求;
  2. 没有优先级更高的请求;
  3. 中断接口中的中断允许触发器置1;
  4. 8086CPU开中断(IF=1);
  5. CPU完成当前指令周期。

11. CPU与外设间通信为什么需要设置接口电路?

  1. 速度不匹配:外设的工作速度要比CPU慢许多,而且由于种类的不同,他们之间的速度差异也很大。
  2. 时序不匹配:各个设备都有自己的定时控制电路,以自己的速度传输数据,无法与CPU的时序取得统一。
  3. 信息格式不匹配:不同的设备存储和处理信息的格式不同,例如可以分为串行和并行两种;也可以分为二进制格式、ACSII编码和BCD编码等。
  4. 信息类型不匹配:不同设备采用的信号类型不同,有些是数字信号,而有些是模拟信号,因此所采用的处理方式也不同。
  5. 基于以上原因,CPU与外设之间的数据交换必须通过接口来完成。接口的功能是负责实现CPU通过系统总线把电路和外围设备联系在一起.

12. 什么是总线请求? 8086在最小工作模式下,总线请求的信号引脚是什么?

  1. 系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输,需要向系统请求总线的控制权,这就是一个总线请求。
  2. 8086在最小模式下有关总线请求的信号引脚是HOLD(总线占用请求信号)和HLDA(总线保持占用响应信号)。

13. 什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?

  1. 硬件中断是通过中断请求输入线,输入电信号来请求处理器进行中断服务的;软件中断处理器内部识别并进行处理的中断过程。硬件中断一般是由中断控制器提供中断类型码,处理器自动转向中断处理程序;
  2. 软件中断完全由处理器内部形成中断处理程序入口地址并转向中断处理程序,不需要外部提供信息。

14. 简述程序查询传送方式的工作原理,与查询方式相比,中断传送方式有什么优点?

  1. 查询传送方式在传送数据前先查询外设的状态,当外设准备好时,CPU 执行I/O 指令传送数据;若未准备好时,则CPU等待。
    1. 优点:能较好地协调外设与CPU之间的定时关系,因而比无条件传送方式容易实现准确传送。
    2. 缺点:该方式需要不断查询外设的状态,大量时间花在等待循环中,当主机与中、低速外设交换信息时,大大降低了 CPU利用率。
  2. 中断传送方式的优点:提高了CPU的效率;CPU 与外设、外设与外设之间能并行工作。

15. 微机系统中采用总线有什么作用?

  1. 微型计算机系统中采用总线的作用:
    1. 可以提高系统的效率和处理速度;
    2. 简化微机计算机的系统结构;
    3. 使系统易于扩充;
    4. 可以大大简化硬件的设计过程;
    5. 可以减轻软件的设计和调试工作,缩短软件研制周期,从而降低系统的成本。

16. 什么是DMA传输?DMA传输有什么优点?为什么?

  1. 所谓DMA是指直接存储器传送,是将外设的数据不经过CPU直接送入内存储器,或者从内存储器不经过CPU直接送往外部设备。
  2. 使用DMA传输之后,每个数据的传输过程不需要CPU参与,在DMA控制器的控制下,在一个DMA总线周期里完成数据在外部接口和存储单元之间的直接传输。
  3. 所以使用DMA传输既可以减轻CPU的负担,又可以缩短系统对外部设备的响应时间,提高数据传输速率。

17. 什么是DMA传送?简述其工作过程。

  1. DMA 传送:不需CPU干预,由硬件实现存储器与外设之间交换数据。
  2. 工作过程:
    1. 由专用接口芯片DMA 控制器 ( DMAC) 控制传送过程;
    2. 当外设需传送数据时,通过 DMAC向CPU 发出总线请求;
    3. CPU发出总线响应信号,释放总线;
    4. DMAC接管总线,控制外设、内存之间直接数据传送。

18. 接口电路与外部设备之间传送的信号有哪几种?传输方向怎样?

  1. 数据信号:对于输入设备,数据信号从外设通过接口送往总线,对于输出设备,数据信号从总线通过接口发往外部设备。
  2. 状态信号:状态信号表明外部设备当前的工作状态,用来协调CPU与外部设备之间的操作。状态信号是从外部设备通过接口发往总线。
  3. 控制信号:控制信号是CPU向外设发出的命令,它指定设备的工作方式,启动或停止设备。控制信号从CPU通过接口发往外部设备。

19. CPU与外部设备之间进行信息传送的方式有哪些?各有什么特点?

  1. 无条件传送方式:优点:程序简单,所需的硬件和软件都比较少、传送速度快,但必须在确信外设已准备好的情况下才能使用,否则就会出错。
  2. 程序查询传送方式:优点:硬件线路简单,程序易于实现;缺点是CPU利用率低下,实时性差;
  3. 中断传送方式:特点:实现了 CPU 与外设并行工作,大大提高了 CPU 的效率,一般适合于传送数据量少的中低速外部设备。对于高速外部设备的大批量数据传送不适合;
  4. DMA 传送方式:优点:无需 CPU 干预,由硬件实现存储器与外设之间交换数据,速度高,适用于大批量数据的传送;缺点:需要配备 DMA 控制器芯片。

20. 什么是中断?中断技术给计算机系统带来了什么作用?

  1. 中断:当计算机执行正常程序时,系统中出现某些异常情况或特殊请求,CPU暂停它正在执行的程序,而转去处理所发生的事件,CPU 处理完毕后,自动返回到原来被中断了的程序继续运行的过程。
  2. 中断的作用:
    1. 主机与外部设备可以并行工作;
    2. 实现实时处理;
    3. 硬件故障及时处理;
    4. 实现多道程序和分时操作。

21. 外设向CPU申请中断,但CPU不响应,其原因可能有哪些?

其原因有:

  1. CPU 处于关中断状态,IF=0;
  2. 该中断请求已被屏蔽;
  3. 该中断请求的时间太短,未能保持到指令周期结束;
  4. CPU 已经释放总线(即已响应了 DMA 请求),未收回总线控制权,因而不能及时接收外设的中断请求。

22. 试述中断处理过程?

  1. 微机系统中断处理的基本过程包括:中断请求、中断判优、中断响应、中断处理、中断返回。
    1. 中断请求,是指中断源向CPU发出的请求中断的要求;
    2. 中断判优,是指同时出现多个中断请求时,CPU只能按一定的次序予以响应和处理,这个响应的次序称为中断排队(也称中断优先级);
    3. 中断响应,即CPU向中断源发出 I N T A ‾ \overline{INTA} INTA信号响应中断;
    4. 中断处理,即CPU执行中断服务程序的过程;
    5. 中断返回,是指CPU执行完中断服务程序,返回到原先被中断的程序的过程。

23. 计算机系统中使用中断有什么好处?

  1. 解决快速CPU与慢速外设之间的矛盾,使CPU可以与外设同时工作,甚至可以与几个外设同时工作。
  2. 计算机实现对控制对象的实时处理。
  3. 计算机可以对故障自行处理。

24. 8086如何响应一个外部的INTR中断请求?

在INTR中断请求响应条件满足的情况下,

  1. 8086在连续的两个总线周期中发出 I N T A ‾ \overline{INTA} INTA中断请求响应信号;
  2. 在第二个 I N T A ‾ \overline{INTA} INTA信号期间,中断源经数据总线向8086发出一字节的中断类型码,8086收到中断类型码后放入暂存器;
  3. 8086保护现场:标志寄存器入栈,清除IF、TF标志位,断点CS、IP值入栈;
  4. 8086将中断类型码乘以4后得到中断向量表的入口地址,从此地址开始的4个单元中读出中断服务程序的入口地址(CS:IP);
  5. 8086从此地址取指令执行,使控制转向中断处理过程。

25. 简述中断和子程序调用有什么不同?

  1. 形式上,计算机的中断过程类似子程序的调用。但是,子程序的执行是程序员事先安排好的,而中断服务程序的执行则是由随机的中断事件引起的,比如电源掉电、请求I/O数据传送、现场报警等。
  2. 另外,子程序的执行往往与主程序有关,而中断服务程序可能与被中断的程序毫无关系。还有,有可能出现多个中断事件同时请求的情况,此时,主机就需要进行判优,进而决定为哪一个请求服务。

26. 【简答题】 判断下面的5个说法是否正确,错误的请改正:

(1)若BUF是变量名,指令LEA BX,BUF和指令MOV BX,OFFSET BUF是等效的。
(2)8086向存储器的奇地址写一个字节的数据时,需要一个总线周期,在该总线周期内的第一个时钟周期中,A0为0。
(3)内存通过I/O接口与CPU进行数据交换。
(4)多个外设可以通过一条中断请求线,向CPU发中断请求。
(5)8259A的8个中断源的中断向量在中断向量表中不是连续存放的。

(1)√。
(2)×,A0=1。
(3)×, 内存通过系统总线(AB、DB、CB)与CPU进行数据交换。
(4)√。
(5)×,是连续存放的。

第六章 常用接口技术

1. 8253内部有哪些寄存器,各寄存器的作用是什么?

  1. 8253的内部寄存器有4个:
    1. 8位的控制寄存器:初始化时,将控制字写入该寄存器;
    2. 16位的计数器初值寄存器,初始化是写入该计数器的初始值,其最大初始值为0000H;
    3. 16位的减一计数器,计数器的初值由计数初值寄存器送入减法计数器,当计数输入端输入一个计数脉冲时,减法计数器内容减一;
    4. 16位的输出锁存器用来锁存计数脉冲时,减法计数器内容减一。

2. 对8253进行初始化编程要完成哪些任务?

  1. 对8253初始化编程主要包括两部分:
    1. 写入各计数器工作方式控制字和写计数器的初值。
    2. 8253在工作之前必须对它进行编程,以确定每个计数器的工作方式和对计数器赋计数初值。
    3. CPU通过写控制指令,将每个计数通道分别初始化,使之工作在某种工作方式下,然后,对相应的计数器输入计数值,在计数值送到计数寄存器后,需要经一个时钟周期才能把此计数值送到递减计数器。

3. 简述可编程计数器/定时器芯片8253计数通道的结构、功能和工作原理。

  1. 8253是一个可编程计数器/定时器,又称为可编程间隔定时器PIT。8253的内部有3个结构完全相同的计数通道,编号为通道0、通道1和通道2。每个计数通道由一个8位的控制字寄存器、一个16位的计数初值寄存器、一个16位的减1计数器和一个16位的输出锁存器所组成。每个通道都有6中工作方式,减1计数器可按二进制或十进制计数,最高计数频率为2.6MHz。
  2. 当某个计数通道作计数器使用时,应将要计数的次数预置到该通道计数器中,被计数的事件以脉冲方式输入到CLK端,在门控信号的作用下,每输入一个计数脉冲,计数器作减1操作,待到计数值减到0,OUT端输出一信号表示计数到。
  3. 当某一计数通道作定时器使用时,将频率一定的时钟脉冲输入到CLK端,根据要定时的时间计算出所要的计数初值(或称时间常数),并预置到该通道计数器中。在门控信号作用下,每输入一个计数脉冲,计数器做减1操作,OUT端输出某种波形表示定时时间。

4. 8253有几个计数通道?每个计数通道有哪些信号线?其作用是什么?

8253有三个计数通道,每个计数通道有3条信号线,分别是

  1. CLK,计数输入脉冲信号,用于输入定时基准脉冲或计数脉冲
  2. OUT,输出信号,用相应的电平指示计数的完成或输出脉冲的波型
  3. GATE,选通输入信号,用于启动或禁止计数器的操作,以使计数器和计数输入信号同步。

5. 可编程并行接口芯片8255A在方式1下工作时,固定使用C口的哪些引脚传送联络信号

  1. 8255在方式1用作输入接口时,C口的 P C 5 PC_5 PC5 P C 4 PC_4 PC4 P C 3 PC_3 PC3 3个引脚固定传送A口的联络信号,C口的 P C 2 PC_2 PC2 P C 1 PC_1 PC1 P C 0 PC_0 PC0 3个引脚固定传送B口的联络信号,剩余的 P C 7 PC_7 PC7 P C 6 PC_6 PC6可作为数据位使用。联络信号的分配如下:
    1. P C 4 ( B 口 P C 2 ) PC_4(B口PC_2) PC4(BPC2):传送输入设备提供的选通信号 S T B ‾ \overline{STB} STB
    2. P C 5 ( B 口 P C 1 ) PC_5(B口PC_1) PC5(BPC1):输入缓冲器满信号IBF,由8255A输出。
    3. P C 3 ( B 口 P C 0 ) PC_3(B口PC_0) PC3(BPC0):输出8255A产生的中断请求信号INTR。
  2. 8255工作在方式1用作输出接口时,C口的 P C 7 PC_7 PC7 P C 6 PC_6 PC6 P C 3 PC_3 PC3 3个引脚固定传送A口的联络信号。C口的 P C 2 PC_2 PC2 P C 1 PC_1 PC1 P C 0 PC_0 PC0 3个引脚固定传送B口的联络信号。剩下的 P C 5 PC_5 PC5, 和 P C 4 PC_4 PC4可作为数据位使用。联络信号的分配:
    1. P C 7 ( B 口 P C 1 ) PC_7(B口PC_1) PC7(BPC1):输出缓冲器满信号 O B F ‾ \overline{OBF} OBF,由8255A输出。
    2. P C 6 ( B 口 P C 2 ) PC_6(B口PC_2) PC6(BPC2):传送输出设备提供的响应信号 A C K ‾ \overline{ACK} ACK
    3. P C 3 ( B 口 P C 0 ) PC_3(B口PC_0) PC3(BPC0):输出8255A产生的中断请求信号INTR。

6. 什么是并行传送?什么是串行传送?什么是并行接口?什么是串行接口?

  1. 在数据传送过程中,一个字或一个字节的各位同时被传送出去,这种传送方式称为并行传送。在数据传送过程中,一个字或一个字节的数据一位一位地被传送出去,这种传送方式成为串行传送。
  2. I/O接口与I/O设备之间数据传送采用并行传送,则称为并行接口。
  3. I/O接口与I/O接口设备之间数据传送采用串行传送,则称为串行接口。

7. 8255A的功能是什么?它有哪几个控制字,各个控制字的作用是什么?

8255A是一种通用的可编程程序并行IO接口芯片。它有两个控制字,一个是方式选择控制字,它的作用是实现对8255A的各个端口工作方式的选择。另一个是对C口进行置位或复位控制字.它的作用是能实现对端口C的每一位进行控制。

8. 若8255A的四个端口地址分别是00C0H、00C2H、00C4H和00C6H,要求置0、置1的方法对PC6置1,对PC4置0。

MOV DX, 00C0H ; 端口地址
MOV AL,00001101 ; 对PC6置1
OUT DX,AL
MOV AL,00001000 ; 对PC4置0
OUT DX,AL

9. 8255A的方式0一般使用在什么场合?在方式0时,如果要使用查询方式进行输入输出,应该如何处理?

  1. 方式0的使用场合有两种,一种是同步传送,另一种是查询式传送。
  2. 在方式 0情况下,没有规定固定的应答信号,所以,将端口A和端口B作为数据端口,把端口C的4个数位(高4位或者是低 4位均可)规定为输出口,用来输出一些控制信号,而把端口C的另外4个数位规定为输入口,用来读入外设的状态,即利用端口C来配合端口 A 和端口 B 的输入/输出操作。使用查询方式进行输入输出时,可利用端口C的某一位作查询,只有当该位的状态就绪时,方可以将数据送到输入或输出端口去。

10. 8255A的方式1有什么特点?

8255A方式1是一种选通I/O方式,A口和B口仍作为两个独立的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出。而C口则要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可以工作在方式0,可通过编程设置为基本输入或输出。

11. 8255A的方法2有什么特点?

8255A是双向选通I/O方式,只有A口才有此方式。此时,端口C有5根线 P C 7 ∼ P C 3 PC_7\sim PC_3 PC7PC3 用作A口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。方式2:就是方式1的输入与输出方式的组合,各应答信号的功能也相同。而C口余下的 P C 0 ∼ P C 2 PC_0 \sim PC_2 PC0PC2 可以充当B口方式1的应答线,若B口不用或工作于方式0,则这三条线也可以工作于方式0。

12. 8259A中断控制器的功能是什么?

功能包括:

  1. 8259A中断控制器可以接收8个中断请求输入并将它们寄存;对8个请求输入进行优先级判定,裁决出最高优先级进行处理,它可以支持多种优先级处理方式;
  2. 8259A可以对中断请求输入进行屏蔽,阻止对其进行处理;
  3. 8259A支持多种中断结束方式;
  4. 8259A与微处理器连接方便,可向CPU提供中断请求信号和发送中断类型码;
  5. 8259A可以进行级连以便形成多于8级输入的中断控制系统。

13. 什么是接口?硬接口和软接口的含义各是什么?

  1. 接口是位于主机与外设之间的一些转换电路的总称,是CPU与外设交互通信的中间接点,一般由若干组存储单元组成,用于暂存数据,实现CPU与外设之间的通信,并有缓冲的功能,用来平衡CPU与外设的不匹配。
  2. 硬接口是用硬件来实现接口的功能,而软接口是通过程序设计来实现接口的功能的。

14. 比较串行通信与并行通信的优缺点。

  1. 从传送距离上看:并行通信适宜于近距离的数据传送,通常小于30米;而串行通信适宜于远距离的数据传送可以从几米到数千公里;
  2. 从传送速度上看:并行通信传送数据的速度比串行通信快得多;
  3. 从传送设备和费用上:在远距离传送中通信线路的费用占很大的比重,因而串行通信的费用由于传送线少而比并行通信的费用低得多。
  • 9
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
练习题 单项选择题 1.定点8位字长的字,采用2的补码形式表示时,一个字能表示的整数范围是( )。 A、–127—+127 B、–128—+128 C、–129—+128 D、–128—+127 2.8086CPU工作在最大方式时,产生 、 信的器件是( )。 A 8086 B 8255 C 8288 D 8251 3.8086CPU对存储器操作的总线周期的T1状态, AD0__AD15引脚上出现的信是( )。 A、地址信 B、数据信 C、控制信 D、状态信 4.立即寻址方式,操作数是在( )。 A 寄存器 B 指令 C 存储器 D 累加器 5.设某微机系统要管理64级中断,问组成该中断机构时需( )片8259。 A. 64 B. 9 C. 10 D. 8 6.若波特率因子为64,则异步传输对起始位的第二次检测是在第( )个时钟脉冲。 A、32 B、128 C、16 D、48 7.在CPU跟踪指令后继地址的寄存器是( ). A PC B MAR C IR D MDR 8.若8086CPU与外设进行数据交换使用自己数据线为D0-D15,则要将以奇地址起始的字传送到CPU,需要( )总线周期。 A、四个 B、一个 C、三个 D、两个 9.采用DMA方式传送数据时,每传送一个数据就要占用( )的时间。 A、一个指令周期 B、一个机器周期 C、一个存储周期 D、一个总线周期 10、动态RAM每个刷新周期刷新( )存储单元。 A、一个 B、一行 C、所有 D、两个 11、CPU运算器的主要功能是( ) (1) 算术运算 (2) 逻辑运算 (3) 函数运算 (4)算术运算和逻辑运算 12、8086/8088CPU的段寄存器用来存放( )。 (1) 存储段的物理地址 (2) 存储器的逻辑地址 (3) 存储器的段基址 (4) 存储器的起始地址 13、8086/8088 系统内存的地址空间为1M,而在进行I/O读写时,有效的地址线是( )。 (1) 高16位 (2) 低16位 (3) 高8位 (4)低8位 14、芯片8288在8086/8088CPU系统用作( )。 (1)总线锁存器 (2)总线驱动器 (3)总线控制器 (4)总线仲裁器 15、有一静态RAM芯片的地址线为A0—A10,数据线D0—D3,则该存储器芯片的存储容量为( )。 (1) 2K*4位 (2) 1KB (3) 2KB (4)1K*4位 16、在16位存储系统,为了( ),存储字最好存

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值