微机原理期末复习总结.docx
《微机原理期末复习总结.docx》由会员分享,可在线阅读,更多相关《微机原理期末复习总结.docx(13页珍藏版)》请在冰豆网上搜索。
微机原理期末复习总结
一、根本知识
1、微机的三总线是什么?
答:
它们是地址总线、数据总线、控制总线。
2、8086CPU启动时对RESET要求?
8086/8088CPU复位时有何操作?
答:
复位信号维高电平有效。
8086/8088要求复位信号至少维持4个时钟周期的高电平才有效。
复位信号来到后,CPU便结束当前操作,并对处理器标志存放器,IP,DS,SS,ES及指令队列清零,而将cs设置为FFFFH,当复位信号变成地电平时,CPU从FFFF0H开始执行程序
3、中断向量是是什么?
堆栈指针的作用是是什么?
什么是堆栈?
答:
中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。
堆栈指针的作用是指示栈顶指针的地址,堆栈指以先进后出方式工作的一块存储区域,用于保存断点地址、PSW等重要信息。
4、累加器暂时的是什么?
ALU能完成什么运算?
答:
累加器的同容是ALU每次运行结果的暂存储器。
在CPU中起着存放中间结果的作用。
ALU称为算术逻辑部件,它能完成算术运算的加减法及逻辑运算的“与〞、“或〞、“比拟〞等运算功能。
5、8086CPUEU、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、8086CPU的地址加法器的作用是什么?
答:
8086可用20位地址寻址1M字节的内存空间,但8086内部所有的存放器都是16位的,所以需要由一个附加的机构来根据16位存放器提供的信息计算出20位的物理地址,这个机构就是20位的地址加法器。
8、如何选择8253、8255A控制字?
答:
将地址总线中的A1、A0都置1
9、DAC精度是什么?
答:
分辨率指最小输出电压〔对应的输入数字量只有最低有效位为“1〞〕与最大输出电压〔对应的输入数字量所有有效位全为“1〞〕之比。
如N位D/A转换器,其分辨率为1/〔2N—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、8086CPU从奇/偶地址单元开始读写的一个字,需要用多少个总线周期?
19.8088/8086CPU响应中断后,TF和IF标志自动置为多少?
答:
IF为1,TF为0
20.累加器是什么?
(前4)
21、控制部件主要包括什么?
答:
控制部件主要包括:
环形计数器、指令译码器,控制矩阵,其他控制电路
22、8086CPU可以进行存放器间接寻址的存放器是哪些?
答:
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/8088CPU什么时候对READY信号进行采样?
答:
CPU在每个总线周期的T3状态开始对READY信号进行采样
32、在存放器间接寻址和基址加变址的寻址方式中,只要用上BP存放器,那么默认的段存放器就是哪个?
答:
默认的段存放器是SS。
33、IMUL、MUL功能与操作?
答:
MUL,IMUL
功能:
乘法指令
语法:
MULOPIMULOP
格式:
MULr/mIMULr/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/8088CPUALE引脚的下降沿,可实现对什么的锁存
答:
8O86/8088CPUALE引脚的下降沿,可实现对地址的锁存
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的补码形式表示时,一个字所能表示的整数范围为多少?
48O端口编址有哪两种方式,8086CPU采用的是什么方式?
答:
I/O端口的编址方式分为统一编址和独立编址。
8086CPU采用的是独立编址方式。
49栈指针的作用是指示栈顶指针的地址,保存的是什么?
答:
用于保存断点地址、PSW等重要信息。
50A/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之间的信息交换。
在每个总线周期的什么状态开始对READY信号进行采样?
(前31)
61、8O86/8088CPUALE引脚的什么沿可实现对地址的锁存?
(前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、8086CPU在最小方式下INTA引脚是什么功能?
它输出的两个连续的负脉冲信号有什么用?
答:
〔1〕在最小工作模式下,INTA引脚作为中断响应信号的输出端,用来对外设的中断请求作出响应。
〔2〕、第1个负脉冲通知外部设备的接口,它发出的中断请求已经得到允许;外设接口收到第2个负脉冲后,往数据总线上放中断类型码,从而CPU便得到了有关此中断请求的详尽信息。
12.8086CPU总线接口单元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分〕
MOVCX,99
MOVBX,0;0-99个带字符的数
MOVMAX,BLOCK[BX]
LOOP1:
MOVAX,BLOCK[BX];BLOCK[BX]放入到AX里
CMPAX,BLOCK[BX+2];两个数进行比拟
JGENEXT;跳到NEXT
MOVMAX,BLOCK[BX+2];如果是的就放到MAX里
NEXT:
ADDBX,2;每次加2
LOOPLOOP1
2、编写汇编完全程序,从BUF单元开始为一个ASCII码字符串,找出其中的最大数送屏幕显示。
DATASEGMENT
BUFDB'STRING',0;定义字符串
MAXDB?
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
MOVAX,DATA
MOVDS,AX
MOVBX,0
MOVMAX,BUF[BX];从BUF开始
LOOP1:
MOVAX,BUF[BX+1];每次加1
CMPAX,0;比拟
JZDONE
JMPAX,MAX
JBENEXT
MOVMAX,AX
NEXT:
INCBX
JMPLOOP1
DONE:
MOVDX,MAX输出最大数
MOVAH,2
INT21H
MOVAX,4C00H
INT21H
CODEENDS
3、编写汇编完全程序,用查表的方法将一位十六进制数转换成与它相应的ASCII码。
既然指定用查表的方法,那么首先要建立一个表TABLE。
我们在表中按照十六进制数从小到大的顺序放入他们对应的ASCII码值
DATASEGMENT
TABLEDB‘0123456789ABCDEF’
TEMP6H这个变量是随便的一位十六进制数
ASCIIDB?
保存转换后的ASCII码
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
MOVAX,DATA
MOVDS,A