文档库 最新最全的文档下载
当前位置:文档库 › 第二章作业

第二章作业

1. 8086/8088为什么要分为EU和BIU两部分?每个部分又由哪几部分组成?
答:因为EU和BIU这两个功能部件能相互独立地工作,并在大多数情况下,能使大部分的取指令和执行指令同时进行。这样EU执行的是BIU在前一时刻要执行的命令。所以,在大多数情况下,取指令时间“消失”了(隐含在上一指令的执行之中),大大减少等待取指令所需的时间,提高了微处理器的利用率和整个系统的执行速度。EU由通用寄存器、标志寄存器、运算器和EU控制系统组成;BIU由段寄存器、指令指针、地址形成逻辑、在哪个县控制逻辑和指令列队等组成。

2. 简述8086/8088指令队列作用及工作过程。
答:存放EU将要执行的指令,使CPU的取指令和执行指令能并行工作。

3. 在执行指令期间,EU能直接访问存储器吗?为什么?
答:不能,因为在指令执行期间,执行指令所需的操作数由BIU从相应的内存区域或I\O端口中取出,传送给执行单元EU。

4. 8086/8088CPU中,供使用汇编语言的程序员使用的寄存器有哪些?
答:有由AX、BX、CX、DX组成的通用寄存器组,由SP、BP、SI、DI组成的指示器和变址寄存器组,以及由CS、DS、SS、ES组成的段寄存器组,指令指示器和状态标志寄存器组。

5. 试述SP、IP、BP、SI和DI寄存器的主要功能。它们能否作为通用寄存器?
答:指示器用来指出位于当前堆栈段中数据所在的存储单元地址,变址寄存器用来存放位于当前数据段中的某个地址的偏移地址。

6. 为什么要设置段寄存器? 8086/8088有几个段寄存器?

答:段寄存器用于存放段地址 ,8086\8088有4个段寄存器(CS、SS、DS、ES)。

7. 8086/8088有几位状态位? 有几位控制位? 其含义各是什么?

答:8086\8088有6位状态标志位,3位控制标志位。状态标志位:CF进位标志;PF奇偶标志;AF半加标志;ZF零标志;SF符号标志,OF溢出标志。 控制标志位:IF 允许中断标志;DF方向标志;TF陷阱标志

8. 8086/8088CPU使用的存储器为什么要分段?怎样分段?

答:8086 CPU内部数据结构是16位的,即所有的寄存器都是16位的,而外部寻址空间为1MB,即需要20位地址线。 为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节,共分成64K个节。节的起始地址分别为00000H、00010H、00020H、?、FFFF0H,称为段基址。节的起始地址的后4位二进制数为全0,称为节的段地址

9. 什么是逻辑地址? 什么是物理地址? 它们之间有什么联系?

答:物理地址是20位,在1M字节储存空间里唯一识别每个字节单元的地址,范围从00000H到FFFFFH,CPU和储存器交换数据就是用这个物理地址。逻

辑地址是由段基址
和偏移地址两部分组成,段基址和偏移地址都是16位的无符号数。物理地址由逻辑地址变换而来,程序涉及的是逻辑地址而不是物理地址,它不需要知道要产生的代码在存储器的具体位置,这样可以简化储存资源的动态管理。物理地址=逻辑地址X16+段内偏移地址。

10. 什么是基地址?什么是偏移量?它们之间有何联系?

答:8086 CPU内部数据结构是16位的,而外部寻址空间为1MB。为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节(Paragraph),共分成64K个节。节的起始地址称为段基址。偏移地址是存储地址对段首的偏移量。偏移地址从0000H~FFFFH变化,对应64KB的空间。 它们之间的联系:物理地址=基地址×16+位移量。

11. 若CS为A000H,试说明现行代码段可寻址的存储空间的范围



12. 设现行数据段位于存储器B0000H到BFFFFH存储单元,DS段寄存器内容为多少?



13. 设双字节12345678H的起始地址是A001H,试说明这个双字在存储器中如何存放?

答:A001H放78H,A002H放56H,A003H放34H,A004H放12H。

14. 已知堆栈段寄存器SS=A000H,堆栈指示器SP=0100H,试将数据1234ABCDH推人堆栈,画出进栈示意图。最后栈顶SP=?

答: CD→AB→34→12 SP=00FCH。

15. 试求出下列运算后的各个状态标志,井说明进位标志和溢出标志的区别。

(1) 1278H十3469H (2) 54E3H一27A0H (3) 3881H十3597H (4) 01E3H一01E3H

解:(1)0001001001111000+0011010001101001=0100 0110 1110 0001

CF=0 PF=1 AF=1 ZF=0 SF=0 OF=0

16. 8086与8088 CPU主要区别有哪些?
答:1)8086CPU的数据外总线宽度为16位,而8088的数据外总线宽度为8位。
2)8086中的指令缓冲器为6个字节,而8088CPU的指令缓冲器为4个字节。
3)8086CPU选通存储器或I\O接口的信号是M/IO,低电平时选中I/O设备,高电平时选中存储器;而8088CPU选通存储器或I/O接口的信号是IO/M,低电平时选中存储器,高电平时选中I/O设备。

17. 8086/8088 CPU系统中为什么要采用地址锁存器8282/8283?
答:地址锁存器具有很强的驱动能力,可以直接驱动总线。

18. 8086/8088最小模式系统和最大模式系统各自主要特点是什么? 区别在哪里?
答:在最小模式下,构成的微机中只包括一个8086CPU,且系统总线由CPU的引线形成,微机所用的芯片少。在最大模式下,,构成的微机中除了有8086CPU之外,还可以接另外的CPU,以构成多未处理系统。而且,此时要借助于总线控制器8288来形成系统的控制总线。

19. 8088CPU工作在最小模式(单CPU)和最大模式(多CPU)主要特点是什么?有何区别?
答:在最小模式下,构成的微机中

只包括一个8086CPU,且系
统总线由CPU的引线形成,微机所用的芯片少。在最大模式下,,构成的微机中除了有8086CPU之外,还可以接另外的CPU,以构成多未处理系统。

20. 8088 CPU工作在最小模式时,
(1) 当CPU访问存储器时,要利用哪些信号?
(2) 当CPU访问I/O时,要利用哪些信号?
(3) 当HOLD有效并得到响应时,CPU的哪些信号置于高阻状态?

21. 8088CPU工作在最大模式时:
(1) S2,S1,S0可以表示CPU的哪些状态?
(2) CPU的RQ/GT信号的作用是什么?

22. 什么是时钟周期? 机器周期? 总线周期? 什么是指令周期?
答:时钟周期:加在cpu芯片引脚CLK上的时钟信号的周期
机器周期:完成一个基本操作的时间,由12个时钟周期组成
指令周期:cpu完整地执行一条指令所花的时间
总线周期:指cpu将一个字节写入一个内存单元或写入一个接口地址的时间,或者cup由内存或接口读出一个字节到cpu的时间

相关文档
相关文档 最新文档