当前位置:文档之家› 微机原理与接口黄玉清版技术期末自测题

微机原理与接口黄玉清版技术期末自测题

《微机原理及应用》期末自测题一、基本概念与术语1、8086是()位计算机。

8086地址线有()条,可直接寻址的空间最大为()。

2、总线周期是指()。

基本总线周期有()T状态。

Tw状态是指()。

3、8086CPU允许的I/O地址线最多可达()条,最大寻址I/O空间为()。

4、8086CPU由()两部分组成,其功能为()。

其中8086CPU中标志寄存器的作用是(),指令队列的作用是(),20位地址加法器的作用是()。

代码段物理地址由CPU的()两个寄存器确定。

堆栈段物理地址由CPU的()两个寄存器确定。

5、8086中断源有()个。

8086中断服务程序入口地址由( )组成。

中断类型号为20H,其中断向量为()。

6、I/O指令IN/OUT,传送数据的寄存器为(),间接寻址时使用寄存器(),其中IN AL,DX的含义是()。

OUT 60H,AL的含义是()。

7、一片8259A可以管理()级中断;3片8259A可以管理()级中断。

8、硬件中断是(外部引发?随机的?执行总线周期?中断类型码由?提供),软件中断是(内部引发?确定的?不执行总线周期?中断类型确定?)软件中断优先级与硬件中断优先级相比,()的级别高。

9、在中断服务程序结束前,为正确返回,必须设置一条指令()。

在子程序调用结束前,为正确返回,必须设置一条指令()。

10、若中断控制器8259的中断请求寄存器IRR状态为10100000B,说明()。

ISR状态为10100000B说明()。

11、可编程定时器8253的地址有()个。

共有()独立定时通道。

工作方式有()个。

12、并行接口8255有()个数据端口,有()种工作方式。

13、假设8253的端口地址为40H~43H,那么控制端口地址为(),通道0、1、2的端口地址为()。

14、假设8255的端口地址为330H~333H,那么控制端口地址为(),端口A、B、C的地址为()15、定时器8253的门控信号GATE作用是(),CLK端的作用是(),OUT端作用是()。

16、初始化定时器8253需要先写(),后写()。

17、伪指令的作用是(),()产生机器代码。

18、输入输出指令中,数据寄存器由()寄存器指出。

A、AL/AXB、BXC、CXD、DX19、以下关于可编程计数/定时器8253说法错误的是()。

A).有3个独立的16位计数/定时器B).每个计数/定时器都有6中工作方式C).每个定时/计数器都有时钟输入CLK、定时输出OUT和门控信号GATAD).每个定时/计数器都用二进制计数,不能用BCD码计数二、简单应用与简答题1、简述微型计算机的组成。

2、总线分为哪几种类型?微型计算机采用总线结构有什么优点?3、8086 CPU在内部结构上由哪几部分组成?其功能是什么?4、8086的总线接口部件由那几部分组成? 其功能是什么?5、8086的执行单元(部件)由那几部分组成?有什么功能?6、简述8086CPU的流水线思想,与传统计算机有何不同。

7、8086和8088是怎样解决地址线和数据线的复用问题的? ALE信号何时处于有效电平?8、计算机对I/O端口编址时通常采用哪两种方法?在8086/8088系统中,用哪种方法对I/O端口进行编址?9、一般的IO接口电路安排有哪三类寄存器?它们各自的作用是什么?10 简述CPU与外设进行数据交换的几种常用方式与特点。

11、简述条件传送方式的工作过程,主要适用的场合。

12、8086 CPU响应中断的条件?8086 CPU响应中断后自动完成的任务是什么?13、软件中断有哪些特点?硬件中断有那些特点?14、什么是中断向量?它放在哪里?对应于类型号1CH的中断向量在哪里?如1CH中断程序从5110H :2030H开始,则中断向量应怎样存放?15、简述定时器/计数器芯片8253的主要功能。

说明OUT、CLOCK与GATE信号的作用。

16、8253内部有几个独立通道?8253有几种工作方式?初始化8253的步骤是什么?若8253端口地址为200H-203H,对应的端口是哪个?17、并行接口8255有几个数据端口?若端口地址为300H-303H,对应的端口是哪个?怎样初始化8255?18、假设8255A的端口A工作于方式0,外设需要提供两个联络信号,一个为输出选通,一个为外设就绪信号输入,试选择端口并说明理由。

19、中断控制器8259的主要功能?简述8259的工作过程。

三、编程应用题1、编程计算((X+Y)*10)+Z)/X,X、Y、Z都是16位无符号数,结果存在RESULT开始的单元。

2、将BUF1开始的100字节传送到BUF2开始的单元,然后从中检索字符“#”,并将此单元换成空格字符。

3、编写一段程序,比较两个5字节的字符串OLDS和NEWS,若相同,在RESULT置0,否则置0FFH。

4、累加数组中的元素,将和存于SUM开始单元,数据段定义如下DA TA SEGMENTARRAY DW 10,10,12,4,5,6,7,8,9,10COUNT DW ($-ARRAY)/2SUM DW ?,?DA TA ENDS5、编写程序完成求1+2+3+……N的累加和,直到累加和超过1000为止。

统计被累加的自然数的个数送CN单元,累加和送SUM。

6、从给定串中寻找最大值,并放到MAX单元,元素放在BUFFER开始的字节单元中。

7、把BUF表中的字节元素按值的大小升序排列。

数据段定义如下:BUF DB 10,32,56,11,90,56,89,21N = $-BUF8、类型号为20H的中断服务程序入口符号地址为INT-5,试写出中断向量的装入程序片断。

9、设一个8253的计数器0产生周期为20ms的定时信号,计数器1产生周期为100ms的定时信号。

设外部时钟频率为f=2MHZ,端口地址为330H~333H。

试对它进行初始化编程。

10、已知某8253占用I/O空间地址为40H~43H,设定时器0、定时器1工作于方式3,外部提供一个时钟,频率f=2MHZ。

要求定时器1连续产生5ms的定时信号,定时器0连续产生5秒的定时信号。

11、用8255A控制三个发光二极管依秩序循环显示。

假设开关闭合时,点亮发光二极管,开关断开时息灭二极管。

(1)画出原理图,并说明工作原理;(2)选择8255工作方式;(3)编写8255初始化程序与控制程序。

12、8255连接一组开关与一组LED显示器,如图所示。

开关状态用LED显示,若闭合,则点亮。

8255端口地址为310H~313H。

(1)选择8255工作方式;编写8255初始化程序与控制程序。

四、常用指令与读程序1、8086 CPU执行如下指令后的结果,以及标志CF、ZF的值。

MOV AL, 80HSUB AL, 10H ;(AL)=?ADD AL, 89H ;(AL)=?,CF=?,ZF=?2、CPU执行如下指令后的结果。

MOV AX,1234HMOV BX,5678HPUSH AXPOP CXAX=?, BX=?, CX=?3、ORG 1000HTABLE DW 0,1,2,3N EQU $-TABLEZER DW 8 DUP(0, 2 DUP(1))写出执行下列指令结果.MOV AX, TABLEMOV BX, OFFSET TABLEMOV CX, NMOV DX, LENGTH ZER3、单独执行下列指令的结果MOV AL,10110101BAND AL,00011111BOR AL,11000000BXOR AL,00001111B4、单独执行下列指令的结果假设(AL)=10101111B,CF=0,CL=4,写出分别执行下列指令后的结果以及标志位CF、ZF的值。

SHL AL,CLSHR AL,CLROL AL,CL6、读程序,写出结果。

MOV AL,5BHTEST AL,80HJZ LPMOV BL,1JMP STOPLP:MOV BL,0HLT执行上述程序段后AL=? BL=?五、程序设计与完善1、读程序,写出结果。

BUF DB 8,2,3,4COUNT EQU $-BUF……LEA SI,BUFMOV CX,COUNT(CALL ADDONE );填空,调用子程序ADDONEHLTADDONE PROC NEARADD BYTE PTR[SI],1INC SILOOP DONRETADDONE ENDP(1)执行上述程序段后BUF 存储区的内容为:、、、。

(2)给程序加上完整段定义。

(3)给程序加上注释,说该程序功能。

2、读程序并完善。

AR1 DB 1,2,3,4,5,7N = $-AR1AR2 DB N DUP(0)......MOV CX,NMOV SI,offset AR1 ;取AR1偏移地址送SI寄存器MOV DI,offset AR2again: MOV AL,[SI]MOV [DI],AL ;AL内容送数据到DI所指单元INC DIINC SILOOP again ;循环again1)程序执行前,AR2单元内容为:2)程序执行后,AR2单元内容为:3)给程序加上注释,说明程序功能;4)给程序加上完整段定义。

3、(习题5.7, 教材P145)现有一输入设备,其数据端口的地址为FFE0H,并于端口FFE2H提供状态,当其D0位为1时表明输入数据备好。

采用查询方式进行数据传送的程序段,要求从该设备读取100个字节并输入到从2000H开始的内存中。

按要求完善程序,写出完整段定义。

;--------------------补充数据段定义--------------------;数据段段开始ORG 2000H ; 定位到2000H单元BUF 120 DUP(0) ; 定义输入缓存区;数据段段结束;--------------------补充代码段定义----------START:MOV SI,offset BUF ;初始化数据区地址MOV CX,100;---------------查询时输入-----------------LL: MOV DX,0FFE2H ;状态口地址送DXIN AX,DX ;读状态到ALTEST AL,01H ;测试外设状态是否满足就绪?JZ LL ;不满足,继续读状态MOV DX,0FFE0H ;就绪,准备输入数据IN AX,DX ;从输入端口读取数据CALL delay ;延时MOV [SI],AX ;存数据INC SI ;准备接受下一个数据LOOP LL ;数据没有输入完,继续MOV AH,4CHINT 21HDELAY PROC…… ;程序略RETDELAY ENDPCODE ENDS ;代码段定义结束END START。

相关主题