微机原理与接口技术 - 期末考试试题

更新时间:2023-03-14 23:38:01 阅读量: 教育文库 文档下载

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

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

答:三部分:微型计算机(微处理器,存储器,I/0接口,系统总线),外围设备,电源。 2. 8086的存储器空间最大可以为多少?怎样用16位寄存器实现对20位地址的寻址?完成

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

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

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

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

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

7. 在80x86中,什么是逻辑地址、线性地址、物理地址?答:线性地址是连续的不分段的

地址;逻辑地址是由程序提供的地址;物理地址是内存单元的实际地址。

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

中哪些参与片内寻址,哪些用做芯片组的片选信号?

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

9. 若系统分别使用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条数据线。 10. 一般的I/O接口电路有哪四种寄存器,它们各自的作用是什么?

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

11. 8086最多可有多少级中断?按照产生中断的方法分为哪两大类?答:有8级;按照产生中

断的方法可分为硬件中断和软件中断。

12. 什么是中断?什么是中断向量?中断向量表的地址范围?

13. 答:中断就是CPU在执行当前程序时由于内外部事件引起CPU暂时停止当前正在执行

的程序而转向执行请求CPU暂时停止的内外部事件的服务程序,该程序处理完后又返回继续执行被停止的程序;中断向量是中断处理子程序的入口地址;地址范围是00000H-003FFH。

14. 中断向量表的功能是什么?若中断向量号分别为1AH和20H,则它们的中断向量在中断

向量表的什么位置上?答:中断向量表的功能是当中断源发出中断请求时,即可查找该表,找出其中断向量,就可转入相应的中断服务子程序。1AH在中断向量表的位置是1AH*4=68H在中断向量表0000:0068处;20H在中断向量表的位置是80H在中断向量表0000:0080处。

15. 通常,解决中断优先级的方法有哪几种?答:3种,软件查询确定优先级,硬件优先级排队电路确定优先级,具体中断屏蔽的接口电路。 16. 简述中断控制器8259A的内部结构和主要功能。

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

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

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

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

答:8253的内部寄存器有四个,8位的控制寄存器:初始化时,将控制字写入该寄存器;16位的计数器初值寄存器,初始化是写入该计数器的初始值,其最大初始值为0000H;16位的减一计数器,计数器的初值由计数初值寄存器送入减法计数器,当计数输入端输入一个计数脉冲时,减法计数器内容减一;16位的输出锁存器用来锁存计数脉冲时,减法计数器内容减一。8255A的功能是什么,有哪几个控制字,各位的意义是什么?答:8255A是一种通用的可编程程序并行I/O接口芯片.它有两个控制字,一个是方式选择控制字,它的作用是实现对8255A的各个端口的选择。一个是对C口进行置位或复位控制字. 它的作用是能实现对端口C的每一位进行控制。

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

21. 什么是波特率?若在串行通信中的波特率是1200b/s,8位数据位,1个停止位,无校验位,传输1KB的文件需要多长时间?答:波特率是单位时间内通信系统所传送的信息量。 需要多长时间=1024/(1200/10)=8.53s

22. 对8255A进行初始化,要求端口A工作于方式1,输入;端口B工作于方式0,输出;端口C的高4位配合端口A工作,低4位为输入。设控制口的地址为006CH。 答:由题知应为10111001H(B9H) MOV AL,B9H MOV DX,006CH OUT DX,AL

23. 设8255A的四个端口地址分别为00C0H、00C2H、00C4H和00C6H,要求用置0、置1的方法对PC6置1,对PC4置0。

答:MOV DX,00C0H ;端口地址 MOV AL,00001101 ;对PC6置1 OUT DX,AL

MOV AL,00001000 ;对PC4置0

OUT DX,AL

24. 试按照如下要求对8259A进行初始化:系统中只有一片8259A,中断请求信号用电平触发方式,下面要用ICW4,中断类型码为60H、61H、62H……67H,用全嵌套方式,不用缓冲方式,采用中断自动结束方式。设8259A的端口地址为94H和95H。 答:MOV DX,94H ;偶地址 MOV AL,00011011B ;ICW1 OUT DX,AL

MOV AL,10011111B ;ICW2 ,中断源在IR7 MOV DX,95H ;奇地址 OUT DX,AL

MOV AL,00000011B ;ICW4 OUT DX,AL

25. 试编程对8253初始化启动其工作。要求计数器0工作于模式1,初值为3000H;计数器1工作于模式3,初值为100H;计数器2工作于模式4,初值为4030H。设端口地址为40H、41H、42H和43H。

答:MOV AL,00011110H ; 控制字 OUT 43H,AL

MOV AL,3000H ;计数初值 OUT 40H,AL

MOV AL,01010110H ; 计数器1 OUT 43H,AL MOV AL,100H OUT 41H,AL

MOV AL,10011000H ; 计数器2 OUT 43H,AL MOV AL,4030H OUT 42H,AL

5.设有一个具有16位地址和8位数据的存储器,问:(1)该存储器能存书多少个字节的信息?(2)如果存储器由8K×4位RAM芯片组成,需要多少片?(3)需要地址多少位做芯片选择?答:(1)因为8位二进制数为1个字节,所以16位地址能存储216=64KB个字节的信息; (2)需要64K×8/8K×4=16片RAM

(3)因为需要16片来构成存储器,而16片需要4位地址线进行译码输出,故需要4位做芯片选择。

7.虚拟存储器的含义是什么?虚拟存储器是以存储器访问的局部性为基础,建立在主存-辅存物理体系结构上的存储管理技术。在存储系统中,由于主存容量不能满足用户的需要,因而引入辅存作为后援。即辅存做主存用,扩大编程者的使用空间。

已知8255A的地址为0060H~0063H,A组设置方式1,端口A作为输入,PC6PC7作为输出,B组设置方式1,端口B作为输入,编制初始化程序.。MOV DX, 0063H MOV AL, 00110111B OUT DX, AL

2、作图题。

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

(1) 画出4个芯片之间控制线的连接图;

PC38255PC2GATE08253GATE1OUT0OUT1IR28259?

(2) 8253的两个通道应分别工作在什么方式?

8251R×CT×C

通道0工作在方式2—分频发生器;通道1工作在方式3—方波速率发生器

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的哪个通道进行初始化?程序对8253的通道1进行初始化。 (2)该通道的计数常数为多少?计数常数为10000D,BCD计数。

(3)若该通道时钟脉冲CLK的周期为1μs,则输出脉冲OUT的周期为多少μs? 工作在方式3,方波速率发生器 周期=10000?1μs=10000μS=10ms 1、8255的编程。设8255的端口地址为200H~203H。

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

1、8086 CPU有多少根地址线?多少根数据线?它最大直接寻址范围是多少?一次对外数据传送多少BIT二进制数? 答:8086 CPU有20根地址线;16根数据线;它最大直接寻址范围1MB;一次对外数据传送16BIT二进制数。

2、CPU(或主机)与接口之间有哪几种传送信息的方式?各应用在什么场合?在这些传送方式中可使用我们所学过的哪些可编程接口芯片? 答:(1)无条件传送方式;用于要求不高的场合如LED显示等;可用8255的工作方式0,(2)查询式传送;用于可靠性高且速率不高的场合如数据采集等;可用8255的工作方式1、2,

(3)中断传送;用于可靠性高且效率高的场合;可用8255的工作方式1、2和8259, (4)DMA传送;用于可靠性高且效率高、速率高的场合;可用8237。

四、接口及程序设计(15分):在1000H开始的内存中,放有1000个ASCII字符,请设计一程序, 将 这串ASCII字符以异步串行通信方式从8255A PB0输出,采用偶校验、一位起始位、一位终止位、波特率500 (可调用1ms软件定时程序 ―D1MS‖)。 8255A接口连接图如下:

8255A工作方式控制字如下∶ D7 D6 D5 D4 A口 D3 C4~7 D2 D1 D0 C0~3 特征位 A组方式 B组方式 B口

答:程序如下: MOV SI ,1000H MOV CX ,1000

MOV DX ,30FH ;(口地址共4分) MOV AL ,10000000B ;(控制字1分) OUT DX,AL ; MOV DX,30DH

MOV AL ,0FFH ;发停止位 OUT DX ,AL CALL D1MS CALL D1MS L1: MOV BL ,8 MOV AL ,0

OUT DX ,AL ;发起始位 CALL D1MS CALL D1MS MOV AL ,[SI] AND AL ,AL JP L2

OR AL ,80H

L2: OUT DX ,AL CALL D1MS CALL D1MS ROR AL,1 DEC BL JNZ L2

MOV AL ,0FFH OUT DX ,AL CALL D1MS CALL D1MS

INC SI LOOP L1 HLT ;

四、若用2114存储器芯片组成2KB RAM,地址范围为D000H~D7FFH,问地址线、数据线及相关的控制线如何连接?(所有己知条件如图所示) (15分)

六、 某系统中8253-5地址为340H~343H,输入频率为10MHZ脉冲信号,输出为1HZ,占

空比为1:1的脉冲信号,请写出初始化程序并画出相应电路图及地址译码连接图。

提示∶1. 地址总线只用A0~A9,控制线用IOR、IOW,译码器可采用逻辑电路与LS138译码器的组合; 2. 8253的工作方式命令字如图。

MOV DX,343H

MOV AL,00110110B OUT DX,AL MOV AX,10000 MOV DX,340H OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,343H

MOV AL,01110110B OUT DX,AL MOV DX,341H MOV AX,1000 OUT DX,AL MOV AL,AH OUT DX,AL ┇

2、什么是总线周期 一个基本的总线周期由多少个T构成 答:CPU每访问一次总线所花的时间称为总线周期,一个基本的总线周期由四个T周期构成。

六.接口题:某8255的A口、B口连接八个LED显示器(如图所示,共阴极),请设计一程序,使这八个LED显示器DG0~DG7分别循环显示0~7,每个LED每次只显示一秒钟(有1秒钟延时子程序―D1STIME‖可调用)。(15分) 8255A工作方式控制字如下∶ D7 D6 D5 D4 A口 D3 C4~7 D2 D1 D0 C0~3 特征位 A组方式 B组方式 B口

LED数码管段码表(共阴) TAB 0 1 2 3 4 5 6 7 8 9 p g f e d c b a 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 0 0 1 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 1 ……

MOV DX,30FH MOV AL,80H OUT DX,AL L1: MOV CX,8 LEA SI,TAB MOV BL,0FEH L2: MOV AL,[SI] MOV DX,30CH OUT DX,AL MOV AL,BL MOV DX,30DH OUT DX,AL CALL D1STIME INC SI ROL BL LOOP L2 JMP L1 HLT

1 .存储器系统连接如下图,请分别写出图中第一组(1#、

2#)、第二组(3#、4#)的地址分配范围。(写出具体步骤)

1. A19 A18 A17 A16 A15 A14 A13 A12 – A0 0 …… 0 第一组范围: 0 0 1 1 1 1 0

1 …… 1 2分 即为:3C000H—3EFFFH 3分 A19 A18 A17 A16 A15 A14 A13 A12 – A0

0 …… 0 第二组范围: 0 0 1 1 0 0 1

1 …… 1 2分 即为:32000H—33FFFH 3分

2 . 计数器/定时器8253,振荡器(频率为1MHZ)连线如下图所示,其中振荡器的脉冲 输出端接通道0的计数输入端CLK0,设8253的端口地址为180H~186H。

(1)该电路中通道0的OUT0输出2KHZ连续方波,通道0的计数初值为多少(写出计算 式)?GATE0应接何电位?在图上画出。N0=1MHZ/2KHZ=500,GATE0接高电平,+5V;

若要8253的OUT1端,能产生周期为1秒的连续方波,该如何解决?在图上画出。 可将OUT0与CLK1相连,作为输入时钟脉冲; (3)写出实现上述功能的8253初始化程序。

N1=2KHZ/2HZ=1000 计数器0:MOV DX,186H

MOV AL,00110111B OUT DX,AL MOV DX,180H

MOV AL,00H OUT DX,AL MOV AL,05H

OUT DX,AL 计数器1:MOV DX,186H

MOV AL,01110111B OUT DX,AL MOV DX,182H

MOV AL,00H OUT DX,AL MOV AL,10H

OUT DX,AL

3 .设8255A的4个端口地址为90H~93H,将A口置成方式0输出,B口置成方式1输 入,C作为输入口。要求编制8255A初始化程序并设计译码电路(可选用任意芯片),只用8位地址线(A0~A7)。

3.MOV AL,10001111B

OUT 93H,AL 2分 IN AL,91H 1分 OUT 90H,AL 1分

译码电路连接如下: 6分

4 .通过8259A产生中断使8255A的端口A经过反相驱动器连接一共阴极七段发光二极管显示器;端口B是中断方式的输入口。设8259A的中断类型码基值是32H。8255A口地址为60H-63H,8259A端口地址为20H、21H。试完成以下任务:

(1)设系统中只有一片8259A,中断请求信号为边沿触发方式,采用中断自动结束方式、全嵌套且工作在非缓冲方式,试完成8259A的初始化编程。(2)若使LED上显示E,端口A送出的数据应为多少?如显示O端口A送出的数据又为多少?编写程序实现在LED上先显示E,再显示O的程序。 4.(1)MOV AL,0001011B

OUT 20H,AL 1分 MOV AL,00110010B

OUT 21H,AL 2分 MOV AL,00010011B

OUT 21H,AL 2分

(2)如果显示E,则端口A送出的数据是30H;如果显示O,则端口A送出的数据是01H; 程序如下:MOV AL,10000000B

OUT 63H,AL 2分 MOV AL,30H

OUT 60H,AL 2分 MOV AL,01H

OUT 60H,AL 2分

3. 某系统外接电路如图5,8255A口地址为2F0H~2F3H,请设计源程序,一次性的测试开关的位置,当K闭合时,LED亮,K断开时LED灭(提示:C口高4位应为方式0输入,低4位为方式0输出)。

CODE SEGMENT

ASSUME CS:CODE BEG: ;C口初始化 ;读C口 ;测试PC7并组织输出数据 ;数据写入C口使LED亮/灭 ;返DOS CODE ENDS END BEG

4.设8253的选通地址为240H~243H,采用BCD计数,计数器2输出用于申请中断。如果计数器2的输入时钟频率为20KHz,输出信号每秒引起100次中断。要求 (1) 算出计数初值,(2) 编写初始化程序。(20分) 3. 解:

CODE SEGMENT ASSUME CS:CODE BEG: MOV DX, 2F3H MOV AL, OUT DX, AL ;C口初始化 MOV DX, 2F2H IN AL, DX ;读C口 TEST AL, 10000000B ;测试PC7并组织输出数据 JNZ XX MOV AL, 00000001B OUT DX, AL ;数据写入C口使LED亮/灭 JMP ZZ XX: MOV AL, 00000000B OUT DX, AL ; ZZ: MOV AH 4CH INT 21H ;返DOS CODE ENDS END BEG

4. 解:

(1) 初值为20KHZ/100=200或C8H (2) 编程: MOV DX,243H MOV AL,10110001B(或B1H) OUT DX,AL ; MOV DX,242H MOV AL,8CH OUT DX,AL ;

MOV AL,00H (该句也可以为:XOR AL,AL) OUT DX,AL ;

01.请画出微机系统的框图

02.8086 CPU由哪两部分组成?8086 CPU中有哪些寄存器? 答①:由总线接口部件BIU和指令执行部件EU组成。

答②:共五组,分别为:数据寄存器组:16位,累加器AX、基址寄存器BX、计数寄存器CX、数据寄存器DX。指针寄存器组:16位,堆栈指针寄存器SP、基址指针寄存器BP。变址寄存器组:6位,源变址寄存器SI、目的变址寄存器DI。段寄存器组:16位,代码段寄存器CS、堆栈段寄存器SS、数据段寄存器DS、附加段寄存器ES。控制寄存器组:16位,指令指针寄存器IP、标志寄存器PSW。

01.下图所示的存储器系统中,RAM和EPROM的存储容量各是多少?RAM和EPROM存储器分配的地址范围各是多少?RAM的存储容量=211字节,EPROM的存储容量=212字节

A19 A18 1 A17 1 A16 1 A15 1 A14 0 A13 0 A12 1 A11 X A10 0 … 0 A0 0 RAM 1 EPROM 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 0 0 1 1 1 X 0 1 1 0 1 1 0 1 1 0 1 ∴RAM分配的地址范围是F9000H~F97FFH或F9800H~F9FFFH,EPROM分配的地址范围是FD000H~FDFFFH 04.设某计算机控制系统中用8253的通道0作为计数器,口地址为60H,计数频率为1MHz,计数控制信号GATE0恒为高电平;控制字寄存器口地址为63H;计数器计到0时的输出信号用做中断请求信号。请分析执行下列初始化程序段后,发出中断请求信号的周期T是多少? MOV AL,34H OUT 63H,AL MOV AX,10000 OUT 60H,AL MOV AL,AH OUT 60H,AL

∵ 8253的控制字为34H。计数初值N=10000。

∴ 通道0设置:方式2(波特率发生器方式),二进制计数,先读/写低字节、再读/写高字节预置初值。

∴ 在OUT0端输出一脉冲频率为

fOUT0?1fCLK010000的周期性负脉冲。

fOUT0?11MHzfCLK0??100Hz1000010000

T?∴ 中断请求信号的周期T为:

1fOUT0?1?0.01s100Hz

05.已知某8088微机系统包括8255,8253两个可编程接口电路。其中8253三个计数器分别工作在不同的方式下,可以为A/D转换器提供可编程的采样频率和采样时间;8255A的PB0可用于检测按键开关的位置,PA7可根据PB0的状态决定是否点亮LED指示灯。设系统所要求有关硬件连线已经全部接好,片选信号PS2,PS3的地址是08H-0BH,0CH-0FH,如图

所示,

(1) 根据8255A的A口和B口的连接方式,写出接口初始化程序。MOV AL,l0000010B ;A,B口方式0,A口输出,B口输入 OUT 0BH,AL

(2) 图中给出了8253各个计数器要求的工作方式,设已知外部时钟频率为F,计数器0的计数初值为L(字节型),工作在方式2;计数器1的计数初值为M(字型),工作在方式1;计数器2的计数初值为N(字型),工作在方式3,L、M、N是程序已经定义的变量,L、M为二进制数,N为BCD码。试按上述要求完成8253的初始化程序。 MOV AL,14H ;0通道方式2 OUT 0FH,AL

MOV AL,L ;0通道计数初值L OUT 0CH,AL

MOV AL,72H ;1通道方式l MOV 0FH,AL

MOV AX,M ;1通道初值M(字型), OUT 0DH,AL MOV AL,AH OUT 0DH,AL

MOV AL,B7H ;2通道方式3,BCD码 0UT OFH,AL

MOV AX,N ;2通道初值N(字型), OUT 0EH,AL MOV AL,AH OUT 0EH,AL

(3) 设计一个程序片段,使8255A检测PB0的输入状态,当PB0=1时使LED灯亮。 IN AL,09H ;读B口状态

K1:TEST 01H ;测试PBO=l否 JZ,K1 ;不为1,K1

MOV AL,OOH ;PB0=1,PA0=0,点亮LED OUT 08H,AL

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

Top