1、微原复习题微原整理复习题 作者: 日期: 一 微处理器结构及微计算机的组成1、在采用8286收发器的系统中,当CPU进行数据输出时DT/应为 电平。2、8086CPU的内部由两个独立的工作部件构成,即 和 。3.设(SS)=1250H,(SP)=0240H,若在堆栈中取出2个数据,则栈顶的物理地址为 H,如果又在堆栈中存入5个数据,则栈顶的物理地址为 H。5、CPU与IO接口间的信息一般包括 , , 三种类型。10、决定计算机指令执行顺序的寄存器是 ,它总是指向 。11、8086CPU的一个总线周期至少包括 时钟周期。1、 真值为-1111111B的补码为 。2、8086CPU的内部由两个独立
2、的工作部件构成,即 和 。3、ALU在完成了01000110B和01010110B的二进制加法后状态标志中CF= ,OF= 。4、 是以后进先出的方式工作的存储空间5、总线按其功能可分 、 和 三种不同类型的总线。8086CPU用 信号的下降沿在T1结束时将地址信息锁存在地址锁存器中8086向存储器的51H单元写入一个字节的数据时,为 ,A0为 。、 8086/8088在满足 和标志位 的条件下可以响应一个外部INTR中断请求。1. 8086是多少位的微处理器?为什么?2. EU与BIU各自的功能是什么?如何协同工作?答:EU是执行部件,主要的功能是执行指令。BIU是总线接口部件,与片外存储器
3、及I/O接口电路传输数据。EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。3. 8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。AX、BX、CX、DX一般作为通用数据寄存器。SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。IP的内容为下一条将
4、要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。4. 8086对存储器的管理为什么采用分段的办法,并写出计算公式?答:8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围 (1MB,20位地址)。若不用分段方法,16位地址只能寻址64KB空间。计算公式为:物理地址=段基址10H偏移地址5. 在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。答:逻辑地址是在程序中对存储器地址的一种表示方法,由段地址和段内偏移地址两部分组成,如1234H:0088H。偏移地址是指段内某个存储单元相对该段首地址的差值,是一个16位的二进制代
5、码。物理地址是8086芯片引线送出的20位地址码,用来指出一个特定的存储单元。6给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。78086/8088为什么采用地址/数据引线复用技术?答:考虑到芯片成本,8086/8088采用40条引线的封装结构。40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。8. 8086与8088的主要区别是什么?答:8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度为6字节,
6、8088只有4字节。9. 怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同答:引线的逻辑状态决定8086的工作模式,引线接高电平,8086被设定为最小模式,引线接低电平,8086被设定为最大模式。最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的三条状态信号引线提供。10. 8086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?答:标志寄存器、IP、DS、SS、ES和指令队列置0,CS置全1。处理器从FFFFOH存储单元取指令并开始执行。11. 8086基本总线周期是如何组成的?各状
7、态中完成什么基本操作?答:基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号、及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。12. 结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。答:ALE为外部地址锁存器的选通脉冲,在T1期间输出;确定总线操作的对象是存储器还是I/O接口电路,在T1输出;为数据总线缓冲器的方向控制信号,在T1输出;为读命令信号;在T2输出;READY信号为存储器或I/O接口“准备好”
8、信号,在T3期间给出,否则8086要在T3与T4间插入Tw等待状态。13. 8086中断分哪两类?8086可处理多少种中断?14. 8086可屏蔽中断请求输入线是什么?“可屏蔽”的涵义是什么?答:可屏蔽中断请求输入线为INTR;“可屏蔽”是指该中断请求可经软件清除标志寄存器中IF位而被禁止。15. 8086的中断向量表如何组成?作用是什么?答:把内存0段中03FFH区域作为中断向量表的专用存储区。该区域存放256种中断的处理程序的入口地址,每个入口地址占用4个存储单元,分别存放入口的段地址与偏移地址。168086如何响应一个可屏蔽中断请求?简述响应过程。答:当8086收到INTR的高电平信号时
9、,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出有效信号;在第二个期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,请除IF、TF;8086将类型码乘4后得到中断向量表的入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程。17. 什么是总线请求?8086在最小工作模式下,有关总线请求的信号引脚是什么?答:系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。8086在最小工作模式下有
10、关总线请求的信号引脚是HOLD与HLDA。18. 简述在最小工作模式下,8086如何响应一个总线请求?答:外部总线主控模块经HOLD引线向8086发出总线请求信号;8086在每个时钟周期的上升沿采样HOLD引线;若发现HOLD=1则在当前总线周期结束时(T4结束)发出总线请求的响应信号HLDA;8086使地址、数据及控制总线进入高阻状态,让出总线控制权,完成响应过程。19在基于8086的微计算机系统中,存储器是如何组织的?是如何与处理器总线连接的?信号起什么作用?答:8086为16位处理器,可访问1M字节的存储器空间;1M字节的存储器分为两个512K字节的存储体,命名为偶字节体和奇字节体;偶体
11、的数据线连接D7D0,“体选”信号接地址线A0;奇体的数据线连接D15D8,“体选”信号接信号;信号有效时允许访问奇体中的高字节存储单元,实现8086的低字节访问、高字节访问及字访问。20从引腿信号上看,8086和8088有什么不同?答: 由于8088只能传输8位数据,所以8088只有8个地址引腿兼为数据引腿;而8086是按16位传输数据的,所以有16个地址/数据复用引腿;另外8086和8088的控制线引腿定义中第28和34腿也不一样,在最小模式时,8088(/IO)和8086(M/)的第28腿的控制信号相反,而8086的第34腿为/S7,用来区分是传送字节、还是字,8088的第34腿为SS0
12、,用来指出状态信息,不能复用。 21CPU在8086的微机系统中,为什么常用AD0作为低8位数据的选通信号?答: 在8086系统中,常将AD0作为低8位数据的选通信号,因为每当CPU和偶地址单元或偶地址端口交换数据时, 在T1状态, AD0引腿传送的地址信号必定为低电平,在其他状态,则用来传送数据。而CPU的传输特性决定了只要是和偶地址或偶地址端口交换数据,那么,CPU必定通过总线低8位(AD7-AD0)传输数据。可见,如果在总线周期的T1状态,AD0为低电平,实际上就指示了在这一总线周期中,CPU将用总线低8位和偶地址单元或偶地址端口交换数据。22. 设当前SS=2010H,SP=FE00H
13、,BX=3457H,计算当前栈顶的物理地址为多少?当执行PUSH BX 指令后,栈顶地址和栈顶2个字节单元的内容分别是什么?(要求写出每个单元逻辑地址,然后写出该单元中的内容。)答:当前栈顶的物理地址为:2FF00H执行PUSH BX指令后,栈顶地址为:2FEFEH栈顶2个字节单元的内容为:2010H:FDFEH单元内容为:57H 2010H:FDFFH单元内容为:34H四 微计算机中处理器与I/O设备间数据传输控制方法若用10241位RAM芯片组成16K8位的存储器,则需要 个芯片,至少需要 位地址线,在地址线中有 位参与片内寻址。1. 什么是中断类型码、中断向量、中断向量表?在基于8086
14、/8088的微机系统中,中断类型码和中断向量之间有什么关系?答:处理机可处理的每种中断的编号为中断类型码。中断向量是指中断处理程序的入口地址,由处理机自动寻址。中断向量表是存放所有类型中断处理程序入口地址的一个默认的内存区域。在8086系统中,中断类型码乘4得到向量表的入口,从此处读出4字节内容即为中断向量。2. 什么是硬件中断和软件中断?在PC机中两者的处理过程有什么不同?答:硬件中断是通过中断请求线输入电信号来请求处理机进行中断服务;软件中断是处理机内部识别并进行处理的中断过程。硬件中断一般是由中断控制器提供中断类型码,处理机自动转向中断处理程序;软件中断完全由处理机内部形成中断处理程序的
15、入口地址并转向中断处理程序,不需外部提供信息。3. 8259A中断控制器的功能是什么?答:8259A中断控制器可以接受8个中断请求输入并将它们寄存。对8个请求输入进行优先级判断,裁决出最高优先级进行处理,它可以支持多种优先级处理方式。8259A可以对中断请求输入进行屏蔽,阻止对其进行处理。8259A支持多种中断结束方式。8259A与微处理器连接方便,可提供中断请求信号及发送中断类型码。8259A可以进行级连以便形成多于8级输入的中断控制系统。4. 8259A初始化编程过程完成那些功能?这些功能由那些ICW设定?答:初始化编程用来确定8259A的工作方式。ICW1确定8259A工作的环境:处理器
16、类型、中断控制器是单片还是多片、请求信号的电特性。ICW2用来指定8个中断请求的类型码。ICW3在多片系统中确定主片与从片的连接关系。ICW4用来确定中断处理的控制方法:中断结束方式、嵌套方式、数据线缓冲等。5. 8259A的中断屏蔽寄存器IMR与8086中断允许标志IF有什么区别?答:IF是8086微处理器内部标志寄存器的一位,若IF=0,8086就不响应外部可屏蔽中断请求INTR引线上的请求信号。8259A有8个中断请求输入线,IMR中的某位为1,就把对应这位的中断请求IR禁止掉,无法被8259A处理,也无法向8086处理器产生INTR请求。6. 若8086系统采用单片8259A中断控制器
17、控制中断,中断类型码给定为20H,中断源的请求线与8259A的IR4相连,试问:对应该中断源的中断向量表入口地址是什么?若中断服务程序入口地址为4FE24H,则对应该中断源的中断向量表内容是什么,如何定位?答:中断向量表入口地址为:0段的0090H地址。对应4FE24H中断服务程序入口,在向量表中定位情况:(0090H)=24H、(0091H)=00H、(0092H)=E0H、(0093H)=4FH。7. 试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,全嵌套中断优先级,数据总线无缓冲,采用中断自动结束方式。中断类型码为20H27H,
18、8259A的端口地址为B0H和B1H。答:ICW1=1BH (送B0H端口),ICW2=20H (送B1H端口),ICW4=03H (送B1H端口)8. 比较中断与DMA两种传输方式的特点。答:中断方式下,外设需与主机传输数据时要请求主给予中断服务,中断当前主程序的执行,自动转向对应的中断处理程序,控制数据的传输,过程始终是在处理器所执行的指令控制之下。直接存储器访问(DMA)方式下,系统中有一个DMA控制器,它是一个可驱动总线的主控部件。当外设与主存储器之间需要传输数据时,外设向DMA控制器发出DMA请求,DMA控制器向中央处理器发出总线请求,取得总线控制权以后,DMA控制器按照总线时序控制
19、外设与存储器间的数据传输而不是通过指令来控制数据传输,传输速度大大高于中断方式。如图所示,IBM-PC/XT计算机扩展槽上与存储器连接的总线信号为20根地址线A19A0,8根数据线D7D0以及控制信号和。使用这些信号扩展1片2764(8K8 EPROM)和1片6264(8K8 RAM)。要求EPROM的起始地址为C0000H,RAM紧随其后,使用74LS138(3-8译码器),采用全地址译码方式。试在图中画出计算机的存储器连接图(门电路自选)。并写出各存储器的地址范围。已知RAM芯片结构和74LS138结构见下图所示,请回答如下问题:1、若要求构成一个8K8的RAM阵列,则需几片这样的芯片?若
20、RAM阵列组的起始地址为E1000H,试写出每块RAM芯片的地址空间。(10分)2、若采用全地址译码方式译码,试画出存储器系统电路连接图。(其中、已给出,其它逻辑门可自选)。(10分)五 常用可编程外围接口芯片单片8259A可管理 级可屏蔽中断,级联最多可管理 级。8253有 种工作方式。6、由8086组成的系统中,假设8253的控制口地址为0F8H,则定时器/计数器0口地址为 。7、。8、8259工作在优先级自动循环方式下,中断系统一开始时, 中断的优先级是最高的。如果这时刚好来了IR4中断申请,处理完IR4后, 中断的优先级是最高的。9、10、8251A芯片复位后首先写入的应是 。11、
21、假如某异步串行通信中传送一个字符,它包括1个起始位,7个数据位,1个偶校验位,1个停止位,如果传送速率为1200波特,则每秒所能传送的字符个数是 。1. 设8253三个计数器的端口地址为201H、202H、203H,控制寄存器端口地址200H。试编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX。答: MOV AL,80H OUT 200H,AL IN AL,203H MOV BL,ALIN AL,203H, MOV BH,AL MOVAX,BX 设8253三个计数器的端口地址为201H、202H、203H,控制寄存器端口地址200H。输入时钟为2MHz,让1号通道周期性的发出脉冲
22、,其脉冲周期为1ms,试编写初化程序段。 答: 要输出脉冲周期为1ms,输出脉冲的频率是,当输入时钟频率为2MHz时,计数器初值是使用计数器1,先读低8位,后读高8位,设为方式3,二进制计数,控制字是76H。设控制口的地址是200H,计数器0的地址是202H。程序段如下: MOV DX,200H MOV AL,76H OUT DX,AL MOV DX,202H MOV AX,2000OUT DX,AL MOV AL,AH OUT DX,AL 设8253计数器的时钟输入频率为1.91MHz,为产生25KHz的方波输出信号,应向计数器装入的计数初值为多少?答: = 76.4应向计数器装入的初值是7
23、6。4. 设8253的计数器0,工作在方式1,计数初值为2050H;计数器1,工作在方式2,计数初值为3000H;计数器2,工作在方式3,计数初值为1000H。如果三个计数器的GATE都接高电平,三个计数器的CLK都接2MHz时钟信号,试画出OUT0、OUT1、OUT2的输出波形。答: 计数器0工作在方式1,即可编程的单脉冲方式。这种方式下,计数的启动必须由外部门控脉冲GATE控制。因为GATE接了高电平,当方式控制字写入后OUT0变高,计数器无法启动,所以OUT0输出高电平。计数器1工作在方式2,即分频器的方式。输出波形的频率f=666.7HZ,其周期为1.5ms,输出负脉冲的宽度等于CLK
24、的周期为0.5s。计数器2工作在方式3,即方波发生器的方式。输出频率f=2000Hz的对称方波。三个OUT的输出波形如下:略。5. 8255A的3个端口在使用上有什么不同?6. 当数据从8255A的C端口读到CPU时,8255A的地址信号A1、A0分别是什么电平? 7. 全双工和半双工通信的区别是什么?在二线制电路上能否进行全双工通信?为什么?答:全双工和半双工通信,双方都既是发送器又是接收器。两者的区别在于全双工可以同时发送和接收。半双工不能同时双向传输,只能分时进行。在二线制电路上是不能进行全双工通信的,只能单端发送或接收。因为一根信号线,一根地线,同一时刻只能单向传输。8. 同步传输方式
25、和异步传输方式的特点各是什么?答:同步传输方式中发送方和接收方的时钟是统一的、字符与字符间的传输是同步无间隔的。异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的。9. 8251A在编程时,应遵循什么规则?答:8251在初始化编程时,首先使芯片复位,第一次向控制端口(奇地址)写入的是方式字;如果输入的是同步方式,接着向奇地址端口写入的是同步字符,若有2个同步字符,则分2次写入;以后不管是同步方式还是异步方式,只要不是复位命令,由CPU向奇地址端口写入的是命令控制字,向偶地址端口写入的是数据。10. 试对一个8251A进行初始化编程,要求工作在同步方式,7位数据位,奇校
26、验,1个停止位。答:对原题目的补充改动,要求工作在内同步方式,2个同步字符。方式字是:00011000B=18H程序段如下:XOR AX,AXMOV DX,PORTOUT DX,ALOUT DX,ALOUT DX,AL ;向8251的控制口送3个00HMOV AL,40HOUT DX,AL ;向8251的控制口送40H,复位MOV AL,18HOUT DX,AL ;向8251送方式字MOV AL,SYNC ;SYNC为同步字符OUT DX,AL OUT DX,AL ;输出2个同步字符MOV AL,10111111BOUT DX,AL ;向8251送控制字11. 一个异步串行发送器,发送具有8位
27、数据位的字符,在系统中使用一位作偶校验,2个停止位。若每秒钟发送100个字符,它的波特率和位周期是多少?答:每个字符需要的发送位数是12位(数据位8位,校验位1位,停止位2位,起始位1位)。每秒发送100个字符共1200位。因此波特率为1200波特,位周期= 833s。12设8255A的4个端口地址为00C0H,00C2H,00C4H,00C6H,要求用置0/置1方式对PC6置1,对PC4置0。在某工业控制应用中,有8个开关K7K0,要求不断检测开关的通断状态,并随时在发光二极管LED7LED0上显示出来。开关断开,相应的LED点亮;开关合上,LED熄灭(如下图)。要求选用8086CPU,82
28、55A和74LS138译码器等芯片,用74LS138译码器的输出用来作为8255A的选通信号,用8255A的A口采集开关的状态,B口用来输出信号控制LED的点亮和熄灭。要求:1、根据原理图,分析出8255的A口,B口,C口及控制口地址 (5分)2、8255三个数据口的工作方式均为方式0,C口为输入,写出控制字(5分)3、编写程序段,完成8255的初使化和上述控制功能的程序段 (5分)4、若8255的A口、B口、C口及控制口地址改为0F8H、0FAH、0FC和0FEH,则74LS138的输出线应使用那条? 用8253设计一个定时器(如图),要求在OUT1引脚输出一个周期为2秒的方波。从而使LED
29、每隔2秒亮一次(持续2秒),设外部时钟频率为1MHz, 用计数器0输出OUT0接计数器1的输入CLK1。已知条件: 计数器0:方式2(分频器), BCD格式,计数初值为500 计数器1:方式3(方波),BCD格式,计数初值未知 CSA1A0WRRDD0D7OUT1GATE1CLK0LED1MHz+5V8253G1G2ACAB Y274LS138OUT0CLK1GATE05VA7M/IOA4A3A0A6A5&A2A1RDWRD0D78086G2B 请回答:1、根据原理图,分析出8253的各计数器和控制口地址; (5分)2、计算计数器1的计数初值; (3分)3、写出计数器0和计数器1的控制字; (
30、4分)4、完成初始化程序片段 (8分)3、下列程序段 MOV DL,09H OR DL,30H MOV AH,02H INT 21H实现的功能是 。12、下列程序片段的功能是: NUM DB 10H,20H,30H LEA SI,NUM SHR BYTE PTR SI,1 RCR BYTE PTR SI+1,1 RCR BYTE PTR SI+2,1下列程序完成将ASCII码表示的5位十进制数(=65535)转换成16位二进制数,并存储起来。DSEG SEGMENTASCDEC DB 23333BINARY DW 0MULTIPLE DW 1DSEG ENDS CSEG SEGMENTASSUME CSEG:CODE,DSEG:DATA START: MOV AX,DSEG MOV DS,AX MOV CX,10 LEA SI,ASCDEC DEC SI MOV B
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1