第10章 输入输出系统(2)
《C++程序设计》电子教案第10章 流类库与输入输出
C++中所有流都是相同的 , 但文件可以不同 。 中所有流都是相同的, 但文件可以不同。 中所有流都是相同的 使用流以后, 使用流以后 , 程序用流统一对各种计算机设备 和文件进行操作,使程序与设备、 和文件进行操作 , 使程序与设备 、 程序与文件 无关,从而提高了程序设计的通用性和灵活性。 无关 , 从而提高了程序设计的通用性和灵活性 。 也就是说, 也就是说 , 无论与流相联系的实际物理设备差 别有多大,流都采用相同的方式运行。 别有多大 , 流都采用相同的方式运行 。 这种机 制使得流可以跨越物理设备平台, 制使得流可以跨越物理设备平台 , 实现流的透 明运作,而与实际的物理设备无关。例如, 明运作 , 而与实际的物理设备无关 。 例如 , 往 显示器上输出字符和向磁盘文件或打印机输出 字符,尽管接受输出的物理设备不同, 字符 , 尽管接受输出的物理设备不同 , 但具体 操作过程是相同的。 操作过程是相同的。
返回本节
10.2 格式化 格式化I/O
10.2.1 10.2.2 10.2.3 10.2.4 ios类中的枚举常量 类中的枚举常量 使用ios成员函数 使用 成员函数 使用I/O操作符 使用 操作符 检测流操作的错误
返回首页
10.2.1 ios类中的枚举常量 类中的枚举常量
在根基类ios中定义有三个用户需要使用的枚举类型, 在根基类 中定义有三个用户需要使用的枚举类型,由 中定义有三个用户需要使用的枚举类型 于它们是在公用成员部分定义的, 于它们是在公用成员部分定义的,所以其中的每个枚举类 型常量在加上ios::前缀后都可以为本类成员函数和所有外 型常量在加上 前缀后都可以为本类成员函数和所有外 部函数访问。 部函数访问。 在三个枚举类型中有一个无名枚举类型, 在三个枚举类型中有一个无名枚举类型,其中定义的每个 枚举常量都是用于设置控制输入输出格式的标志使用的。 枚举常量都是用于设置控制输入输出格式的标志使用的。 该枚举类型定义如下: 该枚举类型定义如下: enum { skipws,left,right,internal,dec,oct,hex,sh owbase,showpoint, uppercase,showpos,scientific,fixed,unitbuf, stdio };
第10章 C++语言的输入与输出-面向对象程序设计(C++语言)(第二版)-程磊-清华大学出版社
设置状态标志flags 清楚状态标志,并返回前状态标志 测试状态标志 设置标志flags, 并返回前状态标志 返回当前的宽度设置值 设置域宽w,返回以前的设置 设置小数位数p,返回以前的小数位数 返回当前的填充字符 设置填充字符ch,返回当前的填充字符
13
下面分别介绍这些成员函数的使用方法;
(1)设置状态标志:
cout<<”x_width=”<<cout.width( )<<endl; cout<<”x_fill=”<<cout.fill ( )<<endl; cout<<”x_precision=”<<cout.precision( )<<endl; cout<<123<<” ”<<123.45678<<endl; cout<<”______________________________\n”; cout<<”*** x_width=10,x_fill=, x_precision=4 ***\n”; cout.width(10); cout.precision(4); cout<<123<<” ”<<123.45678<<” ”<<234.567<<endl;
1. C++的流概述 ❖ 在C++中,输入输出流被定义为类,称为流类。 ❖ I/O 系 统 仍 然 是 以 字 节 流 的 形 式 实 现 的 , 流
(Stream)实际上就是一个字节序列,流总是 与某一设备相联系的,它既可以从输入设备 (如键盘、磁盘等)流向计算机内存,亦可以 从计算机内存流向输出设备(如显示器、打印 机、磁盘等)。 ❖ 输入输出的字节可以是ASCII字符、内部格式 的原始数据、图形图像、数字音频、视频等。
计算机组成原理唐朔飞完整版
取x 至运算器中 乘以a 在运算器中 加b 在运算器中 乘以x 在运算器中 加c 在运算器中
指令格式举例
1.2
操作码
地址码
取数 000001 存数 加 乘 打印 停机
α 0000001000 β γ δ
[α]
ACC
[ACC] [ACC]+[γ] [ACC]×[δ]
[ ]
β ACC
ACC 打印机
计算 ax2 + bx + c 程序清单
乘积高位
乘数 乘积低位
被除数
除法 余数
商
X 加数 减数 被乘数 除数
① 加法操作过程
1.2
ACC MQ ALU
X
运算器
指令
加
初态 ACC [M]
[ACC]+[X]
M 被加数 X ACC
② 减法操作过程
1.2
ACC MQ ALU
X
运算器
指令
减M
初态 ACC [M]
[ACC]-[X]
被减数 X ACC
1.2
指令和数据存于
指令
主存单元的地址 操作码 地址码
注释
0
000001 0000001000 取数x至ACC
1
000100 0000001001 乘a得ax,存于ACC中
2
000011 0000001010 加b得ax+b ,存于ACC中
3
000100 0000001000 乘x得(ax+b)x,存于ACC中
计算机
存储器 I/O
第3篇 CPU
系统总线
CPU
中央处理器
ALU CU
CPU 内部互连
第10章门电路和组合逻辑电路
× 1 × × × × × 0 1 1
× 1 × × × × 0 1 1 1
× 1 × × × 0 1 1 1 1
× 1 × × 0 1 1 1 1 1
× 1 × 0 1 1 1 1 1 1
× 1 0 1 1 1 1 1 1 1
1 1 0 0 0 0 1 1 1 1
1 1 0 0 1 1 0 0 1 1
第10章 门电路和组合逻辑电路
1.三位二进制(8线-3线)编码器
集成8线-3线优先编码器74LS148的外引脚图, 如图10.20所示。
16
15
14 YEX
13
I3
12 I2
11 I1
10
I0
9
Y0
+VCC YS
74LS148
I4 1 I5 2 I6 3 I7 4 S 5 Y2 6 Y1 7 GND 8
1 1 0 1 0 1 0 1 0 1
1 1 0 0 0 0 0 0 0 0
1 0 1 1 1 1 1 1 1 1
第10章 门电路和组合逻辑电路
2. 二-十进制(10线-4线)编码器
二-十进制编码 器是 将十进制的十个数码0、1、 2、3、4、5、6、7、8、9编 成二进制代码的电路。输入 0~9十个数码,输出对应的 二进制代码,因2n≥10, n 常取4,故输出为四位二进 制代码。这种二进制代码又 称二-十进制代码,简称 BCD码。集成10线-4线先编 码器为74LS147实现了这种 编码,引脚图和逻辑符号如 图10-21a、b所示。
&
Y
图10-2 ―与”门电路
第10章 门电路和组合逻辑电路
―与”逻辑关系又称为逻辑乘,其表达式为 Y=A· =AB B ―与”逻辑真值表
计算机组成原理目录
计算机组成原理目录目录如下:第1篇概论第1章计算机系统概论1.1 计算机系统简介1.1.1 计算机的软硬件概念1.1.2 计算机系统的层次结构1.1.3 计算机组成和计算机体系结构1.2 计算机的基本组成1.2.1 冯·诺依曼计算机的特点1.2.2 计算机的硬件框图1.2.3 计算机的工作步骤1.3 计算机硬件的主要技术指标1.3.1 机器字长1.3.2 存储容量1.3.3 运算速度1.4 本书结构思考题与习题第2章计算机的发展及应用2.1 计算机的发展史2.1.1 计算机的产生和发展2.1.2 微型计算机的出现和发展2.1.3 软件技术的兴起和发展2.2 计算机的应用2.2.1 科学计算和数据处理2.2.2 工业控制和实时控制2.2.3 网络技术的应用2.2.4 虚拟现实2.2.5 办公自动化和管理信息系统2.2.6 CAD/CAM/CIMS2.2.7 多媒体技术2.2.8 人工智能2.3 计算机的展望思考题与习题第2篇计算机系统的硬件结构第3章系统总线3.1 总线的基本概念3.2 总线的分类3.2.1 片内总线3.2.2 系统总线3.2.3 通信总线3.3 总线特性及性能指标3.3.1 总线特性3.3.2 总线性能指标3.3.3 总线标准3.4 总线结构3.4.1 单总线结构3.4.2 多总线结构3.4.3 总线结构举例3.5 总线控制3.5.1 总线判优控制3.5.2 总线通信控制思考题与习题第4章存储器4.1 概述4.1.2 存储器的层次结构4.2 主存储器4.2.1 概述4.2.2 半导体存储芯片简介4.2.3 随机存取存储器4.2.4 只读存储器4.2.5 存储器与CPU的连接4.2.6 存储器的校验4.2.7 提高访存速度的措施4.3 高速缓冲存储器4.3.1 概述4.3.2 Cache—主存地址映射4.3.3 替换策略4.4.1 概述4.4.2 磁记录原理和记录方式4.4.3 硬磁盘存储器4.4.4 软磁盘存储器4.4.5 磁带存储器4.4.6 循环冗余校验码4.4.7 光盘存储器思考题与习题附录4A 相联存储器第5章输入输出系统5.1 概述5.1.1 输入输出系统的发展概况5.1.2 输入输出系统的组成5.1.3 I/O设备与主机的联系方式5.1.4 I/O设备与主机信息传送的控制方式5.2 I/O设备5.2.1 概述5.2.2 输入设备5.2.3 输出设备5.2.4 其他I/O设备5.2.5 多媒体技术5.3 I/O接口5.3.1 概述5.3.2 接口的功能和组成5.3.3 接口类型5.4 程序查询方式5.4.1 程序查询流程5.4.2 程序查询方式的接口电路5.5 程序中断方式5.5.1 中断的概念5.5.2 I/O中断的产生5.5.3 程序中断方式的接口电路5.5.4 I/O中断处理过程5.5.5 中断服务程序的流程5.6 DMA方式5.6.1 DMA方式的特点5.6.2 DMA接口的功能和组成5.6.3 DMA的工作过程5.6.4 DMA接口的类型思考题与习题附录5A ASCⅡ码附录5B BCD码附录5C 奇偶校检码第3篇中央处理器第6章计算机的运算方法6.1 无符号数和有符号数6.1.1 无符号数6.1.2 有符号数6.2 数的定点表示和浮点表示6.2.1 定点表示6.2.2 浮点表示6.2.3 定点数和浮点数的比较6.2.4 举例6.2.5 IEEE754标准6.3 定点运算6.3.1 移位运算6.3.2 加法与减法运算6.3.3 乘法运算6.3.4 除法运算6.4 浮点四则运算6.4.1 浮点加减运算6.4.2 浮点乘除法运算6.4.3 浮点运算所需的硬件配置6.5 算术逻辑单元6.5.1 ALU电路6.5.2 快速进位链思考题与习题附录6A 各种进位制6A.1 各种进位制的对应关系6A.2 各种进位制的转换附录6B 阵列乘法器和阵列除法器附录6C 74181逻辑电路第7章指令系统7.1 机器指令7.1.1 指令的一般格式7.1.2 指令字长7.2 操作数类型和操作类型7.2.1 操作数类型7.2.2 数据在存储器中的存放方式7.2.3 操作类型7.3 寻址方式7.3.1 指令寻址7.3.2 数据寻址7.4 指令格式举例7.4.1 设计指令格式应考虑的各种因素7.4.2 指令格式举例7.4.3 指令格式设计举例7.5 RISC技术7.5.1 RISC的产生和发展7.5.2 RISC的主要特征7.5.3 RISC和CISC的比较思考题与习题第8章 CPU的结构和功能8.1 CPU的结构8.1.1 CPU的功能8.1.2 CPU结构框图8.1.3 CPU的寄存器8.1.4 控制单元和中断系统8.2 指令周期8.2.1 指令周期的基本概念8.2.2 指令周期的数据流8.3 指令流水8.3.1 指令流水原理8.3.2 影响流水线性能的因素8.3.3 流水线性能8.3.4 流水线中的多发技术8.3.5 流水线结构8.4 中断系统8.4.1 概述8.4.2 中断请求标记和中断判优逻辑8.4.3 中断服务程序入口地址的寻找8.4.4 中断响应8.4.5 保护现场和恢复现场8.4.6 中断屏蔽技术思考题与习题第4篇控制单元第9章控制单元的功能9.1 微操作命令的分析9.1.1 取指周期9.1.2 间址周期9.1.3 执行周期9.1.4 中断周期9.2 控制单元的功能9.2.1 控制单元的外特性9.2.2 控制信号举例9.2.3 多级时序系统9.2.4 控制方式9.2.5 多级时序系统实例分析思考题与习题第10章控制单元的设计10.1 组合逻辑设计10.1.1 组合逻辑控制单元框图10.1.2 微操作的节拍安排10.1.3 组合逻辑设计步骤10.2 微程序设计10.2.1 微程序设计思想的产生10.2.2 微程序控制单元框图及工作原理10.2.3 微指令的编码方式10.2.4 微指令序列地址的形成10.2.5 微指令格式10.2.6 静态微程序设计和动态微程序程序设计10.2.7 毫微程序设计10.2.8 串行微程序控制和并行微程序控制10.2.9 微程序设计举例思考题与习题附录10A PC整机介绍10A.1 主板10A.1.1 主板的主要组成部件10A.1.2 CPU芯片及插座(插槽)10A.1.3 内存条插槽10A.1.4 扩展插10A.1.5 配套芯片和器件10A.1.6 主板结构的改进10A.2 芯片组10A.2.1 芯片组的功能10A.2.2 芯片组的组成《计算机组成原理》是2008年1月1日高等教育出版社出版的图书,作者是唐朔飞。
C语言第10章对文件的输入输出 ppt课件
PPT课件
11
10.1.1 什么是文件
➢从C程序的观点来看,无论程序一次读写 一个字符,或一行文字,或一个指定的数 据区,作为输入输出的各种文件或设备都 是统一以逻辑数据流的方式出现的。C语 言把文件看作是一个字符(或字节)的序 列。一个输入输出流就是一个字符流或字 节(内容为二进制数据)流。
PPT课件
20
10.1.3 文件的分类
ASCII形式
00110001 00110000 00110000 00110000 00110000
(1) (0) (0) (0) (0)
二进制形式
00000000 00000000 00100111 00010000
(10000)
PPT课件
21
10.1.4 文件缓冲区
的temp子目录下面
PPT课件
15
10.1.2 文件名
➢文件路径表示文文件件在名外部存储设备中的位 置。如:
D: \CC\temp\file1.dat 表示file1.dat文件存放在D盘中的CC目录下
的temp子目录下面
PPT课件
16
10.1.2 文件名
➢文件路径表示文命 识件名 符在规 的外则 命部遵 名存循 规储标 则设备中的位 置。如:
➢“文件”指存储在外部介质上数据的集合
一批数据是以文件的形式存放在外部介质上的 操作系统是以文件为单位对数据进行管理 想找存放在外部介质上的数据,先按文件名找
到所指定的文件,然后再从该文件读数据 要向外部介质上存储数据也必须先建立一个文
件(以文件名作为标志),才能向它输出数据
Java 程序设计基础第10章 Java语言的输入输出与文件处理
8
10.2.1 基本的输入输出流
OutputStream类常用的方法及功能见教材表 10.2。 由于OutputStream是抽象类,所以程序中创 建的输出流对象一般是OutputStream某个子 类的对象,通过调用该对象继承的write() 方法就可以实现对相应外设的输出操作。
11
} 用FileInputStream 、 FileOutputStream来实现对二进制图 像文件的复制。 //filename:App10_2.java 读写二进制文件 import java.io.*; public class App10_2 { public static void main(String[] args) throws IOException { FileInputStream fi=new FileInputStream("d:\\cgj\\风景.jpg"); FileOutputStream fo=new FileOutputStream("d:\\cgj\\风景1.jpg"); System.out.println("文件的大小="+fi.available()); byte[] b=new byte[fi.available()]; fi.read(b); fo.write(b); System.out.println("文件已被拷贝并被更名"); fi.close(); fo2.2 输入输出流的应用
文件输入(FileInputStream)输出流 (FileOutputStream )主要负责完成对本地磁盘文 件的顺序输入与输出操作。 FileInputStream类的对象表示一个文件字节输入 流,从中可读取一个字节或一批字节。 FileOutputStream类的对象表示一个字节文件输 出流,可向流中写入一个字节或一批字节。在生 成该类的对象时,若指定的文件不存在,则创建 一个新的文件,若已存在,则清除原文件的内容。 FileInputStream类和FileOutputStream类的构造 方法见教材表10.3和10.4。
第10章对挖
图10.1 输入输出系统的结构(具有CH或I/O处理机)
• 5. 外围处理机方式 • 输入输出处理机通常称作外围处理机(peripheral processor unit,简称PPU)。这种外围处理机的结构 更接近一般处理机,甚至就是一般小型通用计算机 或微机。它可完成I/O通道所要完成的I/O控制,还 可完成码制变换、格式处理、数据块的检错、纠错 等操作。它可具有相应的运算处理部件、缓冲部件, 还可形成I/O程序所必需的程序转移手段。有了外 围处理机,不但可简化设备控制器,而且可用它作 为维护、诊断、通信控制、系统工作情况显示和人 机联系的工具。
10.1.1 输入输出设备的编址及设备控制器的基本功 能 • 为了CPU便于对I/O设备进行寻址和选择,必须给 众多的I/O设备进行编址,也就是给每一台设备规 定一些地址码,称为设备号或设备代码。 • 随着CPU对I/O设备下达命令方式的不同而有以下 两种寻址方法: • (1) 专设I/O指令,例如,指令IN完成输入,指令 OUT完成输出操作。指令的地址码字段指出输入 输出设备的设备代码。
• ② 中断触发器 • 当中断源发生引起中断的事件时,先将它保存在设 备控制器的“中断触发器”中,即将“中断触发器” 置“1”。当中断触发器为“1”时,向CPU发出“中 断请求”信号。每个中断源有一个中断触发器。全 机的多个中断触发器构成中断寄存器。其内容称为 中断字或中断码。CPU进行中断处理时,根据中断 字确定中断源,转入相应的服务程序。
作的。当外设速度很慢时,主机大量时间被消耗在测试 等待中,使主机不能充分发挥效率。
程序查询方式——基本概念
CPU 需要不断监测状态
位以确定是否该做下
CPU
一 个 I/O 操 作 。 由 于
CPU 比 I/O 设 备 快 得 多 , 所以轮询就要浪费大 量的CPU时间。
第10章信息系统开发的基础知识
第10 章信息系统开发的基础知识1. 信息系统的定义:用以收集、处理、存储、分发信息的相互关联的组件集合,其作用在于支持组织的决策与控制。
(戈登. 戴维斯)2. 信息系统:1 输入输出类型明确(输入数据,输出信息);2 输出的信息必定是有用的; 3 信息系统中处理意味转换或变换原始数据,也意味计算、比较、变换或为将来使用进行存储; 4 反馈用于调整或改变输入或处理活动的输出,是进行有效控制的重要手段; 5 计算机不是信息系统所固有的。
3. 信息系统组成:1 计算机硬件系统;2 计算机软件系统;3 数据及相信介质; 4 通信系统; 5 非计算机系统的信息收集、处理设备; 6 规章制度;7 工作人员。
信息管理者。
4. ⑴ 信息系统结构:信息源-信息处理器-信息用户、⑵ 信息系统分层:战略层、战术层、作业层。
5. 信息系统的主要类型:面向作业处理的系统、面向管理控制的系统、面向决策计划的系统。
6. 面向作业处理的系统:办公自动化系统(OAS、事务处理系统(TPS、数据采集与监测系统(DAM)S。
7. 面向管理控制的系统:电子数据处理系统(EDPS、知识工作支持系统(KWSS计算机集成制造系统(CIMS。
8. 面向决策计划的系统:决策支持系统(DSS、战略信息系统(SIS)、管理专家系统(MES。
9. 信息系统对企业的影响4:1 促使组织结构的扁平化;2结构更加灵活有效; 3 虚拟办公室; 4 增加企业流程重组的成功率。
10. 信息系统工程是指信息化工程建设中的信息网络系统、信息资源系统、信息应用系统的新建、升级改造工程。
、11. 信息系统工程的特点3:1 研究方法的整体性;2技术应用上的综合性;3 管理上的科学化。
12. 信息系统工程的基本方法分为:技术方法;行为方法;社会技术系统方法。
13. 信息系统幵发阶段:系统分析;系统设计;系统实施;系统运行维护。
分析阶段:在着手编程之前,首先必须要有一定的时间用来认真考虑以下问题:1、系统所要求解决的问题是什么?2、为解决该问题,系统应干什么?3、系统应该怎么干?在总体规划阶段,通过初步调查和可行性分析,建立了目标系统的目标,已经回答了第一个问题。
信号与系统基础-第10章
10.1 系统的状态空间描述
(3) 状态向量:状态变量
x1 (t ), x2 (t ),, xn (t ) 的列向量形式就是状态向量,用 x (t ) 表示,
x1 (t ) x (t ) x (t ) 2 x1 (t ) 1 系统的状态空间描述
1.输入~输出描述 本章将介绍不仅与系统输出和输入信号有关,还涉及系统内部参数的“状态空间”描述法。 图10-1是一个SISO系统的两种描述法示意图。
f (t ) f [ n]
LTI系统 微分/差分方程 (a)外部法
y (t ) y[n]
f (t ) f [ n]
LTI系统 状态方程 输出方程 (b)状态空间法
f (t ) 、状态向量 x (t ) 和响应向量
y(t )
12
三者关系的代数方程称为系统的输出方程。
10.1 系统的状态空间描述
采用状态空间分析法研究系统特性主要有以下特点:
(1) 一阶微分方程组便于求解,尤其便于计算机处理。
(2) 由于系统响应(输出)与状态变量和激励(输入) 之间满足的是代数方程(输出方程),
y (t ) y[n]
图10-1 SISO系统的两种描述法示意图
6
10.1 系统的状态空间描述
2.状态变量描述 在状态空间描述法中,不是直接给出系统输出和 输入之间满足的微分(差分)方程,而是首先在系统 内部适当地选择一组辅助变量——状态变量,然后找 出这组状态变量与系统输入之间满足的关系式——状 态方程,再找出系统输出和这组状态变量以及输入之 间满足的代数方程——输出方程,从而完成系统输入 、状态变量和系统输出三者之间的关系描述。
具有
x2 (t )
xn (t )
计算机组成与系统结构(第五版 立体化教材)
2016年科学出版社出版的图书
01 成书过程
03 教材目录
目录
02 内容简介 04 教学资源
05 教材特色
07 图书目录
目录
06 作者简介
基本信息
《计算机组成与系统结构(第五版·立体化教材)》是由白中英主编,2011年12月科学出版社出版的普通高 等教育计算机类特色专业系列规划教材。该教材可作为计算机及相关专业的教材,适合作软件类和应用类专业的 教学用书,也可作为成人自学考试、全国计算机等级考试NCRE(四级)用书。
出版工作
2011年12月 ,《计算机组成与系统结构(第五版·立体化教材)》由科学出版社出版。
内容简介
内容简介
该教材将计算机组成原理和计算机系统结构两门课合二为一,讲授计算机单处理机系统的组成和工作原理, 在该基础上扩展讲授并行计算机的体系结构。内容共10章:包括计算机系统概论;运算方法和运算器;多层次的 存储器;指令系统;中央处理机;总线系统;外围设备;输入输出系统;安腾高性能处理机体系结构;并行体系 结构。附录A中介绍了配套教材与教学设备。附录B中给出了计算机组成原理研究生入学统考大纲。
杨春武、冯一兵、张杰、靳秀国、杨秦、陈楠、于艳丽、刘敬晗、祁之力、王军德、张振华、刘俊荣、李娇 娇、李贞、王坤山、肖炜、崔洪浚、白媛、吴琨等参与了第五版文字教材、CAI课件、习题库、试题库、教学仪 器、实验设计、课程设计等的编写和研制工作。该教材由中国科学院计算技术研究所国家智能计算机研究开发中 心陈鸿安研究员主审。
教材目录
教材目录
(注:目录排版从左到右列 )
教学资源
教学资源
《计算机组成与系统结构(第五版·立体化教材)》的配套教材是《计算机组成原理试题解析(第五 版)》。
第10章并行通信及其接口电路
假定要求8255A的各个端口工作于如下方式: 端口A——方式0,输出; 端口B——方式0,输入; 端口C的高4位——方式0,输出; 端口C的低4位——方式0,输入。 相应的方式选择控制字应为10000011B(83H)。
在实验系统中 8255A控制口的地址为 28BH,则执行如 下三条指令即可实现上述工作方式的设定。 MOV DX, 28BH MOV AL, 83H OUT DX , AL; 将方式选择控制字写入控制口
(1) 数据总线缓冲器
这是一个双向三态8位数据缓冲器,它是8255A与CPU 数据总线的接口。 输入数据、输出数据以及 CPU 发给 8255A 的控制字和 从8255A读出的状态信息都是通过该缓冲器传送的。
(2) 端口A、端口B、端口C
8255A有三个 8位端口 ( 端口 A 、端口 B、端口 C) ,各端 口可由程序设定为输入端口或输出端口。 在使用中,端口A和端口B常常作为独立的输入端口或 输出端口。 端口 C 也可以作为输入端口或输出端口,但往往是用 来配合端口A和端口B的工作。 在方式字的控制下,端口C可以分成两个 4位的端口, 分别用来为端口A和端口B提供控制和状态信息。
1: 置1
端口C按位置1/置0 控制字标识位
x
x
x
位选择
0: 置0
无关
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7
需要指出的是,端口C按位置1/置0控制字是对端口C 的操作控制信息,因此该控制字必须写入控制口,而 不应写入端口C。 控制字的 D0位决定是置“1”操作还是置“0”操作,但 究竟是对端口 C 的哪一位进行操作,则决定于控制字 中的D3、D2、D1位。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4
DMA控制器组成Ⅱ 控制器组成Ⅱ 控制器组成
⑶字数计数器(WC) —该计数器对传送数据的总字数进 字数计数器 该计数器对传送数据的总字数进 行统计,在传送开始前 由程序将要传送的一组数据的字 行统计 在传送开始前,由程序将要传送的一组数据的字 在传送开始前 数送入WC,以后每传送一个字 或字节 计数器自动减 以后每传送一个字(或字节 计数器自动减1, 数送入 以后每传送一个字 或字节)计数器自动减 内容为零时表示数据已全部传送完毕。 当WC内容为零时表示数据已全部传送完毕。 内容为零时表示数据已全部传送完毕 控制与状态寄存器(CSR) —该寄存器用来存放控制字 ⑷控制与状态寄存器 该寄存器用来存放控制字 和状态字。 和状态字。 数据缓冲寄存器(DBR) —该寄存器用来暂存 该寄存器用来暂存I/O设备 ⑸数据缓冲寄存器(DBR) —该寄存器用来暂存I/O设备 与主存传送的数据。通常, 与主存是按字传送的, 与主存传送的数据。通常,DMA与主存是按字传送的, 与主存是按字传送的 DMA与设备之间可能是按字节或位传送的,因此 与设备之间可能是按字节或位传送的, 与设备之间可能是按字节或位传送的 因此DMA 还可能要包括装配和拆卸字信息的硬件, 还可能要包括装配和拆卸字信息的硬件,如数据移位缓 冲寄存器、字节计数器等。 冲寄存器、字节计数器等。 各寄存器均有自己的总线地址,它们是主存的指定 各寄存器均有自己的总线地址 它们是主存的指定 单元或I/O设备号 设备号,CPU可对这些寄存器进行读 写。 可对这些寄存器进行读/写 单元或 设备号 可对这些寄存器进行读
10.3 DMA输入输出方式 输入输出方式
1
DMA 输入输出方式
DMA是I/O设备与主存储器之间由硬件组成的 是 设备与主存储器之间由硬件组成的 直接数据通路,用于高速I/O设备与主存之间 直接数据通路,用于高速 设备与主存之间 的成组数据传送。数据传送是在DMA控制器 的成组数据传送。数据传送是在 控制器 控制下进行的,由 控制下进行的 由DMA控制器给出当前正在传 控制器给出当前正在传 送的数据字的主存地址,并统计传送数据的个 送的数据字的主存地址 并统计传送数据的个 数以确定一组数据的传送是否已结束。 数以确定一组数据的传送是否已结束。 在主 存中要开辟连续地址的专用缓冲器,用来提供 存中要开辟连续地址的专用缓冲器 用来提供 或接收传送的数据。 或接收传送的数据。在数据传送前和结束后 要通过程序或中断方式对缓冲器和DMA控制 要通过程序或中断方式对缓冲器和 控制 器进行预处理和后处理。 器进行预处理和后处理。
设备1 设备
I/O设备控制器 设备控制器
设备2 设备 设备n 设备
CPU 通道 Memory
I/O设备控制器 设备控制器
I/O设备控制器 设备控制器
12
IBM4300系统的 结构 系统的I/O结构 系统的
13
通道的组织和功能
采用通道方式组织输入输出系统,多使用主机 通 采用通道方式组织输入输出系统 多使用主机—通 多使用主机 设备控制器—I/O设备四级连接方式。 设备四级连接方式。 道—设备控制器 设备控制器 设备四级连接方式 通道的功能: 通道的功能
⑴根据CPU要求选择某一指定外设与系统相连 向该外设 根据 要求选择某一指定外设与系统相连,向该外设 要求选择某一指定外设与系统相连 发出操作命令,并进行初始化 并进行初始化。 发出操作命令 并进行初始化。 指出外设读/写信息的位置以及与外设交换信息的主存 ⑵指出外设读 写信息的位置以及与外设交换信息的主存 缓冲区地址。 缓冲区地址。 控制外设与主存之间的数据交换,并完成数据字的分拆 ⑶控制外设与主存之间的数据交换 并完成数据字的分拆 与装配。 与装配。 指定数据传送结束时的操作内容,并检查外设的状态 并检查外设的状态(良 ⑷指定数据传送结束时的操作内容 并检查外设的状态 良 14 好或有故障)。 好或有故障 。
9
DMA的局限性 的局限性
在大、中型计算机中,外设配置多,数据传送 在大、中型计算机中,外设配置多, 频繁,如仍采用DMA方式,存在下述问题 方式, 频繁,如仍采用 方式 存在下述问题:
控制器,将 ⑴如果为数众多的外设都配置专用的DMA控制器 将 如果为数众多的外设都配置专用的 控制器 大幅度增加硬件,因而提高成本 因而提高成本, 大幅度增加硬件 因而提高成本,而且要为解决众多 DMA同时访问主存的冲突 使控制复杂化。 同时访问主存的冲突,使控制复杂化 同时访问主存的冲突 使控制复杂化。 ⑵采用DMA传送方式的众多外设均直接由 采用 传送方式的众多外设均直接由CPU管理 管理 传送方式的众多外设均直接由 控制,由 进行初始化,势必会占用更多的 时间, 控制 由CPU进行初始化 势必会占用更多的 进行初始化 势必会占用更多的CPU时间 时间 而且频繁的周期挪用会降低CPU执行程序的效率。 执行程序的效率。 而且频繁的周期挪用会降低 执行程序的效率
15
通道型I/O处理机 通道型 处理机(IOP) 处理机
IOP不是一台独立的计算机 而是计算机系统 不是一台独立的计算机,而是计算机系统 不是一台独立的计算机 中的一个部件。 可以和CPU并行工作 提 并行工作,提 中的一个部件。IOP可以和 可以和 并行工作 供高速的DMA处理能力 实现数据的高速传 处理能力,实现数据的高速传 供高速的 处理能力 此外,有些 有些IOP还提供数据的变换、搜索 还提供数据的变换、 送。此外 有些 还提供数据的变换 和字装配/分拆能力 分拆能力。 和字装配 分拆能力。 例如, 位和16位微机中使用的 例如,在8位和 位微机中使用的 位和 位微机中使用的Intel 8089 I/O处理器就是这种通道型 处理器。 处理器就是这种通道型I/O处理器 处理器就是这种通道型 处理器。
DMA与通道的重要区别 与通道的重要区别
DMA完全借助于硬件完成数据件完成数据传送 通过一组通道命令与硬件一起完成数据传送。 通过一组通道命令与硬件一起完成数据传送。
通道的分类
根据多台设备共享通道的不同情况, 根据多台设备共享通道的不同情况,可将通道分 为三类: 为三类: 1.字节多路通道 字节多路通道 2.选择通道 选择通道 3.数组多路通道 数组多路通道
6
DMA的数据传送过程 的数据传送过程
DMA的数据传送过程可分为三个阶段 的数据传送过程可分为三个阶段: 的数据传送过程可分为三个阶段 DMA传送前预处理 传送前预处理 数据传送 传送后处理
7
DMA数据传送过程框图 数据传送过程框图
演示
8
DMA和中断的区别 和中断的区别
需要保护和恢复现场; ⑴中断方式是程序切换,需要保护和恢复现场; 中断方式是程序切换 需要保护和恢复现场 方式除了开始和结束时,不占用 而DMA方式除了开始和结束时 不占用 方式除了开始和结束时 不占用CPU任何 任何 资源。 资源。 ⑵对中断请求的响应只能发生在每条指令执行完 毕时,而对 而对DMA请求的响应可以发生在每个机器 毕时 而对 请求的响应可以发生在每个机器 周期结束时。 周期结束时。 中断传送过程需要CPU的干预 而DMA传送过 的干预,而 ⑶中断传送过程需要 的干预 传送过 程不需要CPU的干预 故数据传送速率非常高 适 的干预,故数据传送速率非常高 程不需要 的干预 故数据传送速率非常高,适 合于高速外设的成组传送。 合于高速外设的成组传送。
5
DMA控制器组成Ⅲ 控制器组成Ⅲ 控制器组成
中断控制逻辑: ⒉ 中断控制逻辑 DMA中断控制逻辑负责申请 中断控制逻辑负责申请 CPU对DMA进行预处理和后处理。 进行预处理和后处理。 对 进行预处理和后处理 控制逻辑: ⒊ DMA控制逻辑 一般包括设备码选择电路, 控制逻辑 一般包括设备码选择电路, DMA优先排队电路 产生DMA请求的线路等 DMA优先排队电路,产生DMA请求的线路等, 优先排队电路, 请求的线路等, 在DMA取得总线控制权后控制主存和设备之间的 取得总线控制权后控制主存和设备之间的 数据传送。 数据传送。 接口与主机和I/O设备两个方向的数据线 ⒋ DMA接口与主机和 设备两个方向的数据线、 接口与主机和 设备两个方向的数据线、 地址线和控制信号线以及有关收发与驱动线路。 地址线和控制信号线以及有关收发与驱动线路。
2
DMA三种工作方式 三种工作方式
暂停方式: 请求后,让出存储总线 ⒈CPU暂停方式 主机响应 暂停方式 主机响应DMA请求后 让出存储总线 直到 请求后 让出存储总线,直到 一组数据传送完毕后DMA控制器才把总线控制权交还给 一组数据传送完毕后 控制器才把总线控制权交还给 CPU,采用这种工作方式的 设备 在其接口中一般设置有存 采用这种工作方式的I/O设备 采用这种工作方式的 设备,在其接口中一般设置有存 取速度较快的小容量存储器,I/O设备与小容量存储交换数据 设备与小容量存储交换数据, 取速度较快的小容量存储器 设备与小容量存储交换数据 小容量存储器与主机交换数据,这样可减少 这样可减少DMA传送占用存 小容量存储器与主机交换数据 这样可减少 传送占用存 储总线的时间,也即减少 也即减少CPU暂停工作时间。 暂停工作时间。 储总线的时间 也即减少 暂停工作时间 周期窃取方式: ⒉CPU周期窃取方式 DMA控制器与主存储器之间传送一个 周期窃取方式 控制器与主存储器之间传送一个 数据,占用 窃取)一个 占用(窃取 一个CPU周期 即CPU暂停工作一个周期 然 周期,即 暂停工作一个周期,然 数据 占用 窃取 一个 周期 暂停工作一个周期 后继续执行程序。 后继续执行程序。 直接访问存储器工作方式: 这是标准的DMA工作方式。如 工作方式。 ⒊直接访问存储器工作方式 这是标准的 工作方式 传送数据时CPU正好不占用存储总线 则对 正好不占用存储总线,则对 传送数据时 正好不占用存储总线 则对CPU不产生任何 不产生任何 影响。 同时需要访问存储总线,则 影响。如DMA和CPU同时需要访问存储总线 则DMA的优先 和 同时需要访问存储总线 的优先 级高于CPU。 级高于 。 传送数据过程中不能占用或破坏CPU硬件资源 在DMA传送数据过程中不能占用或破坏 传送数据过程中不能占用或破坏 硬件资源 3 或工作状态,否则将影响CPU的程序执行。 或工作状态,否则将影响 的程序执行。 的程序执行