微机原理简答题

什么是中断响应?外设向 CPU 申请中断,但 CPU 不给予响应,其原因有哪些?

1
2
3
4
5
6
中断响应是当 CPU 接收到中断请求时,暂停当前程序的运行,保存断点地址,找到中断服务程序 的入口地址,
准备执行中断服务程序。
(1)CPU 处于关中断状态,IF=O;
(2)该中断请求已被屏蔽;
(3)该中断请求的时间太短,未能保持到指令周期结束;
(4)CPU 已释放总线(即已响应了 DMA 请求),而未收回总线控制权。

说明 8253 各个计数通道中三个引脚信号 CLK,OUT 和 GATE 的功能。

1
2
3
每个通道都有三根引脚线与外界联系。CLK 为外部输入计数脉冲。
引脚 GATE 为控制计数器工作的门控输入信号,根据工作方式的不同分为高电平触发计数和正脉 冲触发计数。
引脚 OUT 为定时时间到/计数结束输出信号,在不同的工作方式下,可以输出不同形式的波型

CPU 内部由哪两部分功能部件构成?简述各自功能及其配合关系。

1
2
3
4
由 EU 和 BIU 组成。
EU 是执行部件,主要的功能是执行指令。BIU 是总线接口部件,与片外存储器及 I/O 接口电路 传输数据。
EU 经过 BIU 进行片外数据的访问,BIU 为 EU 提供将要执行的指令。
EU 与 BIU 可分别独立工 作,当 EU 不需访问外部时,即不需要 BIU 提供服务时,BIU 可进行填充指令队列的操作

8086CPU 中有哪些寄存器?各有什么用途?

1
2
3
4
5
6
7
8
指令执行部件( EU)设有 8 个 16 位通用寄存器 AX、BX、CX、DX、SP、BP、SI、DI, 主要用途是保存数据和地
址(包括内存地址和 I/O 端口地址)。其中 AX、BX、CX、DX 主 要用于保存数据, BX可用于保存地址,DX还用
于保存 I/O 端口地址; BP、SI、DI 主要用 于保存地址; SP用于保存堆栈指针。
标志寄存器 FR 用于存放运算结果特征和控制 CPU操作。
BIU 中的段寄存器包括 CS、DS、ES、SS,主要用途是保存段地址,其中 CS 代码段寄存器 中存放程序代码段起始地
址的高 16 位,DS 数据段寄存器中存放数据段起始地址的高 16 位, SS堆栈段寄存器中存放堆栈段起始地址的高
16 位, ES扩展段寄存器中存放扩展数据段起 始地址的高 16 位。
指令指针寄存器 IP 始终存有相对于当前指令段起点偏移量的下一条指令, 即 IP 总是指向下 一条待执行的指令。

简述 8086 系统中物理地址的形成过程。 8086 系统中的物理地址最多有多少个?逻辑地址呢?

1
2
3
4
5
6
8086 系统中的物理地址是由 20 根地址总线形成的。 8086 系统采用分段并附以地址偏 移量办法形成 20 位的物理
地址。采用分段结构的存储器中,任何一个逻辑地址都由段基址 和偏移地址两部分构成,都是 16 位二进制数。通过
一个 20 位的地址加法器将这两个地址相加形成物理地址。具体做法是 16 位的段基址左移 4 位(相当于在段基址最
低位后添 4 个 “ 0”) ,然后与偏移地址相加获得物理地址。
由于 8086CPU 的地址线是 20 根,所以可寻址的存储空间为 1M 字节,即 8086 系统的物理 地址空间是 1MB。
逻辑地址由段基址和偏移地址两部分构成, 都是无符号的 16 位二进制数, 程序设计时采用逻辑地址,也是 1MB。

8086 系统中的存储器为什么要采用分段结构?有什么好处?

1
2
3
4
5
6
7
8086CPU 中的寄存器都是 16 位的, 16 位的地址只能访问 64KB 的内存。 086 系统中的 物理地址是由 20 根地
址总线形成的,要做到对 20 位地址空间进行访问,就需要两部分地 址,在 8086 系统中,就是由段基址和偏移地
址两部分构成。这两个地址都是 16 位的,将 这两个地址采用相加的方式组成 20 位地址去访问存储器。
在 8086 系统的地址形成中,当段地址确定后,该段的寻址范围就已经确定,其容量不大于 64KB。同时,通过修改
段寄存器内容,可达到逻辑段在整个 1MB 存储空间中浮动。各个逻 辑段之间可以紧密相连,可以中间有间隔,也可
以相互重叠(部分重叠,甚至完全重叠)。 采用段基址和偏移地址方式组成物理地址的优点是:满足对 8086 系统
的 1MB 存储空间的 访问,同时在大部分指令中只要提供 16 位的偏移地址即可。

在某系统中,已知当前( SS)=2360H ,( SP)= 0800H ,那么该堆栈段在存储器中的 物理地址范围是什么?若往堆栈中存入 20 个字节数据,那么 SP的内容为什么值?

1
2
( SS)×10H+( SP)= 23600H +0800H =23E00H ,堆栈段在存储器中的物理地址范 围是 23600H ~23E00H
若往堆栈中存入 20 个字节数据,那么 SP 的内容为 0800H -14H =07ECH。

8086 系统中为什么一定要有地址锁存器?需要锁存哪些信息?

1
2
3
4
5
由于 8086CPU 受芯片封装的限制,只有 40 个管脚,所以地址线和数据线只能采用复 用的方式共同使用某些管脚。
对存储器进行访问时, 在读取数据或写入数据时, 存储器芯片 要求在这个过程中地址信息必须稳定提供给存储器,
而由于 8086CPU 地址线和数据线是复 用的, 就不可能在同一时刻具有地址和数据的两种功能。 这就需要在 CPU
提供地址信息时, 将地址锁存起来, 以保证下一个时刻当这些复用的管脚起着数据线的功能时, 存储器有正确
的地址信息。要锁存的信息包括这些复用管脚的地址和 BHE 等信号。

8086 读/写总线周期各包括最少几个时钟周期?什么情况下需要插入等待周期 TW?插 入多少个 TW 取决于什么因素?

1
2
3
8086 读/写总线周期各包括最少四个时钟周期。 在系统中增加等待周期 TW 的一般情况 是:当 CPU 提供了地址后,
由于外设或存储器的读出或写入时间较慢,不能与 CPU 的速度 匹配,就需要插入等待周期 TW,等待 CPU能从外设
或存储器将数据正确地读出或写入为止。 显然,插入的等待周期 TW 的个数取决于外设或存储器的取出或写入时间。
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
本站总访问量

请我喝杯咖啡吧~

支付宝
微信