第十章习题答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第十章习题答案

一、简答题

(1)简述并行接口的重要特点。

答:并行接口的主要特点:数据并行传输,传输速度快但距离觉近。并行接口的主要功能:并行传输数据,在主机与外设之间起到数据缓冲和匹配的作用。

(2)8255A有哪几种工作方式?各有什么特点?

答:8255A有方式0(基本输入输出方式)、方式1(单向选通输入输出方式)、

方式2(双向选通输入输出方式)等三种工作方式。

三种工作方式的主要特点:

方式0:

数据单向输出或单向输入。

主机认为外设总是处于准备好状态,没有联络信号。

主机与外设之间传输数据采用无条件传输方式

A口、B口C口高4位、C口低4位都可工作在方式0。

方式1:

数据单向输出或单向输入。

主机与外设之间传输数据需要一对联络(握手)信号。

主机与外设之间主要采用中断方式传输数据,也可采用查询方式。

A口与C口的高5位组成A组,B口与C口的低3位组成B组。

A口和B口为数据输入输出口,C口为控制口。

方式2:

数据可以双向输入输出。

只有A口能工作在方式2

A口为数据双向输入输出口,C口高5位为控制线。

主机与外设之间主要采用中断方式传输数据,也用采用查询方式。

(3)简述8255A工作在方式1输出时的工作过程

答:a:CPU接受中断请求,使用OUT指令向8255A输出数据并发写信号WR,WR 信号的上升沿一方面清除INTR中断请求信号,表示已响应中断,另一方面使OBF有效。

b:OBF信号有效表示输出缓冲区已满,通知外设取走数据。

c:外设接收数据,将ACK信号置为"0",即向8255A发回答信号,表示已收到数据。ACK的下降沿使OBF轩"1",表示数据已取走。ACK的上升沿使INTR有效。

d:INTR有效,向CPU发中断请求,请求输出下一个数据。

(4)定时器和计数器有什么相同和不同?

答:定时器和计数器是同一器件--计数器件,其共同的特点是都有一个计数脉冲输入端,每输入一个脉冲,计数器就进行加1或减1计数。若计数器件的计数脉冲的频率固定,则可利用计数实现定时,这就是定时器。若计数器件的作用仅仅是记录输入脉冲的多少,则称为计数器。

(5)为什么要对8253写控制字?8253的控制字包括啊些内容?

答:8253有多种工作方式供选择,因此8253在使用前必须先向其写控制字,以决定工作在哪一种方式

(6)8253的控制字是否可以读出?计数初值是否可以读出?可以从8253读出什么内

容?

答:不可以;不可以;从输出锁存寄存器读出减计数单元中的计数值。

(7)如何选择8253的计数器作为二进制计数还是作为十进制(BCD码)计数器?

答:控制字的D0位设为1则为十进制计数器。

二、设8255A的4个端口地址为0060H-0063H,试写出下列各种情况的工作方式命令字。

(1)A组B组工作在方式0,A口B口为输入口,C口为输出口。

(2)A组工作在方式2,B组工作在方式1,B口为输出口。

(3)A组B组都工作在方式1,均为输入口,PC6和PC7为输出。

答:(1)92H(2)C4H(3)B6H

三、8255A的A口和B口工作在方式0,A口为输入端口,接有4个开关;B口为输出端口,

接有1个7段发光二极管,其硬件连接电路如图10.18所示,LED显示0-FH的各字符代码列表如表10-3。试编一程序要求7段发光二极管显示开关所拨通的数字。(其中A 口地址8020H B口地址8022H C口地址8024 控制口地址8026)

图10.18 8255A与7段LED的连接

2

表10-3

答:源程序如下:

APORTEQU8020H

BPORTEQU8022H

CPORTEQU8024H

CONTREQU8026H

DA TASEGMENT

TAB1DB3FH,06H,5BH,4FH,66H,7DH,07H

DB7FH,6FH,77H,7CH,5EH,79H,71H

DA TAENDS

ASSUME:CS:CODEDS:DA TA

START:MOVAX,DATA

MOVDS,AX

MOVAL,90H

MOVDX,CONTR

OUTDX,AL

ADDR1:MOVDX,APORT

INAL,DX

ANDAL,OFH

MOVBX,OFFSET TAB1

XLAT

MOVDX,BPORT

OUTDX,AL

MOVCX,0400H

ADDR2:DECCX

JNZADDR2

JMPADDR1

CODE:ENDS

ENDSTART

四、设有2片8255A,其中:

8255A-1的地址为A口:10H;B口:12H;C口:14H;控制口:16H

8255A-2的地址为A口;20H;B口:22H;C口:24H;控制口:26H

有一片8259A,它的两个端口地址为90H和92H

3

有一片8251A,它连接CRT,已被初始化,数据口:54H;控制口:56H

现将8255A-2的B 口和8255A-1的A 口相连,用8255A-2的B口作为8位数据输出口,工作于方式0,C口也工作于方式0;当B口进行数据输出时,用PC1作为选通信号。8255A-1的A口作为8位数据输入口,工作于方式1,中断请求信号和8259A的IR2相连。要求8259A是ICW2为20H,用边沿触发,全嵌套方式并采用中断自动结束方式。

下面的程序由CPU 往8255A-2的B 口输出数据0~9,再从8255A-1的A口输入,然后往CRT输出。请填写下列程序中和程序后面的空项。

[答案]

MOV AL ,▁▁▁▁;8259A初始化13

OUT ▁▁▁,AL 90

MOV AL,▁▁▁20

OUT ▁▁▁,AL 92

MOV AL,▁▁▁0F

OUT ▁▁▁,AL 92

IN AL,▁▁▁;该中断屏蔽字92

AND AL,▁▁▁;设置新的屏蔽字0FB

OUT ▁▁▁,AL 92

MOV AL,▁▁▁;8255A-1初始化0B0

OUT ▁▁▁,AL 16

MOV AL,▁▁▁;8255A-2初始化80

OUT ▁▁▁,AL 26

MOV AH,00 ;送数字0

STI

KK:MOV AL,▁▁▁;用按位置1方式使选通无效03

OUT ▁▁▁,AL 26

MOV AL,AH ;8255A-2的B 口输出数据

OUT ▁▁▁,AL 22

MOV AL,▁▁▁02

OUT ▁▁▁,AL 26

INC AH

CMP AH ,OA ;是否超过9

JNZ KK

MOV AH,0

JMP KK

T:IN AL,▁▁▁;测试CRT 56

TEST AL,01

JZ T

IN AL,▁▁▁▁;读入数据10

AND AL,0F

ADD AL,▁▁▁▁;变成ASCII码30

OUT ▁▁▁▁,AL ;往CRT输出54

4

相关文档
最新文档