北京大学微机原理与接口技术期末考试试题 - 图文

更新时间:2023-11-15 06:30:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

北京大学

“微机原理与接口技术”期末考试试题(2010——2012)

1. 微机系统的硬件由哪几部分组成?

答:三部分:微型计算机(微处理器,存储器,I/0接口,系统总线),外围设备,电源。 2. 什么是微机的总线,分为哪三组?

答:是传递信息的一组公用导线。分三组:地址总线,数据总线,控制总线。 3. 8086/8088CPU的内部结构分为哪两大模块,各自的主要功能是什么?

答:总线接口部件(BIU)功能:根据执行单元EU的请求完成CPU与存储器或IO设备之间的数据传送。执行部件(EU),作用:从指令对列中取出指令,对指令进行译码,发出相应的传送数据或算术的控制信号接受由总线接口部件传送来的数据或把数据传送到总线接口部件进行算术运算。

4. 8086指令队列的作用是什么?

答:作用是:在执行指令的同时从内存中取了一条指令或下几条指令,取来的指令放在指令队列中这样它就不需要象以往的计算机那样让CPU轮番进行取指和执行的工作,从而提高CPU的利用率。

5. 8086的存储器空间最大可以为多少?怎样用16位寄存器实现对20位地址的寻址?完成

逻辑地址到物理地址转换的部件是什么? 答:8086的存储器空间最大可以为2^20(1MB);8086计算机引入了分段管理机制,当CPU寻址某个存储单元时,先将段寄存器内的内容左移4位,然后加上指令中提供的16位偏移地址形成20位物理地址。

6. 段寄存器CS=1200H,指令指针寄存器IP=FF00H,此时,指令的物理地址为多少?指向

这一物理地址的CS值和IP值是唯一的吗? 答:指令的物理地址为21F00H;CS值和IP值不是唯一的,例如:CS=2100H,IP=0F00H。 7. 设存储器的段地址是4ABFH,物理地址为50000H,其偏移地址为多少? 答:偏移地址为54100H。(物理地址=段地址*16+偏移地址)

8. 8086/8088CPU有哪几个状态标志位,有哪几个控制标志位?其意义各是什么?

答:状态标志位有6个: ZF,SF,CF,OF,AF,PF。其意思是用来反映指令执行的特征,通常是由CPU根据指令执行结果自动设置的;控制标志位有3个:DF,IF,TF。它是由程序通过执行特定的指令来设置的,以控制指令的操作方式。 9. 8086CPU的AD0~AD15是什么引脚? 答:数据与地址引脚

10. INTR、INTA、NMI、ALE、HOLD、HLDA引脚的名称各是什么?

答:INTR是可屏蔽请求信号,INTA中断响应信号,NMI是不可屏蔽中断请求信号,ALE是地址锁存允许信号,HOLD总线请求信号,HLDA总线请求响应信号。 11. 虚拟存储器有哪两部分组成? 答:有主存储器和辅助存储器。

12. 在80x86中,什么是逻辑地址、线性地址、物理地址?

答:线性地址是连续的不分段的地址;逻辑地址是由程序提供的地址;物理地址是内存单元的实际地址。

13. 段描述符分为哪几种?

答:分为三大类,程序段描述符,系统段描述符,门描述符。 14. RAM有几种,各有什么特点?ROM有几种,各有什么特点?

答:RAM有两种,SRAM(静态RAM),它采用触发器电路构成一个二进制位信息的存储单元,这种触发器一般由6个晶体管组成,它读出采用单边读出的原理,写入采用双边写入原理;DRAM(动态RAM),它集成度高,内部存储单元按矩阵形式排列成存储体,通常采用行,列地址复合选择寻址法。ROM有5种,固定掩摸编程ROM,可编程PROM,紫外光檫除可编程EPROM,电可檫除的可编程EPROM,闪速存储器。

15. 若用4K*1位的RAM芯片组成8K*8为的存储器,需要多少芯片?A19—A0地址线

中哪些参与片内寻址,哪些用做芯片组的片选信号? 答:需要16片芯片;其中A11-A0参与片内寻址;A12做芯片组的片选信号。

16. 若系统分别使用512K*8、1K*4、16K*8、64K*1的RAM,各需要多少条地

址线进行寻址,各需要多少条数据线?

答:512K*8需要19条地址线,8条数据线。1K*4需要10条地址线,4条数据线。16K*8需要14条地址线,8条数据线。64K*1需要14条地址线,1条数据线。

17. 某微机系统的RAM容量为8K*8,若首地址为4800H,则最后一个单元的地址是多少? 答:最后一个单元的地址是:4800H+2^13-1 18. 什么是总线,微机中的总线通常分为哪几类?

答:是一组信号线的集合,是一种在各模块间传送信息的公共通路;有四类,片内总线,微处理器总线,系统总线,外总线。

19. 微处理器为什么需要用接口和外设相连接?

答:因为许多接口设备中,在工作原理,驱动方式,信息格式以及工作速度方面彼此相差很大,因此为了进行速度和工作方式的匹配,并协助完成二者之间数据传送控制任务。 20. 一般的I/O接口电路有哪四种寄存器,它们各自的作用是什么?

答:数据输入寄存器,数据输入寄存器,状态寄存器和控制寄存器。数据端口能对传送数据提供缓冲,隔离,寄存的作用 ;状态寄存器用来保存外设或接口的状态;控制寄存器用来寄存CPU通过数据总线发来的命令。

21. 8086最多可有多少级中断?按照产生中断的方法分为哪两大类? 答:有8级;按照产生中断的方法可分为硬件中断和软件中断。 22. 什么是中断?什么是中断向量?中断向量表的地址范围?

答:中断就是CPU在执行当前程序时由于内外部事件引起CPU暂时停止当前正在执行的程序而转向执行请求CPU暂时停止的内外部事件的服务程序,该程序处理完后又返回继续执行被停止的程序;中断向量是中断处理子程序的入口地址;地址范围是00000H-003FFH。 23. 中断向量表的功能是什么?若中断向量号分别为1AH和20H,则它们的中断向量在中断

向量表的什么位置上? 答:中断向量表的功能是当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入相应的中断服务子程序。1AH在中断向量表的位置是1AH*4=68H在中断向量表0000:0068处;20H在中断向量表的位置是80H在中断向量表0000:0080处。 24. 通常,解决中断优先级的方法有哪几种?

答:3种,软件查询确定优先级,硬件优先级排队电路确定优先级,具体中断屏蔽的接口电路。

25. 8259A通过级联的方式可以由几片构成最多多少级优先权的中断源。

答:8259A通过级联的方式由9片构成最多64级优先权的中断源。 26. 简述中断控制器8259A的内部结构和主要功能。

答:8259A的内部结构有数据总线缓冲器,读写逻辑电路,级联缓冲比较器,中断请求寄存器(IRR),中断屏蔽寄存器(IMR),中断服务寄存器(ISR),优先权判别器(PR),控制逻辑。

27. 8259A的内部寄存器中IRR、IMR、ISR三个寄存器的作用是什么? 答:见课本153页。

28. 8259A有哪些中断结束方式,分别适用于哪些场合。

答:8259A有2种中断结束方式:中断自动结束方式,中断非自动结束方式(一般中断和特殊中断);中断自动结束方式只适合有一块8259A,并且各中断不发生嵌套的情况。中断非自动结束方式只能适合与全嵌套方式下不能用与循环优先级方式。 29. 8259A对优先级的管理方式有哪几种,各是什么含义?

答:有4种,普通全嵌套方式,特殊全嵌套方式,自动循环方式,优先级特殊循环方式(详细见课本P159和P160)

30. 8259A的初始化命令字和操作命令字有哪些,其功能是什么;哪些应写入奇地址,哪些应写入偶地址。

答:8259A的初始化命令字ICW1,ICW2,ICW3,ICW4;操作命令字OCW1,OCW2,OCW3。(见课本P155到P158);ICW2,ICW3,ICW4,OCW1写如奇地址,ICW1,OCW2,OCW3为偶地址。 31.

简述8259A的初始化过程。

答:8259A的初始化编程,需要CPU向它输出一个2—4字节的初始化命令字, 输出初始化命令字的流程如图所示,其中ICW1和ICW2是必须的,而ICW3和ICW4需根据具体的情况来加以选择。各初始化命令字

的安排与作用分叙如下:

32. 8253有几个计数通道,每条计数通道有哪些信号线,其作用是什么?

答:8253有三个计数通道,每个计数通道有3条信号线:CLK:计数输入用于输入定时基准脉冲或计数脉冲.OUT:输出信号以相应的电平指示计数的完成或输出脉冲的波型.GATA:选通输入用于启动或禁止计数器的操作,以使计数器和计数输入信号同步。 33. 8253有几种工作方式,其特点是什么? 答:六种方式(见课本P224)

34. 8253的内部寄存器及各位的意义是什么?

答:8253的内部寄存器有四个,8位的控制寄存器:初始化时,将控制字写入该寄存器;16位的计数器初值寄存器,初始化是写入该计数器的初始值,其最大初始值为0000H;16位的减一计数器,计数器的初值由计数初值寄存器送入减法计数器,当计数输入端输入一个计数脉冲时,减法计数器内容减一;16位的输出锁存器用来锁存计数脉冲时,减法计数器内容减一。

35. 8255A的功能是什么,有哪几个控制字,各位的意义是什么?

答:8255A是一种通用的可编程程序并行I/O接口芯片.它有两个控制字,一个是方式选择控制字,它的作用是实现对8255A的各个端口的选择。一个是对C口进行置位或复位控制字. 它的作用是能实现对端口C的每一位进行控制。

36. 8255A的A口、B口、C口有哪几种工作方式,其特点是什么?C口有哪些使用特点? 答:8255A的A口可以工作在3种工作方式的任何一种,B口只能工作在方式0或方式1,C口则常常配合端口A和端口B工作,为这两个端口的输入/输出传输提供控制信号和状态

8、8086CPU中典型总线周期由____个时钟周期组成,其中T1期间,CPU输出______信息;如有必要时,可以在__________两个时钟周期之间插入1个或多个TW等待周期。 9、8259A共有___个可编程的寄存器,它们分别用于接受CPU送来的______命令字和________命令字。 二、简答题:

1、什么是信号的调制与解调?为什么要进行调制和解调?试举出一种调制的方式。 2、已有AX=E896H,BX=3976H,若执行ADD BX,AX指令,则结果BX,AX,标志位CF,OF,ZF各为何值?

三、阅读程序与接口芯片初始化: 1、源程序如下:

MOV CL,4

MOV AX,[2000H]

SHL AL,CL SHR AX,CL

MOV [2000H],AX

试问:?若程序执行前,数据段内(2000H)=09H,(2001H)=03H, 则执行后有(2000H)=_____,(2001H)=______。

?本程序段的功能_________________________。 2、源程序如下:

MOV AL,0B7H AND AL,0DDH XOR AL,81H OR AL,33H

JP LAB1 JMP LAB2

试问:?执行程序后AL=_______;

?程序将转到哪一个地址执行:__________。

3、源程序如下:

MOV CX,9

MOV AL,01H MOV SI,1000H NEXT: MOV [SI],AL INC SI

SHL AL,1 LOOP NEXT

试问:?执行本程序后有:AL=_____;SI=______;CX=______;

?本程序的功能是______________________________。 4、某系统中8253占用地址为100H~103H。初始化程序如下: MOV DX, 103H

MOV AL, 16H

OUT DX, AL SUB DX, 3 OUT DX, AL

试问:?此段程序是给8253的哪一个计数器初始化?安排工作在哪种工作方式?__________________;

?若该计数器的输入脉冲的频率为1MHZ,则其输出脉冲的频率为:___________。 5、已知某8255A在系统中占用88~8BH号端口地址,现欲安排其PA,PB,PC口全部为输出,PA,PB口均工作于方式0模式,并将PC6置位,使PC3复位,试编写出相应的初始化程序:

模式试题二 参考答案

一、填空题

1、01111011 10000011

2、F7?DCH 001001000111?10000110 BCD 3、取指令 执行指令

4、00000H~003FFH区 256个 4个 5、CPU复位以后执行第一条指令的地址 6、决定CPU工作在什么模式(最小/最大) 7、奇/偶错 帧格式错 溢出错 8、4个 地址 T3和T4 9、7个 初始化 操作 二、简答题

1、串行长距离通信时,需要利用模拟信道来传输数字信号,由于信道的频带窄,一般为300~3400HZ,而数字信号的频带相当宽,故传输时必须进行调制,以免发生畸变而导致传输出错。(3分)

调制是将数字信号?模拟信号。而解调则是相反。例如FSK制(调频制或称数字调频)可将数字“1”和“0”分别调制成2400HZ和1200HZ的正弦波信号。(2分)

2、BX=220CH (1分) AX=E896H (1分) CF=1 (1分) OF=0 (1分) ZF=0 (1分)

三、阅读程序与接口芯片初始化: 1、 (2000H)=39H (2001H)=00H

将(2000H),(2001H)两相邻单元中存放的未组合型BCD码压缩成组合型BCD码,并存入

(2000H)单元,0?(2001H) 2、37H LAB2 3、0 1009H 0

对数据段内1000H~1008H单元置数,依次送入1,2,4,8,16,32,64,128,0共九个 4、计数器0 工作于方式3 45.454KHZ 5、 MOV AL, 80H OUT 8BH,AL MOV AL,ODH OUT 8BH,AL

MOV AL,06H OUT 8BH,AL

模式试题三

一、填空题

1、将十进制数279?85转换成十六进制数、八进制数、二进制数及BCD码数分别为:________H,________Q,_____B, BCD。

2、字长为8位的二进制数10010100B,若它表示无符号数,或原码数,或补码数,则该数的真值应分别为______D,______D或______D。

3、已知BX=7830H,CF=1,执行指令:ADC BX,87CFH之后,BX=____________,标志位的状态分别为CF=_______,ZF=_______,OF=________,SF=__________。 4、8086中,BIU部件完成______功能,EU部件完成 _____功能。 5、8086中引脚BHE信号有效的含义表示________________。

6、8086正常的存储器读/写总线周期由________个T状态组成,ALE信号在__________状态内有效,其作用是______________。

7、设8086系统中采用单片8259A,其8259A的ICW2=32H,则对应IR5的中断类型号为___________H,它的中断入口地址在中断向量表中的地址为______________H。 二、简答及判断题

1、某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?试举例说明

2、8086CPU的FLAG寄存器中,状态标志和控制标志有何不同?程序中是怎样利用这两类标志的?

3、设采用16550进行串行异步传输,每帧信息对应1个起始位,7个数据位,1个奇/偶校验位,1个停止位,波特率为4800,则每分钟能传输的最大字符数为多少个? 三、读图和作图题

1、8086系统中接口连接关系如下图所示。要求回答以下问题: (1) 试分别确定8255,8253,8259及8251的端口地址;

(2) 设8255的PA口为输出,PB口为输入,试写出对PA口和PB口执行输入/输出操作的指令。

ALEAD7~AD0G373A7~A08086CPUM/IOA6A5A4C B AA7A0Y0Y1G1138G2AG2BY2Y3A2A1CS8253A1A0CSA2A18255A1A0A1CS8251A0A1CS8259C/D 8255的端口地址为:___________________________________; 8253的端口地址为:___________________________________; 8259的端口地址为:___________________________________; 8251的端口地址为:___________________________________; 对PA口操作的I/O指令为_______________________________; 对PB口操作的I/O指令为______________________________。

2、作图题。

系统采用4个接口芯片:8253,8251,8259及8255。要求8253的通道0用作实时时钟,每当定时时间到之后向8259的IR2送入中断申请信号。8253通道1用作方波发生器作为8251的收发时钟脉冲。8253通道0,通道1的门控信号由8255 PC口的PC3和PC2控制。

(1) 画出4个芯片之间控制线的连接图; (2) 8253的两个通道应分别工作在什么方式?

四、程序阅读题 1、源程序如下:

MOV AH, 0 MOV AL, 9 MOV BL, 8 ADD AL, BL

AAA AAD DIV AL

结果AL_________,AH=___________,BL=_____________。 2、源程序如下:

MOV AX, SEG TABLE ;TABLE为表头

MOV ES, AX

MOV DI, OFFSET TABLE MOV AL, ‘0’ MOV CX, 100 CLD

REPNE SCASB

问:1) 该段程序完成什么功能?

2) 该段程序执行完毕之后,ZF和CX有几种可能的数值?各代表什么含义?

3、源程序如下:

CMP AX, BX JNC L1 JZ L2 JNS L3 JNO L4 JMP L5

设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。 4、源程序如下:

MOV DX, 143H MOV AL, 77H OUT DX, AL MOV AX, 0 DEC DX DEC DX OUT DX, AL MOV AL, AH OUT DX, AL

设8253的端口地址为140H~143H,问: (1)程序是对8253的哪个通道进行初始化? (2)该通道的计数常数为多少?

(3)若该通道时钟脉冲CLK的周期为1μs,则输出脉冲OUT的周期为多少μs?

五、编程题

1、8255的编程。设8255的端口地址为200H~203H。

(1)要求PA口方式1,输入;PB口方式0输出;PC7~PC6为输入;PC1~PC0为输出。试写出8255的初始化程序。

(2)程序要求当PC7=0时置位PC1,而当PC6=1时复位PC0,试编制相应的程序。2、自BUFFER开始的缓冲区有6个字节型的无符号数:10,0,20,15,38,236,试编制8086

汇编语言程序,要求找出它们的最大值、最小值及平均值,分别送到MAX、MIN和AVI三个字节型的内存单元。要求按完整的汇编语言格式编写源程序。

模式试题三参考答案

一、填空题

1、117.D99H 427.6631Q 000100010111.110110011001B 0010 01111001.1000 0101 BCD

2、148D -20D -108D

3、BX=0000H CF=1 ZF=1 OF=0 SF=0 4、总线接口功能 指令的译码及执行功能 5、高8位数据线D15~D8有效

6、4 T1 给外部的地址锁存器提供一个地址锁存信号 7、35H 000D4H~000D7H 二、简答及判断题 1、∵ FFFF0

? FF00 1 0FEF0 自然丢失

故物理地址为0FEF0H。 指向该物理地址的CS,IP值不唯一。

例如:CS:IP=0000:FEF0H也指向该物理地址。

2、状态标志表示算术运算或逻辑运算执行之后,运算结果的状态,这种状态将作为一种条件,影响后面的操作。控制标志是人为设置的,指令系统中有专门的指令用于控制标志的设置或清除,每个控制标志都对某一特定的功能起控制作用。

3、每帧占1?7?1?1=10位,波特率为4800 bit/s,故每分钟能传送的最大字符数为 28800(个)

4800?60 28800个 三、读图和作图题

10 ? 1、 (1) A7 A6 A5 A4 A3 A2 A1 A0

1 1

0 0 0 任意 ? ? 0 Y0 0 0 1 任意 ? ? 0 Y1 0 1 0 任意 ? ? 0 Y2 0 1 1 任意 ? ? 0 Y3 的端口地址为 90H, 92H, 94H, 96H 的端口地址为 B0H, B2H,

1

1

? 8255的端口地址为 80H, 82H, 84H, 86H

8253

8259的端口地址为 A0H, A2H,

8251

(2) OUT 80H, AL

IN AL, 82H 2、 (1) 控制线连接图如图所示。 (2) PC38255PC2GATE08253OUT1GATE1OUT0IR28259?通道0工作在方式2—分频发生器; 通道1工作在方式3—方波速率发生器 8251R×CT×C

四、程序阅读题

1、AL=01H AH=00 H BL=08H

2、(1) 从目的串中查找是否包含字符 ‘0’,若找到则停止,否则继续重复搜索。 (2) ZF=1, 说明已找到字符 ZF=0, 说明未找到字符

CX?0,说明中途已找到字符退出

CX=0,且ZF=0说明串中无字符 ‘0’

3、 ∵ 74C3H

? 95C3H DF00H

且有:CF=1, ZF=0, SF=1, OF=1 ? 程序将转到L5标号处执行。

4、 (1) 程序对8253的通道1进行初始化。 (2)计数常数为10000D,BCD计数。

(3)工作在方式3,方波速率发生器 周期=10000?1μs=10000μS=10ms

五、编程题

1、(1) MOV DX, 203H MOV AL, 10111000B OUT DX, AL

(2) MOV DX, 202H IN AL, DX MOV AH, AL TEST AL, 80H

JNZ NEXT1

MOV DX, 203H

MOV AL, 00000011B ;对PC1置位

OUT DX, AL (2分) NEXT1: MOV AL, AH TEST AL, 40H JZ NEXT2

MOV AL, 00000000B ; 对PC0复位 MOV DX, 203H OUT DX, AL

NEXT2:……… (3分) 2、 DATA SEGMENT

BUFER DB 10,0,20,15,38,236 MAX DB 0 MIN DB 0

AVI DB 0

DATA ENDS (2分)

STACK SEGMENT PARA STACK‘STACK’ DW 100 DUP (?) STACK ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK (1分)

START PROC FAR

BEGIN: PUSH DS MOV AX,0 PUSH AX

MOV AX,DATA MOV DS,AX

LEA DI,BUFFER

MOV DX,0 ;使DH=0,DL=0 MOV CX,6

MOV AX,0 ; 和清0 MOV BH,0 ; 最大值

MOV BL,0FFH ; 最小值 (2分) LOP1: CMP BH,[DI]

JA NEXT1 ; 若高于转移 MOV BH,[DI]; 大值?BH NEXT1: CMP BL,[DI] ;

JB NEXT2 ; 若低于转移

MOV BL,[DI]; 小值?BL (2分) NEXT2: MOV DL,[DI]; 取一字节数据 ADD AX,DX ; 累加和 INC DI

LOOP LOP1 MOV MAX,BH;送大值

MOV MIN, BL;送小值 (3分) MOV DL, 6

DIV DL, ;求平均值 MOV AVI, AL;送平均值

RET START ENDP CODE ENDS

本文来源:https://www.bwwdw.com/article/oejv.html

Top