微机原理期末复习总结

一、基本知识

1 、微机的三总线是什么?

答:它们是地址总线、数据总线、控制总线。

2 、8086 CPU启动时对RESET要求?8086/8088 CPU复位时有何操作?

答:复位信号维高电平有效。 8086/8088 要求复位信号至少维持 4 个时钟周期的高电平才有效。复位信号来到后, CPU 便结束当前操作,并对处理器标志寄存器, IP,DS,SS,ES 及指令队列清零,而将 cs 设置为 FFFFH, 当复位信号变成地电平时, CPU 从 FFFF0H 开始执行程序

3 、中断向量是是什么?堆栈指针的作用是是什么?什么是堆栈?

答:中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。堆栈指针的作用是指示栈顶指针的地址,堆栈指以先进后出方式工作的一块存储区域,用于保存断点地址、 PSW 等重要信息。

4 、累加器暂时的是什么?ALU 能完成什么运算?

答:累加器的同容是 ALU 每次运行结果的暂存储器。在 CPU 中起着存放中间结果的作用。 ALU 称为算术逻辑部件,它能完成算术运算的加减法及逻辑运算的“与”、“或”、“比较”等运算功能。

5 、8086 CPU EU、BIU的功能是什么?

答:EU(执行部件)的功能是负责指令的执行,将指令译码并利用内部的寄存器和ALU对数据进行所需的处理BIU(总线接口部件)的功能是负责与存储器、I/O端口传送数据。

6 、CPU响应可屏蔽中断的条件?

答: CPU 承认 INTR 中断请求,必须满足以下 4 个条件:

1 )一条指令执行结束。 CPU 在一条指令执行的最后一个时钟周期对请求进行检测,当满足我们要叙述的 4 个条件时,本指令结束,即可响应。

2 ) CPU 处于开中断状态。只有在 CPU 的 IF=1 ,即处于开中断时, CPU 才有可能响应可屏蔽中断请求。

3 )没有发生复位( RESET ),保持( HOLD )和非屏蔽中断请求( NMI )。在复位或保持时, CPU 不工作,不可能响应中断请求;而NMI 的优先级比 INTR 高, CPU 响应 NMI 而不响应 INTR 。

4 )开中断指令( STI )、中断返回指令( IRET )执行完,还需要执行一条指令才能响应 INTR 请求。另外,一些前缀指令,如 LOCK、 REP 等,将它们后面的指令看作一个总体,直到这种指令执行完,方可响应 INTR 请求。

7 、8086 CPU的地址加法器的作用是什么?

答: 8086 可用 20 位地址寻址 1M 字节的内存空间,但 8086 内部所有的寄存器都是 16

位的,所以需要由一个附加的机构来根据 16 位寄存器提供的信息计算出 20 位的物理地址,这个机构就是 20 位的地址加法器。

8 、如何选择8253、 8255A 控制字?

答:将地址总线中的A1、A0都置1

9 、DAC精度是什么?

答:分辨率指最小输出电压(对应的输入数字量只有最低有效位为“ 1 ”)与最大输出电压

(对应的输入数字量所有有效位全为“ 1 ”)之比。如 N 位 D/A 转换器,其分辨率为 1/ ( 2--N — 1 )。在实际使用中,表示分辨率大小的方法也用输入数字量的位数来表示。

10 、DAC0830双缓冲方式是什么?

答:先分别使这些 DAC0832 的输入寄存器接收数据,再控制这些 DAC0832 同时传送数据到 DAC 寄存器以实现多个 D/A 转换同步输出。

11 、8086(88) 内部中断源有哪些?

答:内部(除法除以 0 、单步、断点、溢出、指令中断)

12 、读写存贮器(RAM)按其制造工艺又可以分为哪些?

答:读写存贮器 (RAM) 记忆元件有些使用磁芯,有些使用双极型晶体管或金属氧化物半导体场效应晶体管。

13 、在8086(88)CPU中,中断优先级如何?

答: 8086 各中断源的优先级从高到低依次是:除法除以 0 、溢出中断、断点中断、指令中断、非屏蔽中断、可屏蔽中断、单步中断

14 、组合类型的功能是什么?

在堆栈段段定义伪指令的组合类型选择STACK参数,DOS的装入程序在装入执行时,将把CS初始化为正确的代码段地址,把SS初始化为正确的堆栈段地址,因此在源程序中如何它们进行初始化?

15 、中断源是什么?

答:所谓中断源即指引起中断的原因或中断请求的来源。

16 、波特率是什么?

答:波特率指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示,其单位为波特 (Baud) 。

17 、类型号为N中断向量存放在逻辑地址为多少?如何存放逻辑地址?

答:段地址=N*4+2 偏移地址=N*4 所以类型号为N中断向量存放在逻辑地址为段地址:偏移地址。每个中断类型的逻辑地址为四个字节,高两个字节存放CS段地址,低两个字节存放IP偏移地址。

18 、8086 CPU从奇/偶地址单元开始读写的一个字,需要用多少个总线周期? 19 .8088/8086 CPU 响应中断后,TF和IF标志自动置为多少?

答: IF 为 1 , TF 为 0

20 .累加器是什么?( 前4)

21 、控制部件主要包括什么?

答:控制部件主要包括:环形计数器、指令译码器,控制矩阵,其他控制电路 22 、8086 CPU 可以进行寄存器间接寻址的寄存器是哪些?

答:BX、BP、SI、DI

23 、8088CPU 响应INTR请求的条件是什么?( 前6)

24 、在微型计算机系统中,主要的输入输出方法有哪些?

答:在微型计算机系统中,主要的输入输出方法有4种:程序控制方式,中断控制方式,直接存储器存取方式,输入/输出处理机方法。

25 、定位类型的功能是什么?有那些定位类型?当定位类型缺省时,段起始地址便定位为什么?

26 、组合类型的功能是什么?有哪些组合类型?如果在SEGMENT伪指令后面没有指明组合类型, 则汇编程序ASM认为这个段是连接?

27 、中断处理过程应包括哪些步骤?

答:中断方式的实现一般需要经历下述过程:中断请求→中断响应→断点保护→中断源识别→中断服务→断点恢复→中断返回

28 、 CPU何时检测INTA中断请求输入端?

答:CPU在一条指令执行的最后一个时钟周期对请求进行检测

29 、8086/8088中断源的优先级顺序是什么?( 前13)

30 、CPU响应中断时,如何计算和转入中断类型号为N的中断服务程序?

答:当CPU响应中断,调用中断类型号为N的中断程序时,根据中断服务程序入口地址表在内存中的位置,可将中断类型号N乘以4求出中断向量的首字节地址4N。然后将中断矢量表中的4N和4N+1二个单元内容装入指令指针寄存器IP,将4N+2和4N+3单元的内容装入CS代码段寄存器,进而可求出中断服务程序入口地址首字节地址为:PA=CS×16+IP。

31 、 8086/8088 CPU什么时候对READY信号进行采样?

答:CPU在每个总线周期的T3状态开始对READY信号进行采样

32 、在寄存器间接寻址和基址加变址的寻址方式中,只要用上BP寄存器,那么默认的段寄存器就是哪个?

答:默认的段寄存器是SS。

33 、IMUL、MUL功能与操作?

答: MUL,IMUL

功能: 乘法指令

语法 : MUL OP IMUL OP

格式: MUL r/m IMUL r/m

34 、REPNZ/ REPZ /REP/JCXZ前缀重复后面指令的操作的条件是什么? 答:(1)CX不等于0,表示重复次数还未满。

(2)ZF=1,表示目的操作数等于源操作数或等于扫描

35 、暂停指令HLT/WAIT,常用来做什么?

答:WAIT指令通常用在CPU执行完ESC指令后,用来等待外部事件,即等待TEST线上的有效信号。

WAIT 指令通常用在CPU执行完ESC指令后,用来等待外部事件,即等待TEST线上的有效信号。

HIL 指令,使时钟脉冲停发,则计算机停止运行,但电源未切断,所以显示器中仍继续显示计算的结果

36 、8O86/8088 CPUALE引脚的下降沿,可实现对什么的锁存

答:8O86/8088 CPU ALE引脚的下降沿,可实现对地址的锁存

37 、IP指令指针寄存器存放的是什么?

答:IP为指令指针寄存器,它用来存放将要执行的下一条指令地址的偏移量,它与段寄存器CS联合形成代码段中指令的物理地址。

38 、8086(88)的NMI何时响应中断?

答:每当NMI端进入一个正沿触发信号时,CPU就会在结束当前指令后,进入对应于中断类型号为2的非屏蔽中断处理程序。

39 、定点8/16位2的补码形式表示整数范围为什么?

40DMA 是什么? ( 后46)

41 、三态输出电路的意义是什么?

答:三态输出电路能使电路与总线脱离,使总线结构具有公共通路的作用。 42 、8086CPU共有多少地址线、数据线?,它的寻址空间为多少字节? 8086CPU 地址线宽度为 20 条,数据线为 16 位,可寻址范围为 1MB

43 、8086CPU的地址加法器的作用是什么?( 前7)

44 、中断向量是什么?

答:中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。 堆栈指针

的作用是指示栈顶指针的地址,堆栈指以先进后出方式工作的一块存储区域,用于保存断点地址、 PSW 等重要信息。

45 、 D/A 转换器的分辨率是什么?( 前9)

46 、 DMA 什么?有什么作用?

答: DMA 是直接存储器传输方式。 DMA 在计算机的存储器与外设之间开辟直接的传输

通道,直接进行数据传送,数据传输不再靠执行 I/O 指令,数据也不经过 CPU 内的任何寄存器,这种方式的时间利用率最高,适合于一次传送大量的数据,但实现较复杂。 47 、定点16位字长的字,采用2的补码形式表示时,一个字所能表示的整数范围为多少?

48 O 端口编址有哪两种方式,8086CPU采用的是什么方式?

答: I/O 端口的编址方式分为统一编址和独立编址。 8086CPU 采用的是独立编址方式。 49 栈指针的作用是指示栈顶指针的地址,保存的是什么?

答:用于保存断点地址、 PSW 等重要信息。

50 A /D 转换器的分辨率是什么?

答:表示转换器对微小输入量变化的敏感程度,通常用转换器输出数字量的位数来表示。 518088/8086 微机系统中把0段的何区域设置为1个中断向量表?

答: 8088/8086 微机系统中把 O 段的 0000~03FFH 区域设置为一个中断向量表。 52 .8086/8088CPU要求到RESET引脚上的复位正脉冲信号,其宽度至少要有几个时钟周期才能有效复位,如果是上电复位则要求脉冲宽度不少于多少微秒? 答: RESET 信号的有效形式为高电平,且必须持续 4 个时钟周期以上,系统复位后的启动地址为 FFFF0H 。如果是上电复位则要求脉冲宽度不少于 50 微秒 .

53 .8086/8088CPU复位后,从何单元开始读取指令字节?

答: FFFF0H

54 .CPU响应两个硬件INTR和NMI,相同的必要条件是什么?

答:当外设经中断控制器向 CPU 提出 INTR 中断请求时,在满足响应 INTR 的 4 个条件之下, CPU 对 INTR 作出响应。

CPU 对 INTR 响应首先是由 送出两个负脉冲,第一个负脉冲通知中断控制器 CPU 对它的请求已开始响应。当中断控制器收到第二个负脉冲时,中断控制器将提出请求的外设的中断向量码送到数据总线上。 CPU 从数据总线上读取中断向量码。

接下来, CPU 将标志寄存器的内容压入堆栈保护起来。而后使 IF=0 、 TF=0 。接着把 CS 和 IP 的内容压入堆栈保护起来。

CPU 下面的工作就是将前面读得的中断向量码× 4 作为中断向量表的地址。以此地址开始的顺序 4 个地址中,前面两个地址的内容送 IP,后两个地址的内容送 CS 。因为,在允许进行中断之前,这 4 个地址中已存放好 INTR 中断服务程序的入口地址(中断向量)。因此,当将这 4 个地址的内容装入 IP 和 CS 之后,从下一总线周期开始, CPU 就转向 INTR 中断服务程序的起始地址开始执行服务程序。

以上从 INTR 提出请求,到 CPU 转向 INTR 中断服务程序入口的整个过程就是 CPU 对 INTR 的响应过程。值得注意的是该过程完全由CPU 硬件自动实现。

当外设产生 NMI 有效的中断请求信号时, CPU 在执行一条指令结束且没有比 NMI 更高优先级中断请求时,就会对 NMI 请求作出响应。

CPU 响应 NMI 中断请求,首先是由 CPU 内部硬件产生 NMI 中断的中断向量码 02H 。接下来是 CPU 将标志寄存器压入堆栈,使 IF=0 、TF=0 ,接着将 CS 和 IP 压入堆栈。

此后, CPU 将 NMI 的中断向量码 02H × 4=08H ,实际上是 00008H ,作为中断向量表的地址。由此开始的 4 个地址已事先放好了 NMI中断服务程序的入口地址(或称中断向量)。这时, CPU 从 00008H 和 00009H 两个地址中取出一个字放入 IP ,接着从 0000AH 和 0000BH 取出一个字放入 CS 。此时 CS 和 IP 中放着的就是 NMI 中断服务程序的入口地址。从下一个总线周期开始, CPU 就转到了 NMI 中断服务程序。

以上就是 CPU 对 NMI 的响应过程,所有这些操作均由 CPU 硬件自行完成。

55 .8O86/8088CPU的基本总线周期分为几个时钟周期?

答: 8086/8088CPU 的基本总线周期分为 4 个时钟周期。常将 4 个时周期分别称为 4 个状态,即 T1 、 T2 、 T3 、 T4 状态, T1 发地址, T2、 T3 、 T4 为数据的读 / 写。 56 、CPU响应可屏蔽中断时会自动将TF、IF怎样?

答: CPU 响应可屏蔽中断时,把标志寄存器的中断允许标志 IF 和单步标志 TF 清零。将 IF 清零是为了能够在中断响应过程中暂时屏蔽外部其他中断,以免还没有完成对当前中断的响应过程而又被另一个中断请求所打断,清除 TF 是为了避免 CPU 以单步方式执行中断处理子程序。

57 .何为堆栈,它有什么用处?堆栈指针的作用是什么?

答:堆栈指以先进后出方式工作的一块存储区域,用于保存断点地址、 PSW 等重要信息。堆栈指针的作用是指示栈顶指针的地址

58 .什么叫中断优先权?8086/8088中各类中断的优先级如何划分的?

答:在有多个中断源的情况下,根据轻重缓急,为每一个中断类型设置一个响应级别,称之为中断优先权。 8086 各中断源的优先级从高到低依次是:除法除以 0 、溢出中断、断点中断、指令中断、非屏蔽中断、可屏蔽中断、单步中断

59 . 程序查询输入输出的基本思想是什么?中断控制方式输入输出的基本思想是什么?

答:程序查询输入输出的基本思想是CPU通过执行程序不断读取并测试外部设备状态,如果输入外部设备处于已准备好状态或输出外部设备为空闲状态时,则CPU执行传送信息指令。

中断控制方式输入输出的基本思想是:当外部设备需要与CPU进行数据交换时,由接口部件的CPU发出一个中断请求信号,CPU响应这一中断请求,便可在中断服务程序中完成一个字节或一个字的信息交换。一般用来传送低速外部设备与CPU之间的信息交换。

60.8086CP 在每个总线周期的什么状态开始对READY信号进行采样?( 前31) 61 、8O86/8088 CPUALE引脚的什么沿可实现对地址的锁存?( 前36)

二、问答题

1 试说明I/O端口的一般编址方法和其优缺点?

答:存储器对应的输入、输出寻址方式

这种方式又称为存储器统一编址寻址方式或存储器映象寻址方式。

方法:把外设的一个端口与存储器的一个单元作同等对待,每一个 I/O 端口都有一个确定的端口地址, CPU 与 I/O 端口之间的信息交换,与存储单元的读写过程一样,内存单元与 I/O 端口的不同,只在于它们具有不同的的地址。

优点:

① CPU 对 I/O 端口的读 / 写操作可以使用全部存储器的读 / 写操作指令,也可以用对存储器的不同寻址方式来对 I/O 端口中的信息,直接进行算术、逻辑运算及循环、移位等操作。

②内存与外设地址的分配,可以用统一的分布图。

③不需要专门的输入、输出操作指令。

缺点:

内存与 I/O 端口统一编址时,在地址总线根数一定的情况下,使系统中实际可以直 接寻址的内存单元数减少。

②一般情况下,系统中 I/O 端口数远小于内存单元数,所以在用直接寻址方式来寻址这些端口时,要表示一个端口地址,必须用与表示内存单元地址相同的字节数,使得指令代码较长,相应地读 / 写执行时间也较长,这对提高系统的运行速度是不利的。

5 、何谓中断优先权和中断嵌套?

答:( 1 )中断优先级是在同时出现了几个中断请求的情况下, CPU 对中断响应的顺序,优先级高的中断先得到响应。

( 2 )中断嵌套是指令在多重中断方式下, CPU 在处理一个中断请求时,又被另一个中断请求所打断,进入新的中断处理过程的现象。

6 、试说明对于不同级别的中断请求一般的处理原则.

答:对于可屏蔽中断的嵌套处理原则是允许优先级高的中断打断优先级低的中断 , 而

不允许优先级低的中断打断优先级高的中断,也不允许同级中断相互打断

非屏蔽中断可以打断可屏蔽中断

7 、分析图4-6所示的连接图,计算此时的8k字节芯片6264所占的内存地址空间。

:图中D0-D7是数据线占用了8个字节,而A0---A12是地址线占用其所长2个字节内存地址空间为,再就是A19,A18,A16,A15,A13控制的是6264的使能端 11 、8086 CPU在最小方式下INTA引脚是什么功能?它输出的两个连续的负脉冲信号有什么用?

答:(1)在最小工作模式下,INTA引脚作为中断响应信号的输出端,用来对外设的中断请求作出响应。

(2)、第1个负脉冲通知外部设备的接口,它发出的中断请求已经得到允许;外设接口收到第2个负脉冲后,往数据总线上放中断类型码,从而CPU便得到了有关此中断请求的详尽信息。

12 .8086 CPU总线接口单元BIU的具体任务是什么?堆栈是什么?

答: BIU的具体任务是负责于存储器、I/O端口传送数据,即BIU管理在存储器中存取程序和数据的实际处理过程。

在计算机内,需要一块具有“先进后出”特性的存储区,用于存放子程序调用时程序计数器PC的当前值,以及需要保存的CPU内各寄存器的值(现场),以便子程序或中断服务程序执行结束后能正确返回主程序。这一存储区称为堆栈。

13 、何为中断?中断矢量是什么?中断方式的实现一般需要经历哪些过程? 答:所谓中断是指某事件的发生引起CPU暂停当前程序的运行,转入对所发生事

件的处理,处理结束又回到原程序被打断处接着执行这样一个过程。

中断矢量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。 中断方式的实现一般需要经历下述过程:

中断请求 — →中断响应 — →断点保护 — →中断源识别 — →中断服务 — →断点恢复 — →中断返回

14. 程序查询输入输出的基本思想是什么?中断控制方式输入输出的基本思想是什么?

答:查询方式包括查询输出方式和查询输入方式。所谓查询输入方式,是指CPU读外设数据前,先查询外设是否处于准备就绪状态;查询输出方式是指CPU向外设输出数据之前,先查询外设是否处于空闲状态。

采用中断传输方式时CPU向外设输出数据时将启动命令写入外设控制口后,就继续执行随后的指令,而不是被动等待;当外设处于空闲状态,可以接收数据时,由外设向CPU发出允许数据传送的请求信号。在这种方式中,CPU发出控制命令后,依然执行启动命令后的指令序列,而不是通过检测外设的状态来确定外设是否处于空闲状态,不仅CPU利用率搞,而且能同时与多个外设进行数据交换。

15 .计算机I/O端口编址一般分哪两种方法?各有什么优缺点?在80x86微机中,I/O端口编址采用哪一种?

答: I/0 端口的编址方式有两种,分别称为存储器映象寻址方式 (统一编址) 和 独立编址( 专用的I/O端口编址) 。

独立编址方式的优点是:I/O端口的地址码较短(一般比同系统中存储单元的地址码短),译码电路较简单,存储器同I/O端口的操作指令不同,程序比较清晰;存储器和I/O端口的控制结构相互独立,可以分别设计。它的缺点是:需要有专用的I/O指令,而这些I/O指令的功能一般不如存储器讯问指令丰富,所以程序设计的灵活性较差。

存储器映像编址方式的优点是:任何对存储器数据进行操作的指令都可用于I/O端口的数据操作,不需要专用的I/O指令,从而使系统编程比较灵活;I/O端口的地址空间是内存空间的一部分,这样,I/O端口的地址空间可大可小,从而使外设的数目几乎可以不受限制。它的缺点是:I/O端口占用了内存空间的一部分,虽然内存空间必然减少,影响了系统内存的容量;同时访问I/O端口同访问内存一样,由于访问内存时的地址长,指令的机器码也长,执行时间显然增加。

在80x86微机中,I/O端口编址采用独立 编址。

三.程序设计

1 、编写汇编简易程序段,若自BLOCK开始的内存缓冲区中,有100个带符号的数(字为单位),希望找到其中最大的一个值,并将它放到MAX单元中。(15分) MOV CX,99

MOV BX,0 ;0-99个带字符的数

MOV MAX,BLOCK[BX]

LOOP1:

MOV AX,BLOCK[BX] ;BLOCK[BX]放入到AX里

CMP AX,BLOCK[BX+2] ;两个数进行比较

JGE NEXT ;跳到NEXT

MOV MAX,BLOCK[BX+2] ;如果是的就放到MAX里

NEXT:

ADD BX,2 ;每次加2

LOOP LOOP1

2 、编写汇编完全程序,从BUF单元开始为一个ASCII码字符串, 找出其中的最大数送屏幕显示。

DATA SEGMENT

BUF DB 'STRING',0 ;定义字符串

MAX DB ?

DATA ENDS

CODE SEGMENT

ASSUMECS:CODE,DS:DATA

MOV AX,DATA

MOV DS,AX

MOV BX,0

MOV MAX,BUF[BX] ;从BUF开始

LOOP1:

MOV AX,BUF[BX+1] ;每次加1

CMP AX,0 ;比较

JZ DONE

JMP AX,MAX

JBE NEXT

MOV MAX,AX

NEXT:

INC BX

JMP LOOP1

DONE:

MOV DX,MAX 输出最大数

MOV AH,2

INT 21 H

MOV AX,4C00H

INT 21H

CODE ENDS

3 、编写汇编完全程序,用查表的方法将一位十六进制数转换成与它相应的ASCII码。

既然指定用查表的方法,那么首先要建立一个表TABLE。我们在表中按照十六进制数从小到大的顺序放入他们对应的ASCII码值

DATA SEGMENT

TABLE DB ‘0123456789ABCDEF’

TEMP 6H 这个变量是随便的一位十六进制数

ASCII DB ? 保存转换后的ASCII码

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE ,DS:DATA

MOV AX,DATA

MOV DS,AX

LEA BX,TABLE

MOV AX,{BX+TEMP]

MOV ASCII,AX

MOV AX,4C00H

INT 21H

CODE ENDS

4 、若选择0#计数器,工作在方式3,计数初值为2354H,十进制计数方式;或选择1#计数器,工作在方式2,计数初值为18H,二进制计数方式。并设8253端口地址为40-43H。试完成 0#和1#计数器初始化编程。

STT:MOV DX,43H; 定义通道0工作方式3,十进制计数方式

MOV AL,37H

OUT DX,AL

MOV DX,40H ; 给通道0送计数值

MOV AX,2354H

OUT DX,AL

MOV AL,AH

OUT DX,AL

MOV DX,43H ;定义通道1工作方式2,二进制计数方式

MOV AL,54H

OUT DX,AL

MOV DX,41H ; 给通道1送计数值

MOV AL,18H

OUT DX,AL

5 、 8253与8088总线的接口电路如下图,使用8253计数器2产生频率为40 kHz的方波,设8253的端口地址为0040H????????????确定。试编写程序对 8255A 进行初始化。

8255_MODE EQU 0203H ;8255 控制寄存器选通地址

MOV DX,8255_MODE

MOV AL,0B4H ; 方式1,端口A输入,端口B输出

OUT DX,AL ; 方式控制字送到寄存器

MOV AL,04H ; 置位/复位控制字PC2复位,禁止端口B中断 OUT DX,AL ; 复位控制字送寄存器

相关推荐