西南科技大学微机原理期末自测题.docx
《西南科技大学微机原理期末自测题.docx》由会员分享,可在线阅读,更多相关《西南科技大学微机原理期末自测题.docx(12页珍藏版)》请在冰点文库上搜索。
![西南科技大学微机原理期末自测题.docx](https://file1.bingdoc.com/fileroot1/2023-5/16/d4a664f4-ec9b-4627-b174-5b4f3beb585b/d4a664f4-ec9b-4627-b174-5b4f3beb585b1.gif)
西南科技大学微机原理期末自测题
《微机原理及应用》期末自测题
一、基本概念与术语
1、现代计算机中表达信息采用数进行编码,8086是位计算机。
2、8086地址线有条,可直接寻址的空间最大为。
3、总线周期是指;基本总线周期有T状态;Tw状态是指。
4、8086CPU允许的I/O地址线最多可达条,最大寻址I/O空间为。
5、8086CPU由两部分组成,其功能为。
其中8086CPU中标志寄存器的作用是,指令队列的作用是,20位地址加法器的作用是。
6、代码段物理地址由CPU的两个寄存器确定。
堆栈段物理地址由CPU的两个寄存器确定。
7、8086CPU预取指令存放于;段寄存器CS和的内容始终指向顺序存储的下一字节指令。
8、8086中断源有个。
8086中断服务程序入口地址由组成。
中断类型号为20H,其中断向量为。
9、8086CPU中断源包含硬件中断和软件中断,属于软件中断。
10、I/O指令IN/OUT,传送数据的寄存器为,间接寻址时使用寄存器,其中INAL,DX的含义是。
OUT60H,AL的含义是。
11、一片8259A可以管理级中断;3片8259A可以管理级中断。
12、硬件中断是(外部引发随机的执行总线周期中断类型码由提供),软件中断是(内部引发确定的不执行总线周期中断类型确定)软件中断优先级与硬件中断优先级相比,的级别高。
13、在中断服务程序结束前,为正确返回,必须设置一条指令。
在子程序调用结束前,为正确返回,必须设置一条指令。
14、若中断控制器8259的中断请求寄存器IRR状态为B,说明。
ISR状态为B说明。
15、可编程定时器8253的地址有个。
共有独立定时通道。
工作方式有个。
16、并行接口8255有个数据端口,有种工作方式。
17、假设8253的端口地址为40H~43H,那么控制端口地址为,通道0、1、2的端口地址为。
18、假设8255的端口地址为330H~333H,控制端口地址为,端口A、B、C的地址为。
19、定时器8253的门控信号GATE作用是,CLK端的作用是,OUT端作用是。
20、初始化定时器8253需要先写,后写。
21、伪指令的作用是,产生机器代码。
22、输入输出指令中,数据寄存器由()寄存器指出。
A)AL/AXB)BXC)CXD)DX
23、以下关于可编程计数/定时器8253说法错误的是()。
A).有3个独立的16位计数/定时器
B).每个计数/定时器都有6中工作方式
C).每个定时/计数器都有时钟输入CLK、定时输出OUT和门控信号GATA
D).每个定时/计数器都用二进制计数,不能用BCD码计数
24、汇编语言程序中用于指定段和段寄存器之间关系的伪指令是(A(P95))。
A)ASSUMEB)EQUC)SEGMENTD)ORG
25、下列指令中,能够实现当操作结果为零,转向标号GOON功能的是()。
A)JBGOONB)JAGOONC)JLGOOND)JZGOON
26、在8255三种工作方式中,方式1和方式2需要提供“握手”信号,该信号由()端口提供。
A)PA端口B)PB端口C)PC端口D)PA、PB端口
二、简单应用与简答题
1、简述微型计算机的组成。
2、总线分为哪几种类型微型计算机采用总线结构有什么优点
3、8086CPU在内部结构上由哪几部分组成其功能是什么
4、8086的总线接口部件由那几部分组成其作用是什么
5、8086的执行单元(部件)由那几部分组成有什么功能
6、8086内部有哪几个通用寄存器作用是什么
7、8086内部有哪几个段寄存器作用是什么
8、简述8086CPU的流水线思想,与传统计算机有何不同。
9、8086和8088是怎样解决地址线和数据线的复用问题的ALE信号何时处于有效电平
10、8086工作在最小模式和最大模式的区别及主要特点是什么
11、存储器的逻辑地址由哪两部分组成物理地址是如何形成的8086的地址线有多少条最大物理地址空间为多少
12、根据不同的寻址方式,说明操作数所处位置有哪些
13、汇编语言中指令与伪指令有什么区别
14、什么是端口通常有哪几种端口它们的作用是什么
15、计算机对I/O端口编址时通常采用哪两种方法在8086/8088系统中,用哪种方法对I/O端口进行编址
16、一般的IO接口电路安排有哪三类寄存器它们各自的作用是什么
17、简述CPU与外设进行数据交换的几种常用方式与特点。
18、简述条件传送方式的工作过程,主要适用的场合。
19、什么是中断优先权什么是中断嵌套什么是可屏蔽中断
20、软件中断有哪些特点硬件中断有那些特点
21、在中断处理子程序和主程序的关系上,软件中断和硬件中断有什么不同之处
22、8086CPU响应中断的流程包含哪四个阶段
23、简述中断控制器8259的主要功能。
24、8086CPU响应中断的条件8086CPU响应中断后自动完成的任务是什么
25、什么是中断向量它放在哪里对应于类型号1CH的中断向量在哪里如1CH中断程序从5110H:
2030H开始,则中断向量应怎样存放
26、简述定时器/计数器芯片8253的主要功能。
说明OUT、CLOCK与GATE信号的作用。
27、定时器8253内部有几个独立通道8253有几种工作方式
28、定时器8253内部计数器是16位,数据线为8条,如何写入16位计数初值
29、初始化定时器8253的步骤是什么若8253端口地址为200H-203H,对应的端口是哪个
30、并行接口8255有几个数据端口若端口地址为300H-303H,对应的端口是哪个端口C除了可做数据口外,还有什么功能
31、假设8255A的端口A工作于方式0,外设需要提供两个联络信号,一个为输出选通,一个为外设就绪信号输入,试选择端口并说明理由。
32、8255的3个端口24条外设数据线有什么特点
三、编程应用题
1、编程计算((X+Y)*10)+Z)/X,X、Y、Z都是16位无符号数,结果存在RESULT开始的单元。
2、将BUF1开始的100字节传送到BUF2开始的单元,然后从中检索字符“#”,并将此单元换成空格字符。
3、编写一段程序,比较两个5字节的字符串OLDS和NEWS,若相同,在RESULT置0,否则置0FFH。
4、累加数组中的元素,将和存于SUM开始单元,再求平均值,平均值存于AVR单元。
数据段定义如下
DATASEGMENT
ARRAYDW10,10,12,4,5,6,7,8,9,10
COUNTDW($-ARRAY)/2
SUMDW0,0
AVRDW0
DATAENDS
5、统计数组中大于100的数据的数量,存于N1单元,数据段定义如下
TAB1DB100,200,12,40,50,60,70,80,90,105
NEQU$-TAB
N1DB0
6、编写程序完成求1+2+3+……N的累加和,直到累加和超过1000为止。
统计被累加的自然数的个数送CN单元,累加和送SUM。
7、设有两个长度为8个字节的无符号数分别存放在以NUM1、NUM2为首地址的连续的内存单元中,将两个数相加,结果存入SUM内存单元中。
(例
8、统计数据块中正数与负数的个数,并将正数与负数分别送到两个缓冲区(习题。
数据变量定义如下:
BLOCKDB-1,-3,5,6,-2,0,20,10
NEQU$-BLOCK
PLUS_DDB8DUP();正数缓冲区
PLUSDB0;正数个数
MINUS_DDB8DUP();负数缓冲区
MINUSDB0;负数个数
9、从给定串中寻找最大值,并放到MAX单元,元素放在BUFFER开始的字节单元中。
10、把BUF表中的字节元素按值的大小升序排列。
数据段定义如下:
BUFDB10,32,56,11,90,56,89,21
N=$-BUF
11、类型号为20H的中断服务程序入口符号地址为INT-5,试写出中断向量的装入程序片断。
12、设一个8253的计数器0产生周期为20ms的定时信号,计数器1产生周期为300us的定时信号。
设外部时钟频率为f=2MHZ,端口地址为330H~333H。
试对它进行初始化编程。
13、已知某8253占用I/O空间地址为340H~343H,设定时器0、定时器1工作于方式3,外部提供一个时钟,频率f=2MHZ。
要求定时器1连续产生5ms的定时信号,定时器0连续产生5秒的定时信号。
14、用8255A控制三个发光二极管依秩序循环显示。
假设开关闭合时,点亮发光二极管,开关断开时熄灭二极管。
(1)画出原理图,并说明工作原理;
(2)选择8255工作方式;(3)编写8255初始化程序与控制程序。
15、8255连接一组开关与一组LED显示器,如图所示。
开关状态控制LED显示,若断开,则全部熄灭。
8255端口地址为310H~313H,8255工作于方式0。
要求:
(1)若K0闭合,发光二极管全部亮;
(2)开关K1闭合,全部发光二极管同时闪烁(延时2秒);
(3)开关K2闭合,发光二极管依次循环点亮(依次延时1秒);
假设已有延时1s的子程序DELAY,编写完整8255初始化程序与控制程序。
以下是部分功能的程序片段提示:
COTREQU313H;8255A控制口地址
PORT_AEQU310H;8255A的A口地址
PORT_CEQU312H
……
;------------8255初始化-------------
Wait:
MOVDX,COTR
MOVAL,B;8255方式0,PA口输入,PC口输出
OUTDX,AL
;-------------LED依次点亮----------------
ONElightONEPROC;依次点亮
MOVDX,PORT_C;端口C地址
MOVAL,00000001B;PC0输出高电平
OUTDX,AL;L0发光
CALLDELAY;延时
......;点亮L1发光,延时
......;点亮L2发光,延时
......;点亮L3发光,延时
RET
ONElightONEENDP
四、读程序写出结果。
1、8086CPU执行如下指令后的结果,以及标志CF、ZF的值。
MOVAL,80H
SUBAL,10H;(AL)=
ADDAL,89H;(AL)=,CF=,ZF=
2、CPU执行如下指令后的结果。
MOVAX,1234H
MOVBX,5678H
PUSHAX
POPCX
AX=,BX=,CX=
3、ORG1000H
TABLEDB0,1,2,3
NEQU$-TABLE
ZERDW8DUP
(1)
写出执行下列指令结果.
MOVAL,TABLE
MOVBX,OFFSETTABLE
MOVCX,N
MOVDX,LENGTHZER
MOVSI,WORDPTRTABLE+1
4、读程序,写出结果。
MOVAL,5BH
TESTAL,80H
JZLP
MOVBL,1
JMPSTOP
LP:
MOVBL,0
HLT
执行上述程序段后AL=BL=
5、下面程序片段实现中断向量的装入,问
(1)中断类型码为多少
(2)写出中断服务程序的入口地址,即段地址:
偏移地址。
CLI
PUSHDS
XORAX,AX
MOVDX,AX
MOVDI,80H
MOVWORDPTR[DI],1100H
MOVWORDPTR[DI+2],6800H
POPDS
STI
6、单独执行下列指令的结果
MOVAL,B
ANDAL,00011111B
ORAL,B
XORAL,00001111B
7、单独执行下列指令的结果
假设(AL)=B,CF=0,CL=4,写出分别执行下列指令后的结果以及标志位CF、ZF的值。
SHLAL,CL
SHRAL,CL
ROLAL,CL
五、程序设计与完善
1、读程序,写出结果。
BUFDB8,2,3,4
COUNTEQU$-BUF
……
LEASI,BUF
MOVCX,COUNT
(CALLADDONE);填空,调用子程序ADDONE
HLT
ADDONEPROCNEAR
ADDBYTEPTR[SI],1
INCSI
LOOPDON
RET
ADDONEENDP
(1)执行上述程序段后BUF存储区的内容为:
、、、。
(2)给程序加上完整段定义。
(3)给程序加上注释,说该程序功能。
2、读程序并完善。
AR1DB1,2,3,4,5,7
N=$-AR1
AR2DBNDUP(0)
......
MOVCX,N
MOVSI,offsetAR1;取AR1偏移地址送SI寄存器
MOVDI,offsetAR2
again:
MOVAL,[SI]
MOV[DI],AL;AL内容送数据到DI所指单元
INCDI
INCSI
LOOPagain;循环again
1)程序执行前,AR2单元内容为:
2)程序执行后,AR2单元内容为:
3)给程序加上注释,说明程序功能;
4)给程序加上完整段定义。
3、(习题,教材P131)
现有一输入设备,其数据端口的地址为FFE0H,并于端口FFE2H提供状态,当其D0位为1时表明输入数据备好。
采用查询方式进行数据传送的程序段,要求从该设备读取100个字节并输入到从2000H开始的内存中。
按要求完善程序,写出完整段定义。
;--------------------补充数据段定义--------------------
DATASEGMENT;数据段段开始
ORG2000H;定位到2000H单元
BUF120DUP(0);定义输入缓存区
DATAENDS;数据段段结束
;--------------------补充代码段定义----------
CODESEGMENT
ASSUMEDATA:
DS,CODE:
CS
START:
MOVAX,DATA
MOVDS,AX
MOVSI,offsetBUF;初始化数据区地址
MOVCX,100
;---------------查询时输入-----------------
LL:
MOVDX,0FFE2H;状态口地址送DX
INAL,DX;读状态到AL
TESTAL,01H;测试外设状态是否满足就绪
JZLL;不满足,继续读状态
MOVDX,0FFE0H;就绪,准备输入数据
INAX,DX;从输入端口读取数据
CALLdelay;延时
MOV[SI],AX;存数据
INCSI;准备接受下一个数据
LOOPLL;数据没有输入完,继续
MOVAH,4CH
INT21H
DELAYPROC
……;程序略
RET
DELAYENDP
CODEENDS;代码段定义结束
ENDSTART