Q: 微处理器、微型计算机、微型计算机系统之间的区别于联系。

A: 微处理器是集成化的CPU(带控制功能和运算器),微型计算机是由CPU、内存、IO接口和总线构成的裸机。微型计算机系统以微机为主体,配备相应外设和软件及电源等组成的完整计算机系统。


Q: 微机采用总线结构有什么优点?

A: 采用总线结构使得各个部件的联系变成了各个部件与总线的单一关系,一个部件只要符合总线标准,就能连接到系统中,使系统功能得到扩展。总线结构提高系统的工作效率和处理速度,简化系统结构设计,减轻软件设计与调试难度。


Q: 指令周期、总线周期、时钟周期、等待周期、空闲周期与关系

  • 指令周期:完成一条指令所需要的时间。不同指令有不同的指令周期
  • 总线周期:向内存或外设进行一次数据传输所需要的时间。一条指令周期由多条总线周期组成
  • 时钟周期:状态周期,CPU处理动作的基本时间单位,由主频来确定。一般总线周期由4个状态周期(T1, T2, T3, T4)组成。
  • 等待周期:在总线周期的T3与T4之间CPU根据Ready信号来决定是否插入Tw,以及几个Tw
  • 空闲周期:两个总线周期之间的时间间隔(总线处在空闲状态)

Q: 8086的引脚信号BHE’和A0如何表示数据在总线上的格式?

BHE’ A0 数据格式
0 0 从偶地址开始传输D0-D15数据
1 0 从偶地址开始传输D0-D7数据
0 1 从奇地址开始传输D8-D15数据

Q: 8086在最大和最小方式下,引脚信号有什么不同?分别给出配置。
最大和最小方式,区别在于P24~P31的定义不同。

MN/MX’ 工作方式 引脚信号 基本配置
高电平 最小方式 INTA’, ALE, DEN’, DT/R’, M/IO’, WR’, HLDA, HOLD 8282, 8284, 8286
低电平 最大方式 QS1, QS0, S0’, S1’, S2’ , LOCK’, RQ’/GT1’, RQ’/GT0 8282, 8284, 8286, 8288

Q: 从芯片引脚看,8086和8088有什么区别?

引脚 8086 8088
P34 BHE’/S7 SS0’
P28 M/IO’ M’/IO
P8~P2, P39 AD8~AD15 A8~A15

Q: 8086如何解决地址线和数据线复用问题?ALE何时处于有效状态?

8086的16位地址线和16位数据线合并,采用分时复用总线AD0~AD15。

一个总线总线周期里,T1状态做地址线传送地址信息;T2~T4状态做数据线进行输入输出数据。

ALE在T1状态有效,以便及时将AD0~AD15,A16/S3~A19/S6总线上的地址信息锁存到8282中。


Q: 空闲状态的含义

空闲状态是两个总线周期之间处于空闲的时间间隔,无数据传输操作


Q: 简述CPU对INTR中断响应条件和中断响应过程。

响应条件:

  • 一条指令执行完
  • 当前无NMI非屏蔽中断请求和HOLD总线请求
  • INTR信号有效
  • 中断允许标志位IF=1

响应过程:

  1. CPU发出INTA’信号
  2. CPU在数据总线上读取中断类型码
  3. 将标志寄存器入栈
  4. 清除IF, TF位(关中断)
  5. 将CS,IP寄存器入栈
  6. 将中断向量表中的中断向量放入CS, IP寄存器

Q: 简述CPU对NMI中断响应条件和中断响应过程。

响应条件:

  • 一条指令执行完
  • 当前无HOLD种现请求
  • NMI信号有效

响应过程:

  1. 标志寄存器入栈
  2. 清除IF, TF位
  3. 将CS, IP入栈
  4. 执行2号中断,将中断向量表中的中断向量放入CS, IP寄存器

8086/8088 CPU在中断服务程序中是如何返回的。

通过执行IRET返回:

  1. (SS:SP)->IP
  2. SP+=2, (SS:SP)->CS
  3. SP+=2, (SS:SP)->FR

Q: IO接口,IO端口,端口地址,IO端口独立编址

IO接口就是把外设与微型计算机连接起来实现数据传输的控制电路

IO端口就是IO接口中可供CPU读写的寄存器。

端口地址就是为每个端口设置的编号。

IO端口的独立编址就是端口的地址空间和内存的地址空间分开,使用专用的指令(IN/OUT)来访问。


Q: 中断、中断源、中断向量、中断向量表

中断是CPU与外设数据交互的一种方式罢了。当CPU有紧急事件需要处理,暂停当前程序,转去处理该事件,中断处理完毕后回到原程序继续执行。

中断源是引起中断的原因或请求中断的来源。

中断向量是中断处理程序的入口地址。

中断向量表用来存储中断服务程序入口地址的表格。


8255A(可编程并行接口芯片)的端口寻址

8255A有三个数据端口A, B, C,均可对它们进行读写操作,还有一个只能写的控制端口,用于存放命令字。在程序中用IO指令对它们进行访问,需要弄清端口与端口地址之间的关系。8255A有A1, A0两条输入地址引脚,用以区分不同端口。

在8086中,8255A的4个端口地址是偶地址连续的;在8088中,8255A的4个端口地址是连续的。

因为在8086中,系统地址总线的A2, A1分别与A1, A0连接,所以地址总线低位A0总是0;而在8088中,系统地址总线的A1, A0分别与A1, A0连接。


Q: 在8253定时器/计数器中,与外部联系的三个引脚CLK, GATE, OUT分别起到什么作用?

  • CLK作为计数输入脉冲,当CLK脉冲来时,CE进行-1操作。当通道用作计数器时,CLK一般输入为非周期计数脉冲;当通道用作定时器时,CLK输入的是周期性脉冲。
  • GATE作为输入控制信号,GATE=1允许对CLK计数,GATE=0禁止对CLK计数;对于方式1和方式5,GATE上升沿触发启动计数。
  • OUT在计数工作下,作为计数满输出信号;在定时工作下,OUT在不同方式下在规定时间输出相应的波形。

Q: 简述8253的6种工作方式特点

工作方式 OUT初始值 计数器启动方式 GATE门控信号 OUT输出波形
0 0 软件启动,单次计数 高电平 当计数结束时,输出高电平
1 1 硬件启动,单次计数 上升沿 输出一个宽度为n个CLK脉冲周期的负脉冲
2 1 软件/硬件启动,重复计数 高电平/上升沿 每当CE为1时,输出一个宽度为一个CLK脉冲周期的负脉冲
3 1 软件/硬件启动,重复计数 高电平/上升沿 输出周期性对称方波或近似对称方波
4 1 软件启动,单次计数 高电平 当计数结束时,OUT输出一个宽度为一个CLK的负脉冲
5 1 硬件启动,单次计数 上升沿 当计数结束时,OUT输出一个宽度为一个CLK的负脉冲

Q: 8253初始化编程包括哪些内容?顺序上有什么要求?

先设置方式控制字,后设置计数初始值。两者不能颠倒。写入方式控制字和计数初始值的端口地址也不一样,若初始值超过1个字节,先写低字节,后写高字节


Q: 异步串行方式特点、和字符的关系

异步通信,是指传输数据以字符为单位,字符之间完全异步,字符内位与位传送基本上是同步的。有以下特点:

  • 以字符为单位传输
  • 相邻字符之间的时间间隔任意
  • 接收时钟和发送时钟频率相近即可

Q: 8251A(可编程串行通信接口)初始化