输入输出处理方法习题.docx

上传人:b****1 文档编号:2140682 上传时间:2023-05-02 格式:DOCX 页数:22 大小:28.61KB
下载 相关 举报
输入输出处理方法习题.docx_第1页
第1页 / 共22页
输入输出处理方法习题.docx_第2页
第2页 / 共22页
输入输出处理方法习题.docx_第3页
第3页 / 共22页
输入输出处理方法习题.docx_第4页
第4页 / 共22页
输入输出处理方法习题.docx_第5页
第5页 / 共22页
输入输出处理方法习题.docx_第6页
第6页 / 共22页
输入输出处理方法习题.docx_第7页
第7页 / 共22页
输入输出处理方法习题.docx_第8页
第8页 / 共22页
输入输出处理方法习题.docx_第9页
第9页 / 共22页
输入输出处理方法习题.docx_第10页
第10页 / 共22页
输入输出处理方法习题.docx_第11页
第11页 / 共22页
输入输出处理方法习题.docx_第12页
第12页 / 共22页
输入输出处理方法习题.docx_第13页
第13页 / 共22页
输入输出处理方法习题.docx_第14页
第14页 / 共22页
输入输出处理方法习题.docx_第15页
第15页 / 共22页
输入输出处理方法习题.docx_第16页
第16页 / 共22页
输入输出处理方法习题.docx_第17页
第17页 / 共22页
输入输出处理方法习题.docx_第18页
第18页 / 共22页
输入输出处理方法习题.docx_第19页
第19页 / 共22页
输入输出处理方法习题.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

输入输出处理方法习题.docx

《输入输出处理方法习题.docx》由会员分享,可在线阅读,更多相关《输入输出处理方法习题.docx(22页珍藏版)》请在冰点文库上搜索。

输入输出处理方法习题.docx

输入输出处理方法习题

输入输出处理方法习题

1.如果8251A设定为异步通信方式,发送器时钟输入端和接收器时钟输入端都连接到频率为19.2KHZ的输入信号,波特率因子为16,则波特率为()。

(A)1200(B)2400(C)9600(D)19200

答:

A

2.试分析,在数据通信中,比特率与波特率分别代表的含义?

答:

比特率指数据通信中信号频率每秒钟变化的次数;

波特率指数据通信过程中每秒种传送的位数(bit/s),故1波特=1位/秒。

3.8255A工作在方式1时,端口A和端口B作为数据输入/输出使用,而端口C的各位分别作为端口A和端口B的控制信息和状态信息。

其中作为端口A和端口B的中断请求信号的分别是端口C的()。

(A)PC4和PC2(B)PC5和PC1(C)PC6和PC7(D)PC3和PC0

答:

D

4.在DMA传送过程中完成数据传送功能是由()。

(A)CPU执行从存储器读出的指令

(B)CPU直接控制外部设备与存储器

(C)DMAC执行从存储器读出的指令

(D)外部设备中的控制部件直接控制

(E)DMAC的硬件直接控制

答:

E

5.DAC0832是一个分辨率为

(1),输入具有

(2)功能的D/A转换器。

(A)8位(B)10位(C)12位(D)单缓冲

(E)双缓冲(F)无缓冲

答:

AE

6.在IBMPC/XT微机中8253-5定时器/计数器的三个通道的工作方式分别为:

通道0工

作在

(1);通道1工作在

(2);通道2工作在(3)。

(A)方式0(B)方式1(C)方式2(D)方式3(E)方式4(F)方式5

答:

DCD

7.试分析:

8251A能不能同时实现发送数据和接受数据的功能?

答:

8251A是可编程控制的串行接口芯片,对其方式字、命令字及状态字初始化后,规定其通信方工(同步/异步)及数据格式等,命令字来控制发/收,状态字控制何时可以收/发。

其实现的是半双工通信方式,不能同时实现发送和接受数据的功能。

8.当D/A转换器与CPU相连时,如果CPU的数据总线的位数小于D/A转换器的位数,这时需要采用什么结构?

答:

当CPU的数据总线的位数小于D/A转换器的位数时,即使采用的D/A转换器内部带有数据缓冲器,也要采用外加三态缓冲器或数据寄存器与CPU相联的结构,并且是两级缓冲,以消除由于两次传送数据而产生的尖峰。

9.ADC0809与CPU相连接时,其模拟输入通道的地址由CPU提供。

为了确保它对输入信号的可靠转换,需要在它们之间加上什么东西?

答:

为了确保对输入信号的可靠转换,需在ADC0809的ADDA~ADDC和CPU之间加一级地址锁存器或三态锁存器。

10.试分析:

在异步串行通信工作状态下,通信双方是否需要同步?

答:

需要同步。

异步串行传送是指传送的每一个字符是随机出现在数据流中的,即是把每一个字符看作一个独立的传送单位,字符之间的间隔是随机的、任意的。

但是,在一个字符内部的各个二进制位是同步传送的。

收发双方对字符的同步是通过在字符格式中设置起始位和停止位来实现的

11.简述8086CPU对中断的响应和处理过程。

答:

8086对各类中断的响应不完全相同,主要区别在于如何获得中断类型码。

A.可屏蔽中断的响应过程。

首先必须满足中断允许标志IF置1,当没有内部中断,非屏蔽中断(NMI=0)和总线请求(HOLD=0)时,外设向中断控制器8259A发出中断请求,经8259A处理,得到相应的中断类型码,并向CPU申请中断(INTR=1)。

⑴等待当前指令结束,CPU发出中断响应信号。

⑵8259A连续(两个总周期)接收到两个INTA的负脉冲的中断响应信号,则通过数据总线将中断类型码送CPU,CPU把中断类型码乘4作为中断矢量表的地址指针。

⑶CPU保护断点,将状态标志字PSW及当前的CS和IP内容压栈。

⑷清IF和TF标志为0。

⑸查中断矢量表,取中断处理程序首地址,将其分别置入IP和CS中,程序转入执行中

断处理程序。

B.非屏蔽中断的响应过程:

非屏蔽中断请求在NMI加入,等待当前指令执行结束,CPU优先响应NMI中断请求,其中断类型码由硬件决定类型为2,无须从外部引入,其余响应过程与可屏蔽中断相同。

C.内部中断响应操作:

内部中断响应的共同点是:

⑴中断类型码由指令码给定或硬件决定,无须外部逻辑输入;

⑵无INTA信号响应周期;

⑶不受IF控制;

⑷除单步中断外,其它内部中断响应优先于外部中断,响应过程与非屏蔽中断类似。

12.8086可引入哪些中断,它们是如何引入的?

答:

8086具有256种不同中断类型的能力。

中断源可来自CPU内部或外部设备,可由硬件

或软件产生。

A.非屏蔽中断:

8086的两条外部中断线是非屏蔽中断NMI和可屏蔽中断INTR。

NMI是边缘触发方式,要求高电平有效。

一般用在如电源断电等紧急事件中,优先权较高,请求信号不受标志位IF的影响。

NMI中断类型码规定为2。

B.INTR可屏蔽中断请求是高电平有效的另一外部硬件中断源,高电平保持时间应维持到当前指令结束。

在8086中它不自中断控制器8259A,其外部电路所产生的中断的优先级别由8259A管理产生。

CPU只根据标志位IF的状态决定是否响应INTR。

C.内部中断:

8086的内部中断产生的过程完全与硬件电路无关,是CPU根据软件中某条指令或软件对PSW中的标志设置而产生的。

内部中断可分为两大类型:

一类是内部已硬件设置好的类型0~类型4,它们依次为除法出错、单步中断、NMI、断点中断和溢出中断;另一类是8086的中断系统中有一条两字节的中断指令INTn。

n即为中断类型码,CPU根据中断类型码即可找到中断服务程序入口。

13.中断入口地址表的功能是什么?

已知中断类型码分别为84H和FAH,它们的中断入口在中断入口地址表的什么位置上?

答:

中断入口地址表又称中断矢量表,它是中断矢量类型码与该中断类型相对应的中断服务程序入口之间的连接表,它设置在系统RAM最底端1024个单元内。

中断矢量表共有256种中断类型码,每个类型码占用4个字节。

其中低两个字节为中断服务程序入口地址的偏移地址,置入IP;高两位字节为服务程序的段基址置入CS。

于是可通过这4个字节的值即可找到该中断类型的中断服务程序入口。

中断类型码84H中断入口在中断矢量表的210H

中断类型码FAH中断入口在中断矢量表的368H

14.为什么在主程序和中断服务程序中都要安排开中断指令?

如果开中断指令安排在中断服务程序的末尾,那么将产生什么后果。

如果要实现中断嵌套,则开中断指令应如何设置?

答:

开中断指明CPU允许中断,主程序中在开中断之前要屏蔽本级和低级中断,预防干扰,而后开中断允许处理高级中断请求。

在中断处理之后也要开中断,允许任何中断请求。

如果没有开中断,更高级中断请求无法响应。

在中断服务期间,把该中断的断点保存后在开中断,表示响应更高级中断请求,然后进入中断服务程序,执行中断服务程序,在恢复断点之前关中断,之后又开中断,又可响应更高级中断。

15.简述中断控制器8259A的内部结构和主要功能。

答:

8259芯片内部结构包括八个部分:

1、数据总线缓冲器:

是一个双向八位三态缓冲器,由它构成8259与CPU之间的数据接口,是8259与CPU交换数据的必经之路。

2、读/写控制电路:

用来接收来自CPU的读/写控制命令和片选控制信息。

3、级联缓冲/比较器:

在多片8259级联使用,构成主从关系。

4、中断请求寄存器(IRR):

是一个八位寄存器,用来存放由外部输入的中断请求信号IR0-IR7。

5、中断服务寄存器(ISR):

是一个八位寄存器,用来记录正在处理的中断请求。

6、中断屏蔽寄存器(IMR):

是一个八位寄存器,用来存放各级中断请求的屏蔽信息。

7、优先权判别器(PR)用来识别各中断请求的优先级别。

8、控制电路:

是8259A内部的控制器,根据中断请求寄存器IRR的置位情况和优先权判别器PR与判定结果向8259A内部其他部件发控制信号,并向CPU发中断请求信号INT和接收中断响应信号INTA控制8259A进入中断服务状态。

16.8259A对中断优先权的管理方式有哪几种?

各是什么含义?

答:

①完全嵌套方式:

ISR寄存器中某位置“1”,表示CPU正在处理这一级中断请求,8259A允许比它级别高的中断请求进入,禁止与它同级或低级中段请求进入。

IR引入的中断请求有固定的中断级别,R0最低,R7最高。

②自动循环方式:

IRN–IR0优先级别不固定。

每当任何一级中断被处理完,它的优先级别就被改变为最低,而将最高级赋给比它低一级的中断请求。

③中断屏蔽方式:

由CPU在任何时候都可安排一条清除中断指令。

1)普通屏蔽方式,将IMR中某一位或某几位置“1”,可将相应级的中断请求屏蔽掉。

2)特殊屏蔽方式,当CPU正在处理某级中断时,要求仅对本级中断进行屏蔽,而允许其他优先比它高或低的中断进入系统。

17.某系统中设置三片8259A级联使用,一片为主8259A;两片为从8259A;它们分别接入主8259A的IR2和IR6端。

若已知当前主8259A和从8259A的IR3上各接有一个外部中断源,它们的中断类型码分别为A0H,B0H和C0H,已知它们的中断入口均在同一段中,其段基址为2050H,偏移地址分别为11A0H,22B0H和33C0H,所有中断都采用电平触发方式、完全嵌套、普通EOI结束,请

(1)画出它们的硬件连接图;

(2)编写全部初始化程序。

解答:

初始化程序:

START:

MOVAL,19H

MOVDX,偏移地址(主)

OUTDX,AL

MOVAL,0A0H

MOVDX,奇地址(主)

OUTDX,AL

MOVAL,44H

OUTDX,AL

MOVAL,11H

OUTDX,AL

MOVAL,11H

OUTDX,AL

MOVAL,0B3H

OUTDX,AL

MOVAL,22H

MOVDX,偶地址(主)

OUTDX,AL

MOVAL,19H

MOVDX,偶地址(从1)

OUTDX,AL

MOVAL,0B0H

MOVDX,奇地址(从1)

OUTDX,AL

MOVAL,02H

OUTDX,AL

MOVAL,11H

OUTDX,AL

MOVAL,0F7H

OUTDX,AL

MOVDX,偶地址(从1)

MOVAL,22H

OUTDX,AL

从2:

MOVAL,19H

MOVDX,偶地址(从2)

OUTDX,AL

MOVAL,0C0H

MOVDX,奇地址(从2)

OUTDX,AL

MOVAL,06H

OUTDX,AL

MOVAL,11H

OUTDX,AL

MOVAL,0F7H

OUTDX,AL

MOVDX,偶地址(主)

MOVAL,22H

OUTDX,AL

STI

HH:

HLT

JMP11H

18.可编程计数/定时器芯片8253有几个通道?

各采用几种操作方式?

简述这些操作方式的主要特点。

答:

有0,1,2三个通道,各通道有六种工作方式,以完成定时,计数,脉冲发生器等多种功能。

(1)工作方式0:

计数结束中断方式

(2)工作方式1:

可编程单脉冲发生器

(3)工作方式2:

速率波发生器

(4)工作方式3:

方波发生器

(5)工作方式4:

软件触发方式

(6)工作方式5:

硬件触发方式

19.某系统中8253芯片的通道0~通道2和控制字端口号分别为FFF0H~FFF2H,定义

通道0工作在方式2,CLK0=5MHz,要求输出OUT0=lkHz方波;定义通道l工作在方式4,用OUT0作计数脉冲,计数值为1000,计数器计到0,向CPU发中断请求,CPU响应这一中断后继续写入计数值1000,重新开始计数,保持每1秒钟向CPU发出一次中断请求,请编写初始化程序,并画出硬件连接图。

解答:

STT:

MOVDX,0FF0H

MOVAL,34H

OUTDX,AL

MOVDX,通道0端口地址

MOVAX,1388H

OUTDX,AL

MOVAL,AH

OUTDX,AL

MOVDX,0FFF1H

MOVAL,78H

OUTDX,AL

MOVDX,通道1端口地址

MOVAX,2710H

OUTDX,AL

MOVAL,AH

OUTDX,AL

MOVDX,0FFF2H

MOVAL,B1H

OUTDX,AL

MOVDX,通道2端口地址

MOVAX,1000H

OUTDL,AL

MOVAL,AH

OUTDX,AL

对8259A初始化(略)

HH:

HLT

JMPHH

20.什么叫DMA传送方式?

DMA控制器8257的主要功能是什么?

答:

DMA传送方式就是用DMA控制器来接管CPU对总线的控制权。

在存储器与局速外设之间建立直接进行数据块传送与高速通路。

主要功能有三个

(1)DMA读操作—读存储器送外设

(2)DMA写操作—对外设写存储器

(3)DMA校验操作—通道不进行数据传送操作,只是完成校验操作。

21.某8086系统中使用8257完成从存储器到外设端口的数据传送任务,若已知通道0的地址寄存器、终点计数器、方式寄存器端口地址分别为置EEE0H,EEElH和EEE8H,要求通过通道0将存储器中偏移地址为1000H~10FFH的内容传送到显示器输出,请编写初始化程序。

解答:

ST57:

MOVDX,0EEE8H

MOVAL,41H

OUTDX,AL

MOVDX,0EEE0H

MOVAX,1000H

OUTDX,AL

MOVAL,AH

OUTDX,AL

MOVDX,0EEE1H

MOVAL,0FFH

OUTDX,AL

HLT

22.某8086系统中使用8257完成从存储器到存储器的数据传送,已知源数据块首地址的偏移地址值为1000H,目标数据块首地址的偏移地址值为l050H,数据块长度为100字节。

请编写初始化程序,并画出硬件连接图。

解答:

STS7:

MOVDX,方式寄存器端口

MOVAL,41H

OUTDX,AL

MOVDX,通道0地址寄存器端口

MOVAX,1000H

OUTDX,AL

MOVAL,AH

OUTDX,AL

MOVDX,方式寄存器端口

MOVAL,42H

OUTDX,AL

MOVDX,通道1地址寄存器端口

MOVAX,1050H

INDX,AL

MOVAL,AH

INDX,AL

MOVDX,通道0终点计数器端口

MOVAL,64H

OUTDX,AL

HLT

23.编一系统初始化程序,由8259A的IR0~IR4共五个中断源,中断类型码为4BH,4CH,4DH,4EH,4FH。

8259A端口地址为80H、81H。

允许它们以完全嵌套方式工作。

解答:

STT:

MOVAL,11H

MOVDX,80H

OUTDX,AL

MOVAL,4BH

MOVDX,81H

OUTDX,AL

MOVAL,01H

OUTDX,AL

MOVAL,0D0H

OUTDX,AL

MOVAL,20H

MOVDX,80H

OUTDX,AL

HLT

24.用8255和8253编程,使扬声器发出600Hz的可听频率,击任一键停止。

(其中主时钟为1.9318MHz,一个时钟周期为888.2229×10—9秒。

解答:

STACKSEGMENTPARASTACK’STACK’

DB256DUP(0)

STACKENDS

DATASEGMENTPARAPUBLIC’DATA’

FREGDW1989;600周方波计数值

DATAENDS

CODESEGMENTPARTPUBLIC’CODE’

STARTPROCFAR

ASSUMECS:

CODE,DS:

DATA

PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

INAL,61H

ORAL,3

OUT61H,AL

MOVAL,0B6H

OUT43H,AL

MOVBX,FREG

MOVAL,BL

OUT42H,AL

MOVAL,BH

OUT42H,AL

MOVAH,0

INT16H

INAL,61H

ANDAL,0FCH

OUT61H,AL

RET

STARTENDP

CODEENDS

ENDSTART

25.用8253产生一个可编程采样速率的A/D子系统,要求通过8253的三个计数器,计数器0工作在方式2、计数器1工作在方式l,计数器2工作在方式3。

设它们的三个初始计数值分别设为X,Y和Z(X,Y,Z小于256)。

时钟频率设为F,用OUT0产生脉冲作为ADC的启动转换信号。

GATE1和GATE2引线输入一个由低电平到高电平的跳变启动信号,作为数模转换器在YZ/F秒时间内以每秒F/X个样本速率进行量化输入操作。

设8253端口地址为0040H,0042H,0044H,0046H,写出8253的初始化程序。

解答:

MOVAL,14H

OUT46H,AL;设置计数器0为方式2

MOVAL,X

OUT40H,AL;置计数器0初值

MOVAL,73H

OUT46H,AL;设置计数器1为方式1

MOVAX,Y

OUT42H,AL

MOVAL,AH

OUT42H,AL

MOVAL,96H

OUT46H,AL;置计数器2为方式3

MOVAL,Z

OUT44H,AL

26.设8253控制端口地址为203H,定时器0地址为200H,定时器l地址为201H,编程序将定时器0设为方式3(方波)、定时器l为方式2(分频),定时器0的输出脉冲作为定时器l的时钟输入,CLK0连接总线时钟4.77MHz,定时器1输出OUT1约为40Hz。

解答:

TIM-CTLEQU203H;控制口地址

TIMER0EQU200H;计数器/定时器0口地址

TIMER1EQU201H;计数器/定时器1口地址

MODE03EQU36H;方式字,定时器0工作于方式3

MODE12EQU74H;方式字,定时器1工作于方式2

DATASEGMENT

MESSDB’8253ATIMER0INMODE3!

COUNT=2000H’,0AH,0DH

DB’8253ATIMER1INMODE2!

COUNT=0FH’,0AH,0DH,’$’

DATAENDS

CODESEGMENT

MAINPROCFAR

ASSUMECS:

CODE,DS:

DATA

START:

PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA

MOVDS,AX

CLI;关中断

MOVDX,TIM-CTL

MOVAL,MODE03;设置定时器0,工作于方式3

OUTDX,AL

MOVDX,TIMER0

MOVAL,00;定时器0置初值低位为00H

OUTDX,AL

MOVAL,20H;定时器0置初值,高位为20H

OUTDX,AL

MOVDX,TIM-CTL

MOVAL,MODE12;定时器1,工作于方式2

OUTDX,AL

MOVDX,TIMER1;定时器1置初值低位为0FH

MOVAL,0FH

OUTDX,AL

MOVAL,00;定时器置初值高位为00H

OUTDX,AL

STI;开中断

MOVDX,OFFSETMESS;显示提示信息

MOVAH,09

INT21H

RET

MAINENDP

CODEENDS

STARTEND

27.编一初始化程序,使8255A的PC5端输出一个负跳变。

如果要求PC5端输出一个负脉冲则初始化程序又是什么情况?

解答:

初始化程序:

MOVAL,0BH;PC5置“1”控制字→AL

MOVDX,××××××11B;控制口地址→DX

OUTDX,AL;置“1”控制字→控制寄存器

MOVAL,0AH;PC5置“0”控制字→AL

OUTDX,AL;置“0”控制字→控制寄存器

如果要求PC5输入一个负脉冲则再加两条指令

MOVAL,0BH

OUTDX,AL

28.设8251A的控制和状态端口地址为52H,数据输入/输出口地址为50H(输出端口未用),输入50个字符,将字符放在BUFFER所指的内存缓冲区中。

请写出这段的程序。

解答:

MOVAL,0FAH

OUT52H,AL;设置模式因子,异步方式,波特新因子为16,用7个数据位,2个停止位,偶校验

MOVAL,35H

OUT52H,A2;设置控制字,使发送器和接收器启动,并清除出错指示位

MOVDI,0;变址寄存器初始化

MOVCX,50;共50个字符

BEGIN:

INAL,52H

TESTAL,02H读取状态字,测试RXRDY位,是否为1,如为0表示未收到字符,故继续读取状态并测试

JZBEGIN

INAL,50;读取字符

MOVDX,OFFSETBUFFER

MOV[DX+DI],AL;将字符送入缓冲区

INCDI;修改缓冲区指针

INAL,52H;读取状态字

TESTAL,38H

JNEERROR;测试有无帧格式错误,奇/偶校验错误和超越错误,如有则转出错处理程序。

LOOPBEGIN;如没有错再接收下一个字符。

JMPEXIT;如输入满50个字符,结束

ERROR:

CALLERR-OUT;调用出错处理程序

EXIT:

29.设状态端口地址为86H,数据端口地址为87H,外部输入信息准备好状态标志为D7=1.请用查询方式写出读入外部信息的程序段。

解答:

POLL:

INAL,86H;从状态端口输入状态信息

TESTAL,80H;检查READY是否是1

JEPOLL;为准备好,循环

INAL,87H;准备好,从数据端口输入数据

30.设状态端口地址为76H,数据端口地址为75H,外设是否准备好信息由D7位传送,D7=l为准备好,D7=0为未准备好(忙),请用查询方式写出CPU向外部传送数据的程序段。

解答:

POLL:

INAL,76H;从状态端口输入状态信息

TESTAL,80H;检查忙标志位

JNEPOLL;忙等待

MOVAL,DATA;从缓冲区取数据

OUT75H,AL;从数据端口输出

31.什么是A/D、D/A转换器?

答:

把模拟量信号转换成数字量的器件为模/数转换器,简称为A/D转换器。

把数字量信号转换成模拟量的器件为数/模转换器,简称为D/A转换器。

32.A/D和D/A转换器在微型计算机应用中起什么作用?

答:

微型计算机只能对二进制数字形式表示的信息进行运算和处理,其运算和处理的

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2