微机接口技术复习资料本科.docx
《微机接口技术复习资料本科.docx》由会员分享,可在线阅读,更多相关《微机接口技术复习资料本科.docx(22页珍藏版)》请在冰豆网上搜索。
微机接口技术复习资料本科
微机接口技术复习资料
一、填空题
1.对于乘法、除法指令,其源操作数可以用除立即数寻址方式以外的任一种寻址方式。
2.条件转移指令的目标地址应在本条件转移指令的下一条地址128字节范围内。
3.执行下列程序段后,(DX)=1BH。
MOVCX,5
MOVDX,12
LP:
ADDDX,CX
DECCX
JNZLP
......
4.在同步串行通信中,在数据块开始处要用STX作为起始标志。
5.在异步串行通信中,通用串行接口(UART)内设立了各种出错标志,常用的三种是:
FE(格式错)OE(溢出错)PE
(奇偶错)
6.对8251A初始化写入控制字的顺序是先写方式命令字,后写操作命令字
7.若8255A的A口用于输出,采用中断方式传送数据,一般情况下,A口最好应设置在方式2下工作。
8.在80x86系统中,若8255A的A口端口地址为38H,则B口的端口地址为39H、,C口的端口地址为3AH、控制口地址为3BH。
9.在MOVAL,[1234H]指令的机器代码中,最后一个字节是12H。
10.假设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是200FEH。
11.假定(AL)=26H,(BL)=55H,依次执行ADDAL,BL和DAA指令后,(AL)=(AL)=81H。
12.不论是并行通信还是串行通信,CPU与I/O接口总是并行传输数据,所谓"串行"是指_外设之间串行传输数据。
13.RS-232C接口信号标准采用“负逻辑”,规定:
数据0为+3~+15V;数据1为-15~-3V
14.8251A内部有2个端口地址,由引脚C/D#的状态来区别。
15.为检测串行通信数据是否正确传输,常用的方法有__奇偶__校验和___CRC循环冗余___校验。
16.CPU与I/O设备之间的通信控制方式有____程序___、___中断__和___DMA__三种方式。
二、选择
.
1.现行PC机中,I/O端口常用的I/O地址范围是(D)。
D.0000H~03FFH
2.以下(C)不属接口的作用。
C.能够实现数据传送的缓冲作用,使主机、外设速度匹配
3.微机中DMA采用(C)传送方式。
C.停止CPU访问内存
4.PC机中确定硬中断服务程序的入口地址是(B)。
B.主程序中的转移指令
5.在数据传送方式中,DMA方式与中断方式相比,主要优点是(B)。
B.CPU可以分时工作
6.采用DMA方式,在存储器与I/O设备间进行数据传输。
对于PC来说,数据的传送要经过(D)。
D.外部总线
7.数据传送速率与距离成(D)。
D.反比
8.异步通信传送速度一般为(B)。
B.50波特-19200波特
9.同步通信速度高于异步通信速度,可达(A)波特。
A.500千B.400千
C.19200千D.4800千
10.诸种通信规程中使用最多的是(C)通信规程。
A.同步控制B.高级数据链路控制
C.异步控制 D.面向字节计数控制
11.采用2个8259A级联,CPU的可屏蔽硬中断可扩展为(D)。
D.15级
12.为实现多重中断,保护断点和现场使用(D)。
D.堆栈
13.I/O设备与主机信息的交换采用中断方式的特点是(B)。
B.CPU与设备并行工作,传送与主程序串行工作
14.在数据传送过程中,数据由串行变为并行,或由并行变为串行,这种转换是通过接口电路中的(B)实现的。
B.移位寄存器
15.当采用(B)输入操作情况时,除非计算机等待,否则无法传送数据给计算机。
B.中断方式
16.主机与设备传送数据时,采用(B),主机与设备是并行工作的。
B.中断方式
17.8253-5工作于方式4时,若计数值为N,则必须经过(C)个CLK脉冲周期,输出OUT端产生一个负脉冲信号输出。
C.N+1
18.8253-5工作于方式4时。
计数过程的启动是由(D)对CR设置计数初值时被触发的。
D.输出指令
19.8259A是()。
A.可编程DMA控制器B.可编程中断控制器
C.可编程定时/计数器D.总线仲裁器
20.8086响应中断的条件是()。
A.IF=l,完成当前指令值
B.IF=0,完成当前指令值
C.IF=l,没有完成当前指令
D.IF=0,没有完成当前指令
三、简答题及编程题
1.8259A初始化编程过程完成那些功能?
这些功能由那些ICW设定?
答:
初始化编程用来确定8259A的工作方式。
ICW1确定8259A工作的环境:
处理器类型、中断控制器是单片还是多片、请求信号的电特性。
ICW2用来指定8个中断请求的类型码。
ICW3在多片系统中确定主片与从片的连接关系。
ICW4用来确定中断处理的控制方法:
中断结束方式、嵌套方式、数据线缓冲等。
2.8255A的3个端口在使用上有什么不同?
答:
8255A的A端口,作为数据的输入、输出端口使用时都具有锁存功能。
B端口和C端口当作为数据的输出端口使用时具有锁存功能,而作为输入端口使用时不带有锁存功能。
3.用8253通道0的GATE0作控制信号,在延时10ms后,使OUT2输出一负脉冲。
已知计数脉冲CLK2的频率为2.5MHz,系统分配给8253端口地址为0A0H、0A2H、0A4H、0A6H。
(1)设定计数初值及控制字。
(2)编写初始化程序。
仅供参考:
n=2.5*1000*10=25000,假设采用二进制计数
通道0工作在方式1下,控制字:
10110010B
MOVDX,0A6H
MOVAL,10110010B
OUTDX,AL
MOVDX,0A4H
MOVAX,25000
OUTDX,AL
MOVAL,AH
OUTDX,AL
4.8253-5初始化编程有什么规定?
答:
8253-5初始化编程规定:
(1)对计数器设置初始值前必须先写控制字。
(2)初始值设置时,要按照控制字中的格式规定,如只写低位字节或是写高8位,或是高低位字节都写,控制字中一旦设定,计数初始值设定就要一致。
5.8259A在初始化编程时设置为非中断自动结束方式,中断服务程序编写时应注意什么?
答:
在中断服务程序中,在返回主程序之前按排一条一般中断结束命令指令,8259A将ISR中最高优先级位置0,结束该级中断处理以便为较低级别中断请求服务。
6.8253通道2工作在方式3,已知计数脉冲CLK2的频率为1KHz,,要求OUT2输出频率为100Hz,按BCD码计数,系统分配给8253端口地址为0A0H、0A2H、0A4H、0A6H。
(1)设定计数初值及控制字。
(2)编写初始化程序。
仅供参考:
n=1KHz/100Hz=10
控制字:
10010111B(97H)
MOVDX,0A6H
MOVAL,97H
OUTDX,AL
MOVDX,0A2H
MOVAL,10H
OUTDX,AL
重点题:
1.A/D和D/A转换在微机应用中分别起什么作用?
答:
在微机应用中A/D转换器完成输入模拟量到数字量的转换,供微机采集数据。
D/A转换器完成微机输出数字量到模拟量的转换,实现微机控制。
2.D/A转换器和微机接口中的关键问题是什么?
对不同的D/A芯片应采用何种方法连接?
答:
D/A转换器和微机接口时主要注意两点:
第一要了解所选用的D/A转换器本身是否带有数据锁存器,如果芯片内部带有锁存器可以直接和CPU的数据总线相连接;如果芯片内部不带有锁存器,在接口电路中需要通过数据锁存器来连接CPU的数据总线和D/A转换器的数据线。
第二是要注意D/A转换器的位数和所要连接的微机数据总线的位数是否一致。
以便决定在需要加数据锁存器时,加几级锁存器,如果CPU的数据总线是8位,使用的是大于8位的D/A转换器,通常采用两级缓冲结构和CPU数据总线相连。
3.8255A的3个端口在使用上有什么不同?
答:
8255A的A端口,作为数据的输入、输出端口使用时都具有锁存功能。
B端口和C端口当作为数据的输出端口使用时具有锁存功能,而作为输入端口使用时不带有锁存功能。
4.8259A初始化编程过程完成那些功能?
这些功能由那些ICW设定?
答:
初始化编程用来确定8259A的工作方式。
ICW1确定8259A工作的环境:
处理器类型、中断控制器是单片还是多片、请求信号的电特性。
ICW2用来指定8个中断请求的类型码。
ICW3在多片系统中确定主片与从片的连接关系。
ICW4用来确定中断处理的控制方法:
中断结束方式、嵌套方式、数据线缓冲等。
5.8259A在初始化编程时设置为非中断自动结束方式,中断服务程序编写时应注意什么?
答:
在中断服务程序中,在返回主程序之前按排一条一般中断结束命令指令,8259A将ISR中最高优先级位置0,结束该级中断处理以便为较低级别中断请求服务。
6.什么是中断类型码、中断向量、中断向量表?
在基于8086/8088的微机系统中,中断类型码和中断向量之间有什么关系?
答:
处理机可处理的每种中断的编号为中断类型码。
中断向量是指中断处理程序的入口地址,由处理机自动寻址。
中断向量表是存放所有类型中断处理程序入口地址的一个默认的内存区域。
在8086系统中,中断类型码乘4得到向量表的入口,从此处读出4字节内容即为中断向量。
7.试叙述基于8086/8088的微机系统处理硬件中断的过程。
答:
以INTR请求为例。
当8086收到INTR的高电平信号时,在当前指令执行完且IF=1的条件下,8086在两个总线周期中分别发出INTA#有效信号;在第二个INTA#期间,8086收到中断源发来的一字节中断类型码;8086完成保护现场的操作,CS、IP内容进入堆栈,清除IF、TF;8086将类型码乘4后得到中断向量入口地址,从此地址开始读取4字节的中断处理程序的入口地址,8086从此地址开始执行程序,完成了INTR中断请求的响应过程。
8.8086被复位以后,有关寄存器的状态是什么?
微处理器从何处开始执行程序?
答:
标志寄存器、IP、DS、SS、ES和指令队列置0,CS置全1。
处理器从FFFFOH存储单元取指令并开始执行。
9.8086基本总线周期是如何组成的?
各状态中完成什么基本操作?
答:
基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。
在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号RD#、WR#及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。
10.8086对存储器的管理为什么采用分段的办法?
答:
8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围(1MB,20位地址)。
若不用分段方法,16位地址只能寻址64KB空间。
其他
1.计算机分那几类?
各有什么特点?
答:
传统上分为三类:
大型主机、小型机、微型机。
大型主机一般为高性能的并行处理系统,存储容量大,事物处理能力强,可为众多用户提供服务。
小型机具有一定的数据处理能力,提供一定用户规模的信息服务,作为部门的信息服务中心。
微型机一般指在办公室或家庭的桌面或可移动的计算系统,体积小、价格低、具有工业化标准体系结构,兼容性好。
2.简述微处理器、微计算机及微计算机系统三个术语的内涵。
答:
微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影响。
微计算机包括微处理器、存储器、I/O接口电路及系统总线。
微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系统。
3.8086是多少位的微处理器?
为什么?
答:
8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。
4.EU与BIU各自的功能是什么?
如何协同工作?
答:
EU是执行部件,主要的功能是执行指令。
BIU是总线接口部件,与片外存储器及I/O接口电路传输数据。
EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。
EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。
5.8086/8088与其前一代微处理器8085相比,内部操作有什么改进?
答:
8085为8位机,在执行指令过程中,取指令与执行执令都是串行的。
8086/8088由于内部有EU和BIU两个功能部件,可重叠操作,提高了处理器的性能。
6.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?
答:
执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。
AX、BX、CX、DX一般作为通用数据寄存器。
SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。
总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。
段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。
IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。
7.给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。
答:
物理地址:
0C21A0H。
8.8086/8088为什么采用地址/数据引线复用技术?
答:
考虑到芯片成本,8086/8088采用40条引线的封装结构。
40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。
9.8086与8088的主要区别是什么?
答:
8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度为6字节,8088只有4字节。
10.怎样确定8086的最大或最小工作模式?
最大、最小模式产生控制信号的方法有何不同
答:
引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式,MN/MX#引线接低电平,8086被设定为最大模式。
最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的S2#~S0#三条状态信号引线提供。
11.结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。
答:
ALE为外部地址锁存器的选通脉冲,在T1期间输出;M/IO#确定总线操作的对象是存储器还是I/O接口电路,在T1输出;DT/R#为数据总线缓冲器的方向控制信号,在T1输出;RD#为读命令信号;在T2输出;READY信号为存储器或I/O接口“准备好”信号,在T3期间给出,否则8086要在T3与T4间插入Tw等待状态。
12.什么是总线请求?
8086在最小工作模式下,有关总线请求的信号引脚是什么?
答:
系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。
8086在最小工作模式下有关总线请求的信号引脚是HOLD与HLDA。
13.指出下列指令的错误:
(1)MOVAH,BX
(2)MOV[SI],[BX](3)MOVAX,[SI][DI]
(4)MOVAX,[BX][BP](5)MOV[BX],ES:
AX(6)MOVBYTEPTR[BX],1000
(7)MOVAX,OFFSET[SI](8)MOVCS,AX(9)MOVDS,BP
答案:
(1)源、目的字长不一致
(2)源、目的不能同时为存贮器寻址方式
(3)基址变址方式不能有SI和DI的组合
(4)基址变址方式不能有BX和BP的组合
(5)在8086寻址方式中,AX不能作为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式
(6)1000超出一个字节的表数范围
(7)OFFSET只用于简单变量,应去掉
(8)CS不能作为目的寄存器
(9)段地址不能直接送入数据段寄存器
14.DATASEGMENT
TABLE_ADDRDW1234H
DATAENDS
.
.
.
MOVBX,TABLE_ADDR
LEABX,TABLE_ADDR
请写出上述两条指令执行后,BX寄存器中的内容。
答案:
MOVBX,TABLE_ADDR;执行后(BX)=1234H
LEABX,TABLE_ADDR;执行后(BX)=OFFSETTABLE_ADDR
答案:
LESBX,[2000H]
MOVAX,ES:
[BX]
15.假设(CS)=3000H,(DS)=4000H,(ES)=2000H,(SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出下列各条指令单独执行完后,有关寄存器及存储单元的内容,若影响条件码请给出条件码SF、ZF、OF、CF的值。
(1)SBBAX,BX
(2)CMPAX,WORDPTR[SI+0FA0H]
(3)MULBYTEPTR[BX](4)AAM
(5)DIVBH(6)SARAX,CL
(7)XORAX,0FFE7H(8)REPSTOSB
(9)JMPWORDPYR[BX](10)XCHGAX,ES:
[BX+SI]
答案:
(1)(AX)=0F05FH,(SF)=1,(ZF)=0,(OF)=0,(CF)=1
(2)(SF)=1,(ZF)=0,(OF)=1,(CF)=1
(3)(AX)=0240H,(OF)=1,(CF)=1
(4)(AX)=0906H,(SF)=0,(ZF)=0
(5)(AX)=20ACH
(6)(AX)=0103H,(CF)=0
(7)(AX)=0DF87H,(CF)=0,(OF)=0,(SF)=1,(ZF)=0
(8)(23000H)~(23004H)=60H,不影响标志位
(9)(IP)=0A006H,不影响标志位
(10)(AX)=00B0H,(25060)=2060H,不影响标志位
16.试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。
答案:
abc:
movah,1
int21h
cmpal,’a’
jbstop
cmpal,’z’
jastop
subal,20h
movdl,al
movah,2
int21h
jmpabc
stop:
ret
17.编写程序,比较两个字符串STRING1和STRING2所含字符是否完全相同,若相同则显示“MATCH”,若不同则显示“NOMATCH”。
答案:
datareasegment
string1db‘asfioa’
string2db‘xcviyoaf’
mess1db‘MATCH’,’$’
mess2db‘NOMATCH’,’$’
datareaends
prognamsegment
mainprocfar
assumecs:
prognam,ds:
datarea
start:
pushds
subax,ax
pushax
movax,datarea
movds,ax
moves,ax
begin:
movcx,string2-string1
movbx,mess1-string2
cmpbx,cx
jnzdispno
leadx,addr
leasi,string1
leadi,string2
repecmpsb
jnedispno
movah,9
leadx,mess1
int21h
ret
dispno:
movah,9
leadx,mess2
int21h
ret
mainendp
prognamends
endstart
18.写出分配给下列中断类型号在中断向量表中的物理地址。
(1)INT12H
(2)INT8
答案:
(1)00048h
(2)00020h
19.试说明一般中断系统的组成和功能。
答:
处理器内部应有中断请求信号的检测电路,输出中断响应信号,保存断点的逻辑,转向中断处理程序的逻辑,中断返回逻辑。
系统中要有一中断控制器,管理多个中断源,提供处理机所需的中断处理信息。
系统中请求中断处理的I/O接口电路要有提供中断请求信号及接收中断响应信号的逻辑。
20.什么是硬件中断和软件中断?
在PC机中两者的处理过程有什么不同?
答:
硬件中断是通过中断请求线输入电信号来请求处理机进行中断服务;软件中断是处理机内部识别并进行处理的中断过程。
硬件中断一般是由中断控制器提供中断类型码,处理机自动转向中断处理程序;软件中断完全由处理机内部形成中断处理程序的入口地址并转向中断处理程序,不需外部提供信息。
21.在PC机中如何使用“用户中断”入口请求中断和进行编程?
答:
PC机中分配给用户使用的中断是IRQ9,经扩展插槽B4引出,故把用户的中断请求线连接到B4上。
在应用程序中,利用25H号系统调用将中断服务程序的入口地址写入对应0AH类型中断对应的中断向量表中去。
在应用程序中把主片8259AD2屏蔽位清0,把从片8259AD1屏蔽位清0,使主片的IR2、从片的IR1可以输入中断请求。
中断服务程序结束前向主片8259A发中断结束命令。
应用程序结束之前对主片的IR2和从片的IR1进行屏蔽,关闭用户中断请求。
22.8259A中断控制器的功能是什么?
答:
8259A中断控制器可以接受8个中断请求输入并将它们寄存。
对8个请求输入进行优先级判断,裁决出最高优先级进行处理,它可以支持多种优先级处理方式。
8259A可以对中断请求输入进行屏蔽,阻止对其进行处理。
8259A支持多种中断结束方式。
8259A与微处理器连接方便,可提供中断请求信号及发送中断类型码。
8259A可以进行级连以便形成多于8级输入的中断控制系统。
23.8259A的初始化命令字和操作命令字有什么区别?
它们分别对应于编程结构中那些内部寄存器?
答:
8259A的工作方式通过微处理器向其写入初始化命令字来确定。
初始化命令字分别装入ICW1~ICW4内部寄存器。
8259A在工作过程中,微处理器通过向其写入操作命令字来控制它的工作过程。
操作命令字分别装入OCW1~OCW3内部寄存器中。
8259A占用两个端口号,不同的命令字对应不同的端口,再加上命