第7章计算机输入输出程序和数据方式
- 格式:docx
- 大小:37.27 KB
- 文档页数:2
《Java基础入门》课后习题答案第7章IO(输入输出)一、填空题1、Java中的I/O流,按照传输数据不同,可分为:字节流、字符流2.在Buffer与Channel交互时,数据从:Channel、读取到Buffer 中,或从Buffer入到Channel 中。
3.用于将字节流转换为字符流的是:InputStreamReader、OutputStreamWriter2、NIO主要有三大核心部分:Buffer、Channel、Selector5、Java中提供了一个类:RandomAccesseFile,它不但具有读写文件的功能,而且可以随机地从文件的任何位置开始执行读写数据的操作。
二、判断题1. 如果一个File表示目录下有文件或者子目录,调用delete()方法也可以将其删除。
错2.对象序列化是指将一个Java 对象转换成一个I/0 流中字节序列的过程。
对3.Channel 是一个接口对象,它类似于传统的流对象。
对4.InputStream类的close()方法是用于关闭流并且释放流所占的系统资源。
对5,BufferedInputStream 和BufferedOutputStream 不是字节缓冲流。
错三、选择题1.下面选项中,哪些是标准输人输出流?(多选) (AB)A. System.InB.System. OutC.InputStreamD.OutputStream2.File类中以字符串形式返回文件绝对路径的方法是哪一项?(C)A. getParent()B. getNamel)C. getAbsolutePathOD. getPath()3.以下创建RandomAccessFile类实例对象的代码,哪些是正确的?(多选)(AB)A.new RandomAccessFile(new File("D:\\itcast\\dirl\test. java"),”rw”);B.new RandomAccessFile("D:\\itcast\\dirl\test. java","r");C. new RandomAccessFile("D:\\itcast\\dir1\\test.java");D. new RandomAccessFile("D:\\itcast\\dir1\\test.java","wr")4.以下选项中,哪个流中使用了缓冲区技术? (A)A. BufferedOutputStreamB. FileInputStreamC. DataOutputStreamD. FileReader5.以下选项中,关于Java NIO 中Buffer类的常用说法正确的是哪一项?(B)A.clearO方法会清除缓冲区数据,并将position 设置为0.limit 设置为capacity OB.fip()方法先将limit 设置为当前position 位置,然后再将pson设置为0C.mark()方法用于设置Buffer 的标记(mark),其能在0 与limi 之间做标记D.rewind()方法将position 设置为0,并设置mark 标记四、简答题1、简述I/O 流的概念。
第一章思考题与习题:1.什么叫微处理器、微机?微机系统包含哪些部分?2 .为什么计算机使用二进制计数制?3.CPU 在内部结构上由哪几部分组成?4 .十六进制的基数或底数是。
5.将下列十进制数分别转换成十六进制、二进制、八进制数:563 6571 234 1286 .将下列十进制小数转换成十六进制数(精确到小数点后4 位数):0.359 0.30584 0.9563 0.1257.将1983.31510转换成十六进制数和二进制数。
8.将下列二进制数转换成十进制数、十六进制数和八进制数:(1)101011101.11011 (2 )11100011001.011 (3 )1011010101.00010100111 9.将下列十六进制数转换成十进制数和二进制数:AB7.E2 5C8.11FF DB32.64E10.判断下列带符号数的正负,并求出其绝对值(负数为补码):10101100;01110001;11111111;10000001。
11.写出下列十进制数的原码、反码和补码(设字长为8 位):+64 -64 +127 -128 3/5 -23/12712.已知下列补码,求真值X :(1)[X]补=1000 0000(2 )[X]补=1111 1111(3 )[-X]补=1011011113.将下列各数转换成BCD 码:30D,127D,23D,010011101B,7FH14.用8421 BCD 码进行下列运算:43+99 45+19 15+3615.已知X =+25,Y =+33,X = -25,Y = -33,试求下列各式的值,并用其对应的真值进行验证:1 12 2(1)[X +Y ]补1 1(2 )[X -Y ]补1 2(3 )[X -Y ]补1 1(4 )[X -Y ]补2 2(5 )[X +Y ]补1 2(6 )[X +Y ]补2 216.当两个正数相加时,补码溢出意味着什么?两个负数相加能产生溢出吗?试举例说明。
1.控制器有哪几种控制方式?各有何特点?解:控制器的控制方式可以分为3种:同步控制方式、异步控制方式和联合控制方式。
同步控制方式的各项操作都由统一的时序信号控制,在每个机器周期中产生统一数目的节拍电位和工作脉冲。
这种控制方式设计简单,容易实现;但是对于许多简单指令来说会有较多的空闲时间,造成较大数量的时间浪费,从而影响了指令的执行速度。
异步控制方式的各项操作不采用统一的时序信号控制,而根据指令或部件的具体情况决定,需要多少时间,就占用多少时间。
异步控制方式没有时间上的浪费,因而提高了机器的效率,但是控制比较复杂。
联合控制方式是同步控制和异步控制相结合的方式。
2.什么是三级时序系统?解:三级时序系统是指机器周期、节拍和工作脉冲。
计算机中每个指令周期划分为若干个机器周期,每个机器周期划分为若干个节拍,每个节拍中设置一个或几个工作脉冲。
3.控制器有哪些基本功能?它可分为哪几类?分类的依据是什么?解:控制器的基本功能有:(1)从主存中取出一条指令,并指出下一条指令在主存中的位置。
(2)对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。
(3)指挥并控制CPU 、主存和输入输出设备之间的数据流动。
控制器可分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型3类,分类的依据在于控制器的核心———微操作信号发生器(控制单元CU)的实现方法不同。
4.中央处理器有哪些功能?它由哪些基本部件所组成?解:从程序运行的角度来看,CPU 的基本功能就是对指令流和数据流在时间与空间上实施正确的控制。
对于冯? 诺依曼结构的计算机而言,数据流是根据指令流的操作而形成的,也就是说数据流是由指令流来驱动的。
5.中央处理器中有哪几个主要寄存器?试说明它们的结构和功能。
解:CPU 中的寄存器是用来暂时保存运算和控制过程中的中间结果、最终结果及控制、状态信息的,它可分为通用寄存器和专用寄存器两大类。
通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。
第7章输入/输出与中断一、自测练习题㈠选择题1.一微机系统有10根地址线用于I/O端口寻址,因而具有I/O空间的范围是( )字节。
A) 1024 B) 10K C) 0.5M D) 1M2.8086CPU读/写一次存储器或I/O端口所需的时间称为一个( )。
A) 总线周期 B) 指令周期 C) 时钟周期 D) 基本指令执行时间3.微型计算机的输入/输出有三种不同的控制方法,其中以( )控制的输入/输出是微机进行I/O的一种最主要的控制方式。
A) 程序控制 B) 中断控制C) DMA控制D) 以上均可4.程序查询I/O方式的工作流程是按( )的次序完成一个字符的传输。
A) 写数据端口,读/写控制端口B) 读状态端口,读/写数据端口C) 写控制端口,读状态端口,写数据端口D) 随I/O接口的具体要求而定5.在CPU与外设的I/O传送控制方式中,效率高、实时性强的方式是( )。
A) 同步传送 B) 查询传送 C) 无条件传送 D) 中断传送6.在CPU与外设的I/O传送控制方式中,传送速度最快的方式是( )。
A) 无条件传送 B) 查询传送 C) 中断传送 D) DMA传递7.用具有两个状态(“0”和“1”态)的一组开关作简单输入设备时,应采用( )传送方式来输入信息。
A) 无条件B) 查询C) 中断D) DMA8.用一组发光二极管作为简单输出设备时,应采用( )传送方式来输出信息。
A) DMA B) 无条件C) 查询D) 中断9.在微机系统中引入中断技术,可以( )。
A) 提高外设速度B) 减轻主存负担C) 提高处理器的效率D) 增加信息交换的精度10.CPU响应中断请求的时刻是在( )。
A) 执行完成正在执行的程序以后 B) 执行完正在执行的指令以后C) 执行完本时钟周期以后D)执行完正在执行的机器周期以后11.8086/8088CPU向应两个硬中断INTR和NMI时,相同的必要条件是( )。
A) 允许中断B) 当前I/O操作执行结束C) 总线空闲D) 当前访问内存操作结束12.在微型计算机系统中,高速外设与内存储器进行批量数据传送时,应采用( )。
计算机四级操作系统-7-IO设备管理第7章I/O设备管理设备管理是操作系统的主要功能之⼀,它负责管理所有输⼈输出设备以完成期望的数据传设备管理可能是操作系统设计中最凌乱的部分,这主要是由于计算机系统中存在着⼤量的输⼊/输出设备,其性能和应⽤特点可能完全不同。
所以要建⽴⼀个通⽤的、⼀致的设备访问接⼝,使⽤户和应⽤程序开发⼈员能够⽅便地使⽤输⼊/输出设备,⽽⽆须关⼼每种设备各⾃的特性,这正是设备管理的主要⽬的。
本章⾸先讲述设备管理的基本概念,然后讨论I/O硬件组成、I/O软件结构、设备管理的相关技术,最后阐述I/O性能问题及解决⽅案。
7.1设备与设备分类输⼊/输出设备(I/O设备)也称为外部设备(Peripheral Device),有时简称为设备或外设,包括计算机系统中除CPU和内存储器以外的所有的设备和装置,还包括所有外部存储设备。
在不同的上下⽂中,I/O设备⼀词有⼴义和狭义两种含义,⼴义的I/O设备即上述定义,狭义的I/O设备不包括外存设备。
可见,计算机系统中外部设备⾮常多,并且这些设备在功能、速度和控制⽅式等⽅⾯都有较⼤的差异,本节将讨论这些问题。
7.1.1设备管理的重要性为了理解操作系统中设备管理的重要性,⾸先要了解I/O设备在计算机系统中所起的作⽤。
如果说处理器和内存是计算机系统的⼤脑部分的话,那么I/O设备就是计算机系统的五官和四肢。
各种需要处理的信息和操作⼈员对计算机系统的操作命令,都要通过输⼊设备进⼊计算机系统,处理后的信息和结果也要通过输出设备从计算机系统输出。
计算机系统中的I/O设备种类繁多,从简单的键盘到⿏标、打印机、图形显⽰终端、磁盘驱动器以⾄于⽹络设备,变化万千,造就计算机应⽤的多样性和普及性。
可以说没有I/O设备,就没有计算机的应⽤。
然⽽,正如⼈们已经认识到的,操作系统复杂和庞⼤的主要原因是它所管理的资源的庞杂和并发技术的采⽤,⽽I/o设备的庞杂正是操作系统所管理的资源庞杂的主要原因,I/O设备的速度远低于处理器的速度正是导致并发技术产⽣的直接原因。
第7章思考题与习题参考答案1.计算机的I/O系统的功能是什么?它由哪几个部分组成?答:计算机的I/O系统,主要用于解决主机与外部设备间的信息通讯,提供信息通路,使外围设备与主机能够协调一致地工作。
计算机的I/O系统由I/O硬件和I/O软件两大部分组成。
其中I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。
I/O软件包括:用户的I/O程序、设备驱动程序、设备控制程序。
2.I/O硬件包括哪几个部分?各部分的作用是什么?答:I/O硬件包括:系统总线、I/O接口、I/O设备及设备控制器。
系统总线的作用是为CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输提供通路。
I/O接口通常是指主机与I/O设备之间设置的一个硬件电路及其相应的控制软件。
它用于在系统总线和外设之间传输信号,并起缓冲作用,以满足接口两边的时序要求。
I/O设备的作用是为主机与外部世界打交道提供一个工具。
设备控制器用来控制I/O设备的具体动作,不同的I/O设备需要完成的控制功能不同。
3.什么是用户I/O程序?什么是设备驱动程序?什么是设备控制程序?答:用户I/O程序是指用户利用操作系统提供的调用界面编写的具体I/O设备的输入输出程序。
例如用户编写的用打印机输出文本的程序。
设备驱动程序是一种可以使计算机和设备通信的特殊程序。
可以说相当于操作系统与硬件的接口,操作系统只有通过这个接口,才能控制硬件设备的工作,假如某设备的驱动程序未能正确安装,便不能正常工作。
设备控制程序就是驱动程序中具体对设备进行控制的程序。
设备控制程序通过接口控制逻辑电路,发出控制命令字。
命令字代码各位表达了要求I/O设备执行操作的控制代码,由硬件逻辑解释执行,发出控制外设的有关控制信号。
4.说明设计I/O系统的三个要素的具体内容。
答:设计I/O系统应该考虑如下三个要素:①数据定位: I/O系统必须能够根据主机提出的要求进行设备的选择,并按照数据在设备中的地址找到相应的数据。
第7章计算机输入输出程序和数据方式计算机输入输出程序和数据方式是计算机系统中非常重要的一部分,
它们决定了计算机能够与用户进行交互和处理数据的能力。
本章将介绍计
算机输入输出程序和数据的相关概念和方式。
一、计算机输入输出程序
计算机输入输出程序是指用于处理计算机与外部设备之间数据传输的
程序。
它主要负责将外部设备中的数据读入到计算机内存中,或将计算机
内存中的数据输出到外部设备中。
计算机输入输出程序可以通过多种方式
实现,如直接编程、操作系统提供的相关函数或驱动程序等。
1.直接编程方式
直接编程方式是最基本和原始的一种计算机输入输出方式,它要求程
序员直接编写与外部设备交互的输入输出指令。
这种方式优点是灵活性高,程序员可以根据实际需求来控制输入输出的过程。
但是缺点也非常明显,
就是编写工作繁琐且容易出错。
2.操作系统提供的输入输出函数
操作系统提供的输入输出函数是一种更加高级的方式,它将输入输出
的相关操作封装成函数,并通过系统调用来执行。
这样程序员只需要调用
相应的函数就可以完成输入输出操作,而无需关心具体的输入输出指令。
这种方式大大减少了程序员的编程工作量,提高了编程效率。
3.驱动程序方式
驱动程序是一种特殊的程序,用于管理和控制硬件设备的工作。
计算
机输入输出程序可以通过驱动程序来实现。
驱动程序通常由硬件厂商开发,
并与操作系统进行集成。
它可以通过操作系统提供的接口与应用程序进行
通信,实现计算机与外部设备之间的数据传输。
二、计算机输入输出数据方式
计算机输入输出数据方式主要有两种:串行输入输出和并行输入输出。
1.串行输入输出
串行输入输出是指每次只传输一个位或一个字符的输入输出方式。
它
的特点是数据传输速度较慢,但可以使用较少的引脚实现数据传输。
串行
输入输出常用于长距离传输以及外部设备接口较简单的场景,如串口、USB等。
2.并行输入输出
并行输入输出是指每次可以传输多个位或多个字符的输入输出方式。
它的特点是数据传输速度较快,但需要使用较多的引脚实现数据传输。
并
行输入输出常用于内部数据传输或外部设备接口较复杂的场景,如内存总线、扩展PCI插槽等。
在实际应用中,计算机输入输出程序和数据方式一般是根据不同的需
求和场景来选择。
对于简单的输入输出任务,可以使用直接编程方式进行
实现;对于复杂的输入输出任务,可以使用操作系统提供的输入输出函数
或驱动程序来实现;对于数据传输速度要求高或数据量较大的任务,可以
使用并行输入输出方式。
总结起来,计算机输入输出程序和数据方式是计算机系统中至关重要
的一部分。
了解和掌握不同的输入输出程序和数据方式,对于进行计算机
输入输出操作和优化数据传输速度具有重要意义。