微型计算机技术及应用内部习题 联系客服

发布时间 : 星期日 文章微型计算机技术及应用内部习题更新完毕开始阅读

6.为8086CPU设计一个8KB容量的存储器系统, 要求存储器地址从02000H开始,采用6116(2K×8)芯片。试求: ①对各芯片地址分配。

②指出各芯片的片内选择地址线和芯片选择地址线。 ③采用74LS138,画出全译码法与8086CPU的连接图。 注. 第6可以仅仅指明与第5题解法的不同之处。

7.在8086系统中,AD0和BHE有什么用途? 例题

1.2011年全国统考试题

2.2009年全国统考试题

请求分页管理系统中,假设某进程的页表内容如下表所示。

页面大小为4KB,一次内存的访问时间是100ns,一次快表(TLB)的访问时间是10ns,处理一次缺页的平均时间为108ns(已含更新TLB和页表的时间),进程的驻留集大小固定为2,采用最近最少使用置换算法(LRU)和局部淘汰策略。假设①TLB初始为空;②地址转换时先访问TLB,若TLB未命中,再访问页表(忽略访问页表之后的TLB更新时间);③有效位为0表示页面不在内存,产生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚地址访问序列2362H、1565H、25A5H,请问:

(1)依次访问上述三个虚地址,各需多少时间?给出计算过程。

(2)基于上述访问序列,虚地址1565H、25A5H的物理地址是什么?请说明理由。

3.2010年全国统考试题

某计算机的主存地址空间大小为256MB,按字节编址。指令Cache和数据Cache分离,均有8个Cache行,每个Cache行大小为64B,数据Cache采用直接映射方式。现有两个功能相同的程序A和B,其伪代码如下所示: 程序A:

int a[256][256]; ……

int sum_array1(){ int i,j,sum=0; for(i=0;i<256;i++)

for(j=0;j<256;j++){ sum+=a[i][j]; }

return sum; }

程序B:

int a[256][256]; ……

int sum_array1(){ int i,j,sum=0; for(j=0;j<256;j++)

for(i=0;i<256;i++){ sum+=a[i][j]; }

return sum; }

假定int类型数据用32位补码表示,程序编译时i,j,sum均分配在寄存器中,数组a按行优先方式存放,其首地址为320(十进制数)。请回答下列问题,要求说明理由或给出计算过程。

(1)若不考虑用于Cache一致性维护和替换算法的控制位,则数据Cache的总容量为多少?

(2)数组元素a[0][31]和a[1][1]各自所在的主存块对应的Cache行号分别是多少(Cache行号从0开始)?

(3)程序A和B的数据访问命中率各是多少?哪个程序的执行时间更短? 作业

1.存储器的片选信号有哪几种构成方式?各有何优缺点?

2.存储器访问中的对准状态的含义是什么?程序设计中避免非对准状态有何好处?如何做到?

3.区域性定律(局部性原理)适用于哪一方面?它包含哪两类特征?

大部分软件对存储器的访问并不是任意的、随机的,而是有着明显的区域性。 1.时间区域性:存储体中某一个数据被存取后,可能很快又被存取。 2.空间区域性:存储体中某个数据被存取了,附近的数据也很快被存取。

第五章 作业

1.外设为什么需要通过接口与主机系统相连?存储器需要接口与总线相连么?为什么?

因为外设的功能多种多样,对于模拟量信息的外设必须要进行A/D和D/A转换,而对于串行信息的外设则必须转换为并行的信息,对于并行信息的外设还要选

通。而且外设的速度比CPU慢的多,必须增加缓冲功能。只有这样计算机才能使用这些外设。而所有这些信息转换和缓冲功能均由接口电路才能完成。 存储器不需要接口电路和总线相连。

因为存储器功能单一,且速度与CPU相当。因此可直接挂在CPU总线上。 2.CPU和外设之间传送的信息有哪几类? 数据信息、控制信息、状态信息。 3.8086/8088系统中,用哪种方法对I/O端口编址?地址如何形成?试举例说明。 在8086/8088系统中,用I/O端口单独寻址方式编址。

4.设一个接口的输入端口地址为0100H,状态端口地址为0104H,状态端口的第5位为1表示输入缓冲器有一个字节准备好,可输入。设计程序实现查询式输入。 DATA SEGMENT

BUFFER DB 20 DUP(?) ;接收数据缓冲区 DATA ENDS CODE SEGMENT

ASSUME DS:DATA,CS:CODE STAT: MOV AX,DATA ;对DS初始化 MOV DS,AX MOV DI,OFFSET BUFFER MOV DX,0104H

STATIN: IN AL,DX

TEST AL,20H ;测试第5位

JZ STATIN ;第5位为0继续测试 MOV DX,0100H

IN AL,DX ;输入数据 MOV [DI],AL CODE ENDS END STAT

第六章 例题

现要求用一个8255A作为终端机的接口。由端口A输出字符到终端机的显示器,端口B用于键盘输入字符,端口C为终端状态信息输入端口。当PC0=1表示键盘输入字符就绪,PC7=0表示显示缓冲器已空。要求用查询方法把从键盘输入的每个字符都送到终端机的显示缓冲器上,当输入的是回车符(ASCII码为0DH)时操作结束。假设该8255A芯片的端口地址是60H~66H(8086)(间隔为2划分输入,若题目改为60H~63H,间隔为1划分输入),试编写包括8255A的初始化程序在内的输入输出驱动程序。