版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微机原理期末考试试题及答案一、单项选择题(每题2分,共20分)1.在8086/8088微处理器中,用于存放当前代码段基地址的寄存器是()。A.CSB.DSC.SSD.ES答案:A2.8086CPU有20根地址线,其直接寻址的内存空间为()。A.64KBB.640KBC.1MBD.16MB答案:C3.若某存储芯片的容量为2KA.10B.11C.12D.13答案:B解析:2K4.8086CPU响应可屏蔽中断INTR的条件是()。A.IF=0B.IF=1C.TF=0D.TF=1答案:B5.在8086系统中,一个基本总线周期包含()个时钟周期(T状态)。A.2B.4C.6D.8答案:B6.下列8086指令中,源操作数采用寄存器间接寻址方式的是()。A.MOVAX,1234HB.MOVAX,[BX]C.MOVAX,[1234H]D.MOVAX,BX答案:B7.若用1片2716(2K×8EPROM)和1片6116(2K×8SRAM)组成存储器系统,若采用全译码方式,则至少需要()根高位地址线参与片选译码。A.1B.2C.3D.4答案:C解析:8086地址线20根,每片芯片需11根地址线(−)进行片内寻址,剩余−共9根可用于片选,但“至少需要”是指为区分这两片芯片,至少需要1根地址线(如)进行译码即可。但题目强调“全译码方式”和“至少需要”,意味着要为每片芯片分配唯一且不重叠的地址空间,并使用所有高位地址线进行译码,以避免地址歧义。对于两片芯片,至少需要1根地址线(产生2个选通信号)即可区分,但为了全译码,通常使用更多高位地址线进行组合译码。然而,从经典考题角度,此处常考的是:芯片容量为2K,占用地址线−,剩余高位地址线−共9根全部参与译码才能保证地址唯一,但“至少需要”的根数是指为产生两个不同的片选信号所需的最小译码输入线数。若用译码器,如2-4译码器需2根输入线,3-8译码器需3根输入线。考虑到两片芯片,用2根地址线经译码可产生4个片选,足够。但若用1根线直接作为片选(如一根接CS,一根接CS非),则只需1根,但这不属于严格的全地址译码(部分高位地址未参与)。标准全译码要求所有高位地址线都参与决定片选信号,以消除地址重叠区。因此,从“全译码”和“至少”的严谨性出发,常见答案是使用3-8译码器,需要3根高位地址线作为输入。故本题选C。8.在8086最小模式系统中,控制总线中用于区分当前总线周期是读操作还是写操作的信号是()。A.M/IO#B.RD#C.WR#D.DT/R#答案:D解析:RD#和WR#分别指示读和写,但DT/R#(数据发送/接收)信号在高电平时表示发送(写),低电平时表示接收(读),常用于控制数据总线收发器的方向,是区分读写的关键信号之一。但更直接的区分信号是RD#和WR#本身。然而,在最小模式下,CPU直接发出RD#或WR#信号来指示操作类型。严格来说,RD#和WR#是分开的,题目可能意在考察哪个信号“同时”或“通过电平”来区分。经典教材中常指出,在最小模式下,由M/IO#、RD#、WR#共同决定操作类型,但单独一个信号并不能完全区分。DT/R#在读写周期中电平不同,常作为区分标志。结合常见考题,本题标准答案通常为D(DT/R#)。9.8255A工作于方式1输入时,用于通知外设CPU已读取数据的信号是()。A.IBFB.STB#C.INTRD.OBF#答案:A解析:输入时,STB#由外设发出,将数据锁存进8255A;IBF由8255A置起,告诉外设“输入缓冲器满”,暂缓发送;当CPU读走数据后,IBF变低,此下降沿可视为对外设的“已读”通知。严格来说,IBF变低就是通知。INTR是向CPU申请中断的信号。10.若8253的通道0工作于方式3(方波发生器),计数初值为奇数,则输出方波的高电平宽度为()个CLK周期。A.(N+1)/2B.(N-1)/2C.N/2(向下取整)D.N/2(向上取整)答案:A解析:方式3下,初值N为奇数时,高电平宽度为(N+1二、多项选择题(每题3分,共15分,多选、少选、错选均不得分)1.8086CPU的内部结构主要分为哪两大功能部件?()A.指令预取部件B.总线接口部件(BIU)C.指令译码部件D.执行部件(EU)答案:B,D2.下列属于8086/8088系统标志寄存器FLAGS中控制标志位的是()。A.IF(中断允许标志)B.TF(陷阱标志)C.DF(方向标志)D.OF(溢出标志)答案:A,B,C解析:OF是状态标志。3.在存储器系统中,实现片选控制的方法主要有()。A.线选法B.全译码法C.部分译码法D.字扩展法答案:A,B,C解析:字扩展是扩展位数的方法,不是片选方法。4.8259A中断控制器的主要功能包括()。A.优先级排队B.接收和扩展外部中断请求C.提供中断类型码D.进行DMA传输控制答案:A,B,C5.下列接口芯片中,属于可编程并行接口芯片的是()。A.8255AB.8253C.8251AD.8155答案:A,D解析:8253是定时/计数器,8251A是串行接口。三、填空题(每空1分,共20分)1.8086CPU复位后,代码段寄存器CS的值为\_\_\_\_\_\_,指令指针IP的值为\_\_\_\_\_\_,系统从物理地址\_\_\_\_\_\_开始执行指令。答案:FFFFH;0000H;FFFF0H2.8086CPU在最小模式下,构成系统总线时,地址总线需要\_\_\_\_\_\_芯片进行锁存,数据总线需要\_\_\_\_\_\_芯片进行驱动。答案:地址锁存器(如74LS373);数据收发器(如74LS245)3.若(AL)=0B4H,执行指令`ADDAL,0A5H`后,(AL)=\_\_\_\_\_\_,CF=\_\_\_\_\_\_,OF=\_\_\_\_\_\_。答案:59H;1;1解析:0B4H+0A5H=159H,AL存59H,进位为1,故CF=1。两个负数相加(0B4H和0A5H作为有符号数均为负)结果为正(59H为正),故溢出OF=1。4.已知某中断源的中断类型码为48H,则该中断服务程序的入口地址在中断向量表中从物理地址\_\_\_\_\_\_H开始的连续四个单元中。答案:00120解析:中断向量表从00000H开始,每个向量占4字节。类型码n对应地址为n×5.半导体存储器按存取方式可分为\_\_\_\_\_\_和\_\_\_\_\_\_两大类。答案:随机存取存储器(RAM);只读存储器(ROM)6.8255A工作于方式0时,端口A、B、C均可作为\_\_\_\_\_\_端口使用;工作于方式1时,端口C的部分引脚被固定用作\_\_\_\_\_\_信号线。答案:基本输入/输出;联络(或控制/状态)7.若8253的通道1工作于方式2(分频器/速率发生器),计数初值为1000(十进制),CLK1输入时钟频率为2MHz,则OUT1输出的脉冲频率为\_\_\_\_\_\_Hz,周期为\_\_\_\_\_\_ms。答案:2000;0.5解析:方式2是N分频,=/N=8.在8086系统中,若某I/O端口的地址为300H,则对该端口进行输入操作时应使用指令\_\_\_\_\_\_,进行输出操作时应使用指令\_\_\_\_\_\_。答案:INAX,300H或INAL,300H;OUT300H,AX或OUT300H,AL解析:端口地址大于FFH,必须用DX间接寻址。故标准答案应为:先将300H送入DX,再用INAX,DX或INAL,DX;以及OUTDX,AX或OUTDX,AL。但题目直接给出了地址,常见填法如答案所示,需注意实际编程需通过DX。9.一个完整的汇编语言源程序通常由\_\_\_\_\_\_段、\_\_\_\_\_\_段和\_\_\_\_\_\_段组成。答案:代码;数据;堆栈(顺序可调)10.8086CPU在响应外部中断请求后,会自动将\_\_\_\_\_\_、\_\_\_\_\_\_和\_\_\_\_\_\_寄存器的内容压入堆栈。答案:FLAGS;CS;IP四、简答题(每题5分,共25分)1.简述8086CPU中逻辑地址与物理地址的关系,并写出物理地址的计算公式。答案:逻辑地址是编程时使用的地址,由段基址和偏移地址组成。物理地址是CPU访问内存时在地址总线上输出的20位实际地址。物理地址的计算公式为:物理地址=段基址×16+偏移地址。2.什么是DMA传送方式?简述其基本过程。答案:DMA(直接存储器存取)传送方式是一种由DMA控制器(DMAC)接管系统总线,在存储器和I/O设备之间直接进行数据交换的方式,无需CPU干预,适用于高速批量数据传输。基本过程为:①I/O设备向DMAC发出DMA请求;②DMAC向CPU发出总线请求(HOLD);③CPU响应,让出总线控制权,发出总线响应信号(HLDA);④DMAC接管总线,发出存储器地址和读写控制信号,完成一次数据传送;⑤传送结束后,DMAC撤销总线请求,CPU重新控制总线。3.简述8259A中断控制器中中断结束方式(EOI)的含义,并列举两种常用的EOI方式。答案:中断结束方式(EOI)是指当中断服务程序执行完毕时,通过特定操作通知8259A,以便8259A将当前正在服务的中断请求清除,为后续中断请求服务做好准备。两种常用的EOI方式是:①普通EOI方式:在中断服务程序末尾,向8259A发送一条普通的EOI命令(操作命令字OCW2,其中EOI位为1),8259A自动清除中断服务寄存器(ISR)中优先级最高的位(即当前服务位)。②特殊EOI方式:在中断服务程序末尾,向8259A发送一条特殊的EOI命令(OCW2,其中SL=1,EOI=1,并指定L2-L0位),明确告知8259A要清除ISR中的哪一位。4.简述8086系统中最小模式与最大模式的主要区别。答案:主要区别有:①系统规模不同:最小模式用于单处理器系统,最大模式用于多处理器或协处理器系统。②控制信号产生方式不同:最小模式下,CPU直接产生所有总线控制信号(如RD#,WR#,M/IO#等);最大模式下,CPU通过输出状态信号S2#,S1#,S0#,由总线控制器8288译码产生系统总线控制信号。③引脚定义不同:MN/MX#引脚接高电平为最小模式,接低电平为最大模式。最大模式下,部分引脚(如RQ#/GT#,LOCK#)功能重新定义,用于支持多处理器通信和总线仲裁。5.什么是接口?接口电路的基本功能有哪些?(至少列出四项)答案:接口是位于CPU(或系统总线)与外部设备之间,负责信息交换和协调的硬件电路及相应的软件。其基本功能包括:①数据缓冲与锁存;②信号电平与格式转换;③信息交换的时序协调;④设备选择与寻址;⑤中断管理或DMA请求;⑥可编程功能(针对可编程接口芯片)。五、程序分析与设计题(每题10分,共20分)1.分析下列8086汇编程序段的功能,并回答相关问题。```MOVCX,100LEASI,SOURCELEADI,DESTCLDREPMOVSB```问题:(1)该程序段完成什么操作?(2)执行该程序段前,需要预先对哪些寄存器或标志位进行设置?本程序段中是如何设置的?(3)若将指令`CLD`改为`STD`,程序执行结果有何不同?答案:(1)该程序段完成将内存中从SOURCE地址开始的连续100个字节数据,传送到以DEST地址开始的内存区域中。(2)需要预先设置:CX(传送次数)、SI(源地址指针)、DI(目的地址指针)、方向标志DF(决定指针增减方向)。本程序段中,通过`MOVCX,100`设置次数;通过`LEASI,SOURCE`和`LEADI,DEST`设置指针;通过`CLD`指令将方向标志DF清零,使指针自动递增。(3)若将`CLD`改为`STD`,则DF被置1。执行`REPMOVSB`时,SI和DI指针将在每次传送后自动递减,而不是递增。这将导致数据从SOURCE地址向低地址方向的100个字节,被传送到DEST地址向低地址方向的区域,且传送顺序是反向的(从最后一个字节开始),最终结果与`CLD`时完全不同,通常会导致非预期的数据覆盖或错误传送。2.阅读以下程序片段,假设BUFFER开始存放了10个无符号字节数据。```LEABX,BUFFERMOVCX,10MOVAL,0AGAIN:CMPAL,[BX]JAENEXTMOVAL,[BX]NEXT:INCBXLOOPAGAINMOVMAX,AL```问题:(1)该程序段的功能是什么?(2)程序执行结束后,寄存器AL和内存单元MAX中存放的是什么?(3)若将`JAENEXT`改为`JANEXT`,对处理的数据类型和结果有何影响?答案:(1)该程序段的功能是查找BUFFER开始的10个无符号字节数据中的最大值,并将其存入MAX单元。(2)程序执行结束后,寄存器AL和内存单元MAX中存放的是这10个无符号字节数据中的最大值。(3)`JAE`(高于或等于转移)用于无符号数比较。若改为`JA`(高于转移),则当比较的当前最大值AL与数据[BX]相等时,不会更新AL。对于查找无符号数最大值,如果数据中有多个相等的最大值,用`JAE`会在第一次遇到最大值时将其存入AL,之后遇到相等的值不会更新(但结果正确);用`JA`则遇到相等的值也不会更新,结果也正确。但若数据中第一个数就是最大值,且后面有相等的数,两种跳转结果一致。主要区别在于:`JAE`在AL等于[BX]时不更新AL(跳过`MOVAL,[BX]`),`JA`在AL等于[BX]时也不更新,行为在AL等于[BX]时是一致的。因此,对于查找最大值功能,两者结果没有区别。但严格说,`JAE`更符合“小于则更新”的逻辑(即AL<[BX]时更新),而`JA`是AL<=[BX]时都不更新。如果初始AL为0,且数据全为0,用`JAE`会在第一次比较(0>=0成立)时跳过更新,最终AL=0;用`JA`也会在第一次比较(0>0不成立)时跳过更新,最终AL=0。结果相同。所以对结果无影响。六、综合应用题(每题20分,共20分)1.某8086最小模式系统,需扩展一片8255A和一片8253。已知系统提供的地址总线∼,数据总线∼,控制信号有M/IO#,RD#,WR#,RESET,CLK(系统时钟)。现要求:(1)为8255A分配端口地址:端口A为C0H,端口B为C2H,端口C为C4H,控制口为C6H。(2)为8253分配端口地址:通道0为80H,通道1为82H,通道2为84H,控制口为86H。(3)8253的通道0工作于方式3(方波发生器),计数初值为1234H(16进制),CLK0输入时钟频率为1MHz。通道1工作于方式2(分频器),计数初值为100(十进制),用通道0的输出OUT0作为通道1的时钟CLK1。(4)8255A工作于方式0,端口A输入,端口B输出,端口C高4位输入,低4位输出。请完成以下设计:(一)地址译码电路设计(8分)请设计一个基于74LS138(3-8译码器)的片选信号产生电路。要求写出74LS138的输入连接(A,B,C,G1,G2A#,G2B#分别接什么信号),并写出8255A和8253的片选信号CS#(或CS)分别由74LS138的哪个输出端(Y0#~Y7#)产生。需简要说明地址分配如何满足题目要求。答案:根据端口地址要求:8255A:A口C0H(11000000B),B口C2H(11000010B),C口C4H(11000100B),控制口C6H(11000110B)。可见地址特征::对于C0H:11000000;C2H:11000010;C4H:11000100;C6H:11000110。共同特征:=1,=1,=8253:通道080H(10000000B),通道182H(10000010B),通道284H(10000100B),控制口86H(10000110B)。共同特征:=1,=0,考虑使用74LS138,其输入C,B,A通常接地址线。为区分1100和1000,可选择,,作为138的C,B,A输入。但也需要参与片选判定,否则地址会重叠(例如1100和1000在为0时,仅凭无法区分,因为110和100是不同编码)。实际上,138的每个输出对应一个3位输入编码。若用作为CBA,则:当=110(6)时,Y6#有效,对应地址范围是=110,当=100(4)时,Y4#有效,对应地址范围是=100,因此方案:将地址线,,使能端连接:G1接高电平(+5V),G2A#和G2B#需在CPU访问I/O端口时有效。I/O访问时,M/IO#为低电平。故可将M/IO#接G2A#(低有效),G2B#接地(低有效)。则:当CPU执行I/O操作(M/IO#=0),且=110当CPU执行I/O操作(M/IO#=0),且=100地址线∼中,直接连接到8255A和8253的相应地址引脚(A1,A0),用于选择内部端口。,未参与此部分译码,但题目给定的具体地址(C0H,C2H等)中=0,=0(二)初始化编程(8分)根据题目要求,分别写出8253和8255A的初始化程序片段(8086汇编语言,端口地址使用题目给定的值,假设使用AL寄存器)。答案:8253初始化:```;初始化通道0,方式3,初值1234H(先低后高),二进制计数MOVAL,00110110B;控制字:00(通道0),11(读
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心肺复苏理论考试试题及答案
- 全国2026年4月自考知识产权法试题和答案
- 铁路货运组织期末考试试题及答案(B卷)
- 司法警察法警题库及答案
- 食品安全员培训考试题库判断题及答案
- 2026年社区食品经营巡查招聘真题(附答案)
- 2026年普洱市法院法官助理遴选笔试试题(含答案)
- 2026年国企培训管理岗综合试题(带答案)
- 2026年国考《申论》真题及答案解析(地市级)
- 2025年一级造价工程师考试建设工程造价管理真题及答案解析
- 幼儿园保安考试试题及答案
- 煤矿班组长现场安全管控培训课件
- 四川省水电投资经营集团有限公司所属电力公司2026年员工公开招聘(221人)考试备考试题及答案详解
- 上海八年级上册数学-二次根式的乘法和除法 同步练习
- 《研学旅行课程设计》课件-研学课程设计原则
- JJG 693-2011可燃气体检测报警器
- 数字贸易学 课件 第22章 数字贸易规则构建与WTO新一轮电子商务谈判
- 大连啤酒节策划方案
- 成人高考《专科起点本科》生态学基础复习资料
- 压滤机安全操作规程
- 毛主席长征故事
评论
0/150
提交评论