计算机原理答案(4)

来源:网络收集 时间:2025-06-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

优点:

1) CPU能够及时了解外部设备的状态,从而对外部设备IO请求进行及时处理。 2) 由于CPU“被动”地等待外部设备的“中断请求”,外部设备进行输入/输出操作

时,CPU可以同时执行其他的程序,CPU和外部设备“并行”工作。

3) 由于同样的原因,在中断方式下,CPU可以同时管理多台外部设备,CPU的效率

得到提高。 缺点:

1) 用中断方式需要CPU增加相应的管理逻辑,增加了CPU电路的复杂性。

2) 由于CPU“被动”地接收“中断请求”信号,CPU必须通过与外部的一个联络过

程才能知道是那一个设备在申请中断,这增加了响应时间。为了从当前任务转移到中断服务,CPU必须保护原有的运行环境,进行“任务”的“切换”,这也会增加响应时间。

3) 有较多的设备使用中断方式时,会产生“中断申请”的“竞争”。这一方面降低了

响应速度,另一方面增加了管理的复杂性。

9. 10. 某输入设备接口数据端口、状态端口、控制端口地址分别为70H, 71H, 72H。状态端口D5=1表示输入完成,控制端口D7=1表示启动设备输入(输入完成后由设备清除该位)。从该设备输入100个字节数据,存入以BUFFER为首地址的缓冲区。如果启动该设备1秒后仍未完成一次输入,则视为超时错,显示出错信息后返回。分别用8086汇编语言和C语言编写完成上述功能的I/O程序。

汇编语言程序: DATA SEGMENT BUFFER DB 100 DUP(?) ERROR DB “OVER TIME !”, “$” DATA ENDS ;

CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV CX, 100 LEA BX, BUFFER ONE: XOR DX, DX ;DX用作响应计时器,初值0

MOV AL, 80H

OUT 72H, AL ;启动输入 W: IN AL, 71H INC DX ;记录延迟时间 TEST AL, 00100000B ;测试完成位 JNZ READ ;输入完成,转READ读取数据 CMP DX, 50000 ;假设循环50000次时间为1秒 JB W ;未超时,继续测试 JMP OVERTIME ;超过1秒,报告出错 READ: IN AL, 70H ;读入数据

MOV [BX], AL ;数据存入缓冲区 INC BX ;修改指针 LOOP ONE ;100个数据尚未输入完成,转ONE继续 JMP DONE ;100个数据输入完成,转DONE结束程序 OVERTIME: LEA DX, ERROR MOV AH, 9 INT 21H ;响应超时,显示出错信息 DONE: MOV AX, 4C00H INT 21H ;返回OS CODE ENDS END START 11. 某输出设备数据端口、状态端口地址分别为220H, 221H。状态端口D0=1表示输出完成。将数据段中以STRING为首地址的20个字符(用七位ASCII代码存储)添加水平和垂直校验发送到该外部设备。用8086汇编语言编写完成上述功能的I/O程序。

汇编语言程序: DATA SEGMENT

STRING DB 20 DUP ( ? ) SUM DB 0 DATA ENDS ;

CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV CX, 20 LEA BX, STRING MOV SUM, 0 ; 垂直校验码初值为0 ONE: MOV DX, 221H ; DX置为状态端口地址 IN AL, DX TEST AL, 00000001B ;测试输出完成位 JZ ONE ;未完成,转ONE继续读取状态 MOV AL, [BX] ;从字符串取出一个字符的ASCII代码

AND AL, 07FH ;清除最高位,准备置入校验位 JPE OUTPUT ;判代码奇偶属性, OR AL, 80H ;奇数个“1”,最高位置1(偶校验) OUTPUT: MOV DX, 220H OUT DX, AL ;输出添加了校验位的代码 XOR SUM, AL ;生成垂直校验位 INC BX ;修改指针 LOOP ONE ;20个数据尚未输出完成,转ONE继续

MOV DX, 221H ;输出垂直校验代码

LAST: IN AL, DX TEST AL, 00000001B JZ LAST MOV AL, SUM MOV DX, 220H OUT DX, AL DONE: MOV AX, 4C00H INT 21H ;返回OS CODE ENDS END START 1. 什么叫中断?有哪几种不同类型的中断?

由于某个事件的发生,CPU暂停当前正在执行的程序,转而执行处理该事件的一个程序。该程序执行完成后,CPU接着执行被暂停的程序。这个过程称为中断。

根据中断源的位置,有两种类型的中断。有的中断源在CPU的内部,称为内部中断。大多数的中断源在CPU的外部,称为外部中断。

根据中断引脚的不同,或者CPU响应中断的不同条件,也可以把中断划分为可屏蔽中断和不可屏蔽中断两种。

2. 什么是中断类型?它有什么用处?

用若干位二进制表示的中断源的编号,称为中断类型。

中断类型用来区分不同的中断,使CPU能够在中断响应时调出对应的中断服务程序进行中断处理。 3.

4. 什么是中断嵌套?使用中断嵌套有什么好处?对于可屏蔽中断,实现中断嵌套的条件是

什么?

CPU在处理级别较低的中断过程中,出现了级别较高的中断请求。CPU停止执行低级别中断的处理程序而去优先处理高级别中断,等高级别中断处理完毕后,再接着执行低级别的未处理完的中断处理程序,这种中断处理方式称为多重(级)中断或中断嵌套。

使用中断嵌套可以使高优先级别的中断得到及时的响应和处理。

对于可屏蔽中断,由于CPU在响应中断时已将IF清零,所以一定要在中断处理程序中加入开中断指令,才有可能进行中断嵌套。

5. 什么叫中断屏蔽?如何设置I/O接口的中断屏蔽?

用程序的方法使某些中断源的中断请求不能够发送到CPU,或者虽然能够发送但是不能得到响应,这种方法称为中断屏蔽。

在外设的接口内增设一个中断屏蔽触发器(可以用D触发器实现),该触发器的Q端与中断请求信号相“与”后连接到INTR。当Q = 0时,中断请求不能发往INTR。通过设定中断屏蔽触发器的状态,可以控制中断请求信号是否能够送到INTR端。

置IF= 0, 可以使80x86CPU不响应来自INTR的可屏蔽中断请求。

6. 什么是中断向量?中断类型为1FH的中断向量为2345H:1234H,画图说明它在中断向

量表中的安置位置。

中断服务程序的入口地址称为中断向量。中断类型为0000:007CH34H1FH,它的中断向量放置在1FH×4=0000: 7CH开始的位置上。0000:007DH12H0000:007EH45H如右图。

0000:007FH23H7.

8.

9. 8259A是怎样进行中断优先权管理的?

8259A通过以下两种途径实现对中断优先权的管理:

(1) 通过设置中断屏蔽寄存器IMR,可以屏蔽某些中断请求,从而动态地改变各请

求端的优先级别。

(2) 8259A响应某个中断请求之后,将ISR寄存器对应位置1。如果后续的中断请求

级别低于正在响应的中断请求,则该中断不能立即被响应。反之,如果新的中断请求级别高于正在响应的中断请求,则允许进行中断嵌套。中断服务结束时,应将ISR寄存器对应位清零。

10. 特殊全嵌套方式有什么特点?它的使用场合是什么?

特殊全嵌套方式一般用于级联方式下的8259A主片。

如果8259A主片在一次中断处理尚未结束时,收到了来自同一个引脚的第二次中断请求,并且该8259A采用普通全嵌套方式,则它不会响应来自同一个引脚的第二次中断请求。如果该8259A采用特殊全嵌套方式,就会响应该请求(中断嵌套),从而可以及时响应连接在同一从片8259A上,并且相对有较高优先级别的中断请求。 11. 12. 13. 某8086系统用3片8259A级联构成中断系统,主片中断类型号从10H开始。从片

的中断申请连主片的IR4和IR6引脚,它们的中断类型号分别从20H、30H开始。主、从片采用电平触发,嵌套方式,普通中断结束方式。请编写它们的初始化程序。

假设主片端口地址为10H,12H。从片的端口地址分别为 18H, 1AH和 1CH, 1EH。 ……

MOV AL, 00011001B ;主片ICW1 OUT 10H, AL ;电平触发,级连方式 MOV AL, 10H ;主片ICW2 OUT 12H, AL ;主片中断类型 MOV AL, 01010000B ;主片ICW3 OUT 12H, AL ;IR4,IR6连有从片 MOV AL, 00010001B ;主片ICW4 OUT 12H, AL ;特殊全嵌套,非自动中断结束

MOV AL, 00011001B ;从片ICW1 OUT 18H, AL ;电平触发,级连方式 MOV AL, 20H ;从片ICW2 OUT 1AH, AL ;从片中断类型 MOV AL, 00000100B ;从片ICW3 OUT 1AH, AL ;本片连接在主片IR4引脚上 MOV AL, 00000001B ;从片ICW4 OUT 1AH, AL ;非特殊全嵌套,非自动中断结束

MOV AL, 00011001B ;从片ICW1 OUT 1CH, AL ;电平触发,级连方式 MOV AL, 30H ;从片ICW2

OUT 1EH, AL ;从片中断类型 MOV AL, 00000110B ;从片ICW3 OUT 1EH, AL ;本片连接在主片IR6引脚上 MOV AL, 00000001B ;从片ICW4 OUT 1EH, AL ;非特殊全嵌套,非自动中断结束 注意:

(1) 由于8086系统有16根数据线,各8259A的端口地址均为偶数(假设各8259A

的数据线连接在8086系统的低8位数据线上)。

(2) 主片用特殊全嵌套,从片用一般全嵌套。

习 题 七

1. 8255A的方式选择控制字和C口按位控制字的端口地址是否一样,8255A怎样区分这两种控制字?写出A端口作为基本输入,B端口作为基本输出的初始化程序。 解:

(1) 8255A的方式选择控制字和C口按位控制字的端口地址一样,它们之间的区别在控制字的D7位(特征位)的值不同,8255A的方式选择控制字D7=1,而C口按位置位/复位控制字D7=0。

(2) 初始化程序:(设端口地址为,A口:200H,B口:201H,控制口:203H) MOV AL,90H MOV DX,203H OUT DX,AL

2. 用8255A的A端口接8位二进制输入,B端口和C端口各接8只发光二极管显示二进制数。编写一段程序,把A端口读入的数据送B端口显示,而C端口的各位则采用置0/置1的方式显示A端口的值。 解:(设端口地址为,A口:200H,B口:201H,C口:202H,控制口:203H)

MOV AL, 90H ;8255A初始化: MOV DX, 203H ;8255A各组方式0,A口输入 OUT DX, AL ; B、C口输出 MOV DX, 200H IN AL, DX ;读A口输入值 MOV DX, 201H OUT DX, AL ;送B口输出 MOV AH, AL ;A口输入值转存在AH中 MOV DX, 203H MOV CX, 08 ;CX置循环次数初值 MOV AL, 00H ;C端口置0/置1控制字初值

LPA: AND AL, 0FEH ;清除最低位

SHR AH, 1 ;A端口一位转入CF ADC AL, 0 ;A端口一位从CF转入命令字 OUT DX, AL ;A端口一位从送往C端口对应位 ADD AL, 02H ;形成下一个命令字 LOOP LPA ;处理C端口下一位

5. 8254定时/计数器的定时与计数方式有什么区别?8254在方式0工作时,各通道的CLK、

GATE信号有什么作用?各通道的控制字地址都相同,8254是怎样区分的? 解:

(1) 8254作为计数器使用时,对CLK端的输入脉冲进行单纯的减法计数,这时

CLK端输入的脉冲不作为计时基准。此外,用作计数器时,计数完成后必须重新初始化,只能使用一次。 8254作为定时器使用时,要求CLK端输入的脉冲必须作为时钟基准,通过对该基准时钟脉冲的计数来实现精确定时。用作定时器时,计数的过程周而往复,重复进行。 (2) 8254工作在方式0时,CLK端输入计数用的脉冲信号;GATE信号为高电平

时,对CLK端输入的脉冲进行计数;GATE信号为低电平时,暂停计数; GATE信号重新为高电平后,恢复原先的计数。 (3) 由8254的方式控制字中的D7、D6两位来选择计数通道。

百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库计算机原理答案(4)在线全文阅读。

计算机原理答案(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.70edu.com/wenku/389973.html(转载请注明文章来源)
Copyright © 2020-2025 70教育网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备16052595号-17
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219