当前位置:文档之家› 微机原理试题试题1b

微机原理试题试题1b

试题1b
一、论述题
1. 8086/8088CPU内部的状态标志寄存器共有几位标志位?各位的含义是什么?解:状态标志寄存器共有9位标志位,其中包含6个状态标志位和3个控制标志位。

状态标志位:
CF:进位标志。

当算术运算结果使最高位产生进位或借位时,则CF=1;否则CF=0。

PF:奇偶标志。

若运算结果中的低8位含有偶数个1,则PF=1;否则PF=0。

AF:辅助进位标志。

运算过程中若D3位向D4有进位或借位时,AF=1;否则AF=0。

ZF:零标志。

若运算结果为0,则ZF=1;否则ZF=0。

SF:符号标志。

若运算结果为负,则SF=1;否则SF=0。

OF:溢出标志。

当带符号数的补码运算结果超出机器所能表达的范围时,就会产生溢出,这时OF=1;否则OF=0。

控制标志位:
DF:方向标志。

控制串操作指令的地址变化的方向。

当DF=0时,串操作指令的地址指针按增量变化;当DF=1时,串操作指令的地址指针按减量变化。

IF:中断允许标志。

控制微处理器是否允许响应可屏蔽中断请求。

若IF=1,则允许响应;否则禁止响应。

TF:单步标志。

TF=1时,CPU工作在单步方式。

2.相对于程序查询传送方式,中断方式有什么优点?和DMA方式比较,中断传送方式又有什么不足之处?
解:中断方式的数据输入输出,CPU不需要查询外设的状态,节省了CPU的大量时间,提高了CPU的利用率。

中断传送方式的缺点:中断方式仍需要通过CPU执行程序来实现外设与主机之间的信息传送;CPU每次中断都需要花费时间保护断点和现场,无法满足高速I/O设备的速度要求。

3.描述汇编语言源程序的运行过程,包括各步骤生成的文件类型?
解:汇编程序是一个反复循环的取指令、分析指令和执行指令的过程。

在执行前,第一步编辑,用编辑软件(比如EDIT)键入汇编语言源程序sample.ASM;第二步汇编,用汇编程序MASM.EXE对源程序文件汇编,检查有无语法错误,修改无错误后生成目标程序文件sample.OBJ和列表文件sample.LST;第三步连接,用连接程序LINK.EXE生成sample.EXE;第四步调试,用调试程序DEBUG.EXE对sample.EXE调试,生成可执行文件NAME.EXE,无逻辑错误后程序执行得出运行结果。

4、8086/8088CPU由哪两大功能部分所组成?简述它们的主要功能?
答:8086/8088CPU由EU和BIU两大功能部分组成。

执行单元EU主要完成指令的译码和执行。

总线接口单元BIU是8086/8088同外部联系的接口。

它负责所有涉及外部总线的数据传递操作,包括取指令、读操作数、写操作数、地址转换和总线控制等
二、判断题(正打“√”,误打“×”)
1.8086CPU从功能上分成两个部分,BIU和EU,BIU负责指令的执行。

( × )
2.堆栈指针SP总是指向堆栈的栈顶。

( √ )
3.8086/8088允许多个逻辑段重叠或交叉。

( √ )
4.CPU与外设交换的控制信息,是由控制总线传送的。

( √ )
5.源程序的最后必须有一条 END伪指令。

( √ )
三、填空题
1.伪指令ORG的功能是定义起始地址,EQU的功能是等值,
DB的功能是定义字节,END的功能是汇编结束。

2.保护现场常采用堆栈操作,常用的指令为PUSH ,POP 。

3.通过I/O接口,CPU与外设交换信息,常采用无条件传送,查询传送,中断传送和DMA方式。

4. 用3片8259A级联,最多可管理的中断数是____22____。

5. 在IBM-PC/XT中,外设是通过__8259A__接口器件对CPU产生中断请求。

6. 8086CPU通过数据总线对______存储器或I/O接口_______进行一次访问所需要的时间为一个总线周期,一个总线周期至少包括____4个___时钟周期。

四、程序填空
1.在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商和余数分别存入QUI和REM单元,请在空行处各填上一条指令完善该程序。


MOV AX, NUMW
MOV BX , 500
XOR DX, DX
DIV BX
MOV QUI, AX
MOV REM, DX
2. 用二进制显示BL内容:
MOV CX, 8
Again:SHL BL, 1
MOV DL, 0
ADC DL,30H
MOV AH, 02H
INT 21H
LOOP Again
3.程序填空。

假定从BUFF开始的存储区存有1000字节数据,现在要求查看该存储区域,是否某个单元有字母‘A’。

试在下列程序段中空白处填上适当的一条指令,使其完成功能。




MOV DI, OFFSET BUFF
MOV CX, 1000
MOV AL,‘A’
CLD
SCASB
4、设初值(AX)=4321H,(DX)=8765H,则
MOV CL,04H
SHL DX,CL
MOV BL,AH
SHL AX,CL
SHR BL,CL
OR DL,BL
上述程序执行后DX=___7654H___;AX=__3210H___。

五、综合题
1. SAL AL, 1
MOV BL, AL
MOV CL, 2
SAL AL,CL
ADD AL, BL
回答:程序实现的完整功能是将AL中的内容乘10
2. MOV BL, 02H
MOV AL, 07H
MUL BL ; AX= 000E _H
AAM
AH=_ 01 _H, AL=_ 04 __H
3. 设寄存器AL,BL,CL中内容均为1CH,执行上述指令序列后,
XOR AL,0FH
AND BL,0FH
OR CL,0FH
AL= 13 H,BL= 0C H,CL= 1F ,CF= 0
4. 在空白处添上适当的指令,使下面的程序段能实现既定功能:
下面子程序实现:将AL中的一位16进制数(0~F)转换为相应的ASCII码并在
屏幕上显示该字符。

HECA PROC FAR
CMP AL,10
JC KK
ADD AL,37H
KK: ADD AL,30H
MOV DL, AL
MOV AH,2
INT 21H;DOS功能调用显示单个字符
RET
HECA ENDP
六、编程序题
得分设8253的选通地址为240H~243H,采用BCD计数,计数器2输出用于申请
中断。

如果计数器2的输入时钟频率为20KHz,输出信号每秒引起100次中断。

要求(1) 算出计数初值,(2) 编写初始化程序。

解:
(1) 初值为20KHZ/100=200或C8H(3分)
(2) 编程:MOV DX,243H
MOV AL,10110001B(或B1H)
OUT DX,AL ;(4分)
MOV DX,242H
MOV AL,8CH
OUT DX,AL ;
MOV AL,00H (该句也可以为:XOR AL,AL) OUT DX,AL ;(3分)。

相关主题