微机原理与接口技术2006—2007学年第1学期(A卷答案)
一、填空题(每空1分,共15分)
1.在实模式下,80486微处理器使用的地址线是20 条,存储器的最大寻址空间是 1MB ,存储器分段的最大容量是64KB 。
2.计算机的数据表示的范围由字长n决定,若n=16,有符号数的表示范围
是+32767~-32768 ,无符号数的表示范围是0~65535 。
3.在实模式下,设(CS)=1200H,(IP)=FF00H,指令的物理地址为
21F00H 。
4.设(SP)=1000H,(AX)=2010H,执行指令PUSH AX后,(SP)= 0FFEH 。
的引脚信号NMI的功能是接受不可屏蔽中断请求。
6.在MOV 1100H[BX],AX 中,目标操作数的寻址方式是基址寻址。
7.在DMA传送中,8237A可提供的存储器的地址是 16 位。
8. 8259A中ISR是 8 位的寄存器,其作用是记录CPU正在服务的中断请求。
9.将中断允许标志IF置“1”的指令是 STI 。
10.ADC0809有 8 个模拟输入通道,可转换的模拟信号的范围是 0~5V 。
二、选择题(选择正确答案,每题1分,共10分)
1.在80x86中断系统中,中断向量表用于存放( C )
(A)中断类型号(B)中断服务程序
(C)中断服务程序的入口地址(D)中断源类型
2.指令MOV AX,1000H ,源操作数存放在( A )
(A)代码段中(B)堆栈段中
(C)数据段中(D)附加段中
3.串指令的源地址由( A )提供。
(A)DS:SI提供(B)CS:IP提供
(C)ES:SI提供(D)SS:SP提供
4.将寄存器AL的低4位屏蔽,应当用的指令是( B )
(A)AND A L,0FH (B)AND A L,0F0H
(C)XOR A L,0FH (D)XOR A L,0F0H
5..执行JZ指令,转移的条件是( C )
(A)ZF=0 (B)CF=0
(C)ZF=1 (D)CF=1
6.EPROM芯片Intel 2764,片内寻址需要的地址线是( C )
(A)11条(B)12条(C)13条(D)14条
7.启动ADC 0809转换的命令是( A )
(A)OUT 端口,AL (B)MOV 端口,AL
(C)OUT AL,端口(D)MOV AL,端口
8.若8250输入的基准时钟频率,除数寄存器装入60H时,则波特率为(C )(A)4800 (B)2400 (C)1200 (D)300
9.CPU响应INTR中断请求的条件是(C )
(A)TF=1 (B)DF=1 (C)IF=1 (D)CF=1
10.某中断的类型号为16,其对应向量表的地址是( C )
(A)0020H (B)0030H (C)0040H (D)0050H
三、改正下列语句的错误(每题1分,共4分)
(1)MOV 20H, AL
(2)POP CS
(3)ADD [DI],[SI]
(4)INC AX,1
四、回答下列问题(每题3分,共6分)
1.当CPU响应INTR中断请求后,CPU是如何获取中断类型号
答:在第二个INTA中断响应周期,由8259 将中断类型号送上数据总线,送给CPU。
2.8254有哪几种工作方式
答:有如下6种工作方式:
方式0:计数结束中断
方式1:单拍负脉冲
方式2:频率发生器
方式3:方波发生器
方式4:软件触发计数
方式5:硬件触发计数
五、解答题(10分)
阅读下面程序段
1、对于下面的数据定义,画图表示各数据在存储器中的存放次序;
2、各组指令单独执行后,有关寄存器的内容是什么将答案填写在横线处。
DATA SEGMENT
TAB1 DB 42H,56,43H,‘A’
TAB2 DW 1235H,5ECDH,‘EF’
DATA ENDS
(1) LEA BX, TAB1
MOV AL,[BX] ;1.(AL)=
INC BX
ADD AL,[BX+2] ;2.(AL)=
(2) MOV BX,OFFSET TAB2
MOV AX,[BX+4] ;3.(AH)=
MOV SI, 01H
MOV DX, [BX+SI] ;4.(DX)=
TAB1 42H
56答:43H (1) LEA BX, TAB1 ‘A’MOV AL,[BX] ;(AL)= 42H TAB2 35H
INC BX 12H ADD AL,[BX+2] ;(AL)= 83H CDH
(2) MOV BX,OFFSET TAB2 5EH
MOV AX,[BX+4] ;(AH)= ‘E’‘F’
MOV SI, 01H ‘E’
MOV DX, [BX+SI] ;(DX)= CD12H
六、存储器扩充,设CPU地址总线16条,数据总线8条;需扩充的ROM空间为8KB,采用8K×8b芯片,RAM空间为16KB,采用8K×8b芯片。
(15分)
(1)采用3—8译码器,画出扩充存储器的地址位图;
(2)画出存储器与CPU系统总线的连接原理图;
(3)写出各芯片的地址范围。
七、综合题(35分)
下图是使用DAC0832产生各波形的硬件连接图。
图中利用并行接口8255A作为CPU 与DAC0832之间的接口,且8255A的A口为数据输出口,通过它把变化的数据传送到DAC0832,用B口和C口控制2个8段LED数码显示器(共阴),显示的内容是送到DAC0832上的十六进制数(00~FF)。
设8255A的端口地址分别为210H,211H,212H,213H。
要求:
1.列出8段LED数码显示器(共阴)显示0~F的显示代码;(5分)
2.编写8255的初始化程序;(5分)
3.编写一个含子程序的完整程序完成下列功能(要求有详细的注释):
(1)使用DAC0832在V OUT端循环产生三角波;(10分)
(2)编写子程序:在2个8段LED数码显示器上,显示送到DAC0832上8位数值(以两个十六进制数显示,B口显示高位,C口显示低位)。
(10分)
(3)编写延时子程序:用于三角波的斜率改变,延时时间自定。
(5分)
解:
1. 共阴极LED显示器七段显示代码
LIST DB 3FH,06H,5BH,4FH, (71)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV AL,80H ;PA、PB、PC均为方式0输出
MOV DX,213H
OUT DX,AL ;写入控制端口
LOP: MOV DX,210H ;置8255A的A口地址
MOV AL,00H ;三角波正向初值
LADD:OUT DX,AL
CALL DISP ;显示子程序
CALL DALLY ;延时
INC AL
JNZ LADD
MOV AL,0FFH ;三角波负向初值
LDEC:OUT DX,AL
CALL DISP ;显示子程序
CALL DALLY ;延时
DEC AL
JNZ LDEC
JMP LOP ;此程序是循环程序,可由CTRC-C强迫中断。
DISP PROC NEAR ;显示子程序
PUSH AX
PUSH BX
PUSH CX
PUSH DX
MOV AH, AL
AND AL,0FH ;屏蔽高4位
MOV BX,OFFSET LIST ;七段显示代码表的首址送BX
ADD BL,AL ;形成显示字符的地址
MOV AL,[BX] ;取出字符送AL
MOV DX,212H
OUT DX,AL ;送C口输出显示(低位)
MOV AL, AH
AND AL,0F0H ;屏蔽低4位
MOV CL, 4
SHR AL, CL ;右移4位
MOV BX,OFFSET LIST ;七段显示代码表的首址送BX
ADD BL,AL ;形成显示字符的地址
MOV AL,[BX] ;取出字符送AL
MOV DX,211H
OUT DX,AL ;送B口输出显示(高位)
POP DX
POP CX
POP BX
POP AX
RET ;子程序返回
DISP ENDP
DALLY PROC NEAR ;延时子程序
PUSH CX
PUSH AX
MOV CX,0010H
T1: MOV AX,0010H
T2: DEC AX
JNZ T2
LOOP T1
POP AX
POP CX
RET ;子程序返回 DALLY ENDP
CODE ENDS
END START。