习题答案计算机科学导论第5版瞿中清华大学出版社.docx
《习题答案计算机科学导论第5版瞿中清华大学出版社.docx》由会员分享,可在线阅读,更多相关《习题答案计算机科学导论第5版瞿中清华大学出版社.docx(71页珍藏版)》请在冰豆网上搜索。
![习题答案计算机科学导论第5版瞿中清华大学出版社.docx](https://file1.bdocx.com/fileroot1/2023-2/13/2852b31e-e49e-47cf-8fb2-74810990f6eb/2852b31e-e49e-47cf-8fb2-74810990f6eb1.gif)
习题答案计算机科学导论第5版瞿中清华大学出版社
第1章概述
习题(答案)
一.选择题
1.D2.C3.D4.B5.A
6.B7.CD8.C9.A10.ABC
11.A12.C13.B14.D15.A
16.A17.C18.A19.ABC20.B
21.ABCD22.C23.ABCDE
二.简答题
1.举例说明石子计数的过程
早上放10头牛出去,就拿10颗小石子表示,晚上牛回来清数时,就以小石子的数量来逐个进行清点,看看是否一致。
2.简述计算机的发展阶段
计算机的出现是20世纪最辉煌的成就之一,按照采用的电子器件划分,计算机大致经历了四个阶段。
1.第一代计算机(1946—1957)
其主要特征是逻辑器件使用了电子管,用穿孔卡片机作为数据和指令的输入设备,用磁鼓或磁带作为外存储器,使用机器语言编程。
第一台计算机需要工作在有空调的房间里,如果希望它处理什么事情,需要把线路重新连接,把成千上万的线重新焊接。
1949年发明了可以存储程序的计算机,这些计算机使用机器语言编程,可存储信息和自动处理信息,存储和处理信息的方法开始发生革命性的变化。
第一代计算机体积大、运算速度低、存储容量小、可靠性低。
几乎没有什么软件配置,主要用于科学计算。
尽管如此,第一代计算机却奠定了计算机的技术基础,如二进制、自动计算及程序设计等,对以后计算机的发展产生了深远的影响。
其代表机型有:
ENIAC、IBM650(小型机)、IBM709(大型机)等。
2.第二代计算机(1958—1964)
其主要特征是使用晶体管代替了电子管,内存储器采用了磁芯体,引入了变址寄存器和浮点运算部件,利用I/O处理机提高了输入输出能力。
这不仅使得计算机的体积缩小了很多,同时增加了机器的稳定性并提高了运算速度,而且计算机的功耗减小,价格降低。
在软件方面配置了子程序库和批处理管理程序,并且推出了Fortran、COBOL、ALGOL等高级程序设计语言及相应的编译程序,降低了程序设计的复杂性。
除应用于科学计算外,它还开始应用在数据处理和工业控制等方面。
其代表机型有IBM7090、IBM7094、CDC7600等。
3.第三代计算机(1965—1972)
其主要特征是用半导体中、小规模集成电路(IntegratedCircuit,IC)作为元器件代替晶体管等分立元件,用半导体存储器代替磁芯存储器,使用微程序设计技术简化处理机的结构,这使得计算机的体积和耗电量显著减小,而计算速度和存储容量却有较大提高,可靠性也大大加强。
在软件方面则广泛地引入多道程序、并行处理、虚拟存储系统和功能完备的操作系统,同时还提供了大量的面向用户的应用程序。
计算机开始定向标准化、模块化、系列化,此外,计算机的应用进入到许多科学技术领域。
代表机器有IBM360系列、富士通F230系列等。
4.第四代计算机(1972年至今)
其主要特征是使用了大规模和超大规模集成电路,使计算机沿着两个方向飞速向前发展。
一方面,利用大规模集成电路制造多种逻辑芯片,组装出大型、巨型计算机,使运算速度向每秒十万亿次、百万亿次及更高速度发展,存储容量向百兆、千兆字节发展,巨型机的出现,推动了许多新兴学科的发展。
另一方面,利用大规模集成电路技术,将运算器、控制器等部件集成在一个很小的集成电路芯片上,从而出现了微处理器。
微型计算机、笔记本型和掌上型等超微型计算机的诞生是超大规模集成电路应用的直接结果,并使计算机很快进入到寻常百姓家。
完善的系统软件、丰富的系统开发工具和商品化的应用程序的大量涌现,以及通信技术和计算机网络的飞速发展,使得计算机进入了一个快速发展的阶段。
现在很多国家正在研制新一代的计算机,新一代计算机将是微电子技术、光学技术、超导技术、电子仿生技术等多学科相结合的产物。
它能进行知识处理、自动编程、测试和排错,以及用自然语言、图形、声音和各种文字进行输入和输出。
新一代计算机的研究目标是打破计算机现有的体系结构,使得计算机能够具有像人那样的思维、推理和判断能力。
已经实现的非传统计算技术有超导计算、量子计算、生物计算、光计算等。
未来的计算机可能是超导计算机、量子计算机、生物计算机、光计算机、纳米计算机或DNA计算机等。
3.简述中国计算机的发展历程。
1.华罗庚和我国第一个计算机科研小组
华罗庚教授是我国计算技术的奠基人和最主要的开拓者之一。
当冯·诺依曼开创性地提出并着手设计EDVAC时,正在美国Princeton大学工作的华罗庚教授参观过他的实验室,并经常与他讨论有关学术问题。
1952年,全国大学院系进行调整,他从清华大学电机系物色了闵乃大、夏培肃和王传英三位科研人员,在他担任所长的中国科学院数学所内建立了中国第一个电子计算机科研小组。
1956年,在筹建中科院计算技术研究所时,华罗庚教授担任筹备委员会主任。
2.第一代电子管计算机研制(1958—1964)
我国从1957年开始研制通用数字电子计算机,1958年8月1日该机研制成功,可以表演短程序运行,标志着我国第一台电子计算机诞生。
为纪念这个日子,该机定名为八一型数字电子计算机。
该机在738厂开始小量生产,改名为103型计算机(即DJS-1型),共生产38台。
1958年5月我国开始了第一台大型通用电子计算机(104机)研制(如图1.2所示),以前苏联当时正在研制的БЭСМ-II计算机为蓝本,在前苏联专家的指导帮助下,中科院计算所、四机部、七机部和部队的科研人员与738厂密切配合,于1959年国庆节前完成了研制任务。
在研制104机同时,夏培肃院士领导的科研小组首次自行设计于1960年4月研制成功一台小型通用电子计算机,即107机,1964年我国第一台自行设计的大型通用数字电子管计算机119机研制成功,平均浮点运算速度达到5万次/每秒。
(3)第二代晶体管计算机研制(1965—1972)
1965年研制成功的我国第一台大型晶体管计算机(109乙机,共用2万多支晶体管,3万多支二极管)。
对109乙机加以改进,两年后又推出109丙机,为用户运行了15年,有效算题时间10万小时以上,在我国两弹试验中发挥了重要作用,被用户誉为“功勋机”。
同时华北计算所先后研制成功108机、108乙机(DJS-6)、121机(DJS-21)和320机(DJS-6),并在738厂等五家工厂生产。
哈军工(国防科大前身)于1965年2月成功推出了441B晶体管计算机并小批量生产了40多台。
(4)第三代基于中小规模集成电路的计算机研制(1973—20世纪80年代初)
我国于1970年初期陆续推出大、中、小型采用集成电路的计算机。
1973年,北京大学与北京有线电厂等单位合作研制成功运算速度每秒100万次的大型通用计算机。
进入80年代,我国高速计算机,特别是向量计算机有了新的发展。
1983年中国科学院计算所完成我国第一台大型向量机(757机,如图1.6所示)计算速度达到1000万次/每秒。
同年,国防科技大学研制的银河-Ⅰ亿次巨型计算机(如图1.7所示)是我国高速计算机研制的一个重要里程碑,它标志着我国文革动乱时期与国外拉大的距离又缩小到7年左右(银河-Ⅰ的参考机克雷-Ⅰ于1976年推出)。
(5)第四代基于超大规模集成电路的计算机研制(20世纪80年代中期至今)
和国外一样,我国第四代计算机研制也是从微机开始的。
1980年初我国很多单位也开始采用Z80、X86和M6800芯片研制微机。
1983年12月电子部六所研制成功与IBMPC机兼容的DJS-0520微机。
1992年国防科技大学研究成功银河-Ⅱ通用并行巨型机,峰值速度达4亿次/每秒浮点运算(相当于每秒10亿次基本运算操作),总体上达到80年代中后期国际先进水平。
从上世纪90年代初开始,国际上采用主流的微处理机芯片研制高性能并行计算机已成为一种发展趋势。
1993年,国家智能计算机研究开发中心成功研制曙光一号全对称共享存储多处理机;1995年,该中心又推出了中国第一台具有大规模并行处理机(MPP)结构的并行机曙光1000(含36个处理机),峰值速度25亿次/每秒浮点运算,实际运算速度上了10亿次/每秒浮点运算这一高性能台阶。
1997年国防科技大学成功研制银河-Ⅲ百亿次并行巨型计算机系统,采用可扩展分布共享存储并行处理体系结构,由130多个处理结点组成,峰值性能为130亿次/每秒浮点运算,系统综合技术指标达到90年代中期国际先进水平。
国家智能计算机研究开发中心与曙光公司于1997至1999年先后在市场上推出具有机群结构的曙光1000A,曙光2000-Ⅰ,曙光2000-Ⅱ超级服务器,峰值计算速度已突破1000亿次/每秒浮点运算,机器规模已超160个处理机。
2000年推出浮点运算速度3000亿次/每秒的曙光3000超级服务器。
2004年上半年推出每秒浮点运算速度1万亿次/每秒的曙光4000超级服务器。
4.举例说明计算机微型化的最新产品
列举当前的平板电脑,说明其特点即可。
5.网上搜索最新的计算机娱乐方式
社交娱乐如微信、易信等,手机游戏如打飞机、神庙逃亡等,家庭娱乐如数字影院、体感游戏等。
6.什么是计算机系统?
计算机系统是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统,由计算机硬件系统和计算机软件系统两大部分组成。
7.简述计算机硬件系统的五大部分。
运算器
运算器又称算术逻辑单元(ArithmeticLogicUnit,ALU),是计算机对数据进行加工处理的部件,它的主要功能是对二进制数进行加、减、乘、除等算术运算和与、或、非等基本逻辑运算,实现逻辑判断。
运算器是在控制器的控制之下实现其功能的,运算结果由控制器发出的指令送到内存储器中。
控制器
控制器主要由指令寄存器、译码器、程序计数器和操作控制器等组成,控制器是用来控制计算机各部件协调工作,并使整个处理过程有条不紊地进行。
它的基本功能就是从内存中取出指令和执行指令,即控制器按程序计数器指出的指令地址从内存中取出该指令进行译码,然后根据该指令功能向有关部件发出控制命令,执行该指令。
另外,控制器在工作过程中,还要接受各部件反馈回来的信息。
通常把运算器、控制器集成在一个大规模集成电路板上称为中央处理器,又称CPU(CentralProcessingUnit)。
存储器
存储器是计算机的记忆装置,用于存放原始数据、中间数据、最终结果和处理程序。
为了对存储的信息进行管理,把存储器划分成存储单元,每个单元的编号称为该单元的地址。
各种存储器基本上都是以1个字节作为一个存储单元。
存储器内的信息是按地址存取的,如要访问存储器中的某个信息,就必须知道它的地址。
向存储器里存入信息也称为“写入”,写入新的内容将覆盖原来的内容。
从存储器里取出信息也称为“读出”,信息读出后并不破坏原来存储的内容,因此信息可以重复读出,多次利用。
通常把内存储器、运算器和控制器合称为计算机主机,也可以说主机是由CPU与内存储器组成的,而主机以外的装置称为外部设备,外部设备包括输入/输出设备、外存储器等。
输入和输出设备
输入和出设备简称I/O(Input/Output)设备。
用户通过输入设备将程序和数据输入计算机,输出设备将计算机处理的结果(如数字、字母、符号和图形)显示或打印出来。
常用的输入设备有:
键盘、鼠标器、扫描仪、数字化仪等;常用的输出设备有:
显示器、打印机、绘图仪等。
8.请解释冯•诺依曼所提出的“存储程序”概念。
把程序和数据都以二进制的形式统一存放在存储器中,由机器自动执行。
不同的程序解决不同的问题,实现了计算机通用计算的功能。
9.控制器的主要功能是什么?
控制器基本功能就是从内存中取指令和执行指令,即控制器按程序计数器指出的指令地址从内存中取出该指令进行译码,然后根据该指令功能向有关部件发出控制命令,执行该指令。
另外,控制器在工作过程中,还要接受各部件反馈回来的信息。
10.简述CPU和主机的概念。
通常把运算器、控制器做在一个大规模集成电路块上称为中央处理器,又称CPU(CentralProcessingUnit)。
通常把内存储器、运算器和控制器合称为计算机主机,也可以说主机是由CPU与内存储器组成的,而主机以外的装置称为外部设备,外部设备包括输入/输出设备,外存储器等。
11.什么是计算机软件?
计算机软件的分类有哪些?
软件是指用来指挥计算机运行的各种程序的总和以及开发、使用和维护这些程序所需的技术文档。
计算机软件系统分为系统软件和应用软件。
计算机系统软件由操作系统、语言处理系统、以及各种软件工具等各种软件程序组成,指挥、控制计算机硬件系统按照预定的程序运行、工作,从而达到预定的目标。
应用软件是用户利用计算机软、硬件资源为解决各类应用问题而编写的软件,包括用户程序及其说明性文件资料。
12.计算机有哪些主要的特点?
(1)运算速度快、精度高
计算机的字长越长,其精度越高,现在世界上最快的计算机每秒可以运算几十万亿次以上。
一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的。
(2)具有逻辑判断和记忆能力
计算机有准确的逻辑判断能力和高超的记忆能力。
能够进行各种逻辑判断,并根据判断的结果自动决定下一步应该执行的指令。
(3)高度的自动化和灵活性
计算机采取存储程序方式工作,即把编好的程序输入计算机,机器便可依次逐条执行,这就使计算机实现了高度的自动化和灵活性。
13.简述计算机系统的主要技术指标。
评价计算机的性能指标有很多,通常人们从计算机的字长、时钟周期和主频、运算速度、内存容量、数据输入输出最高速率等技术指标来评价计算机系统。
1.字长
在计算机中,用若干二进制位表示一个数或一条指令,前者称为数据字,后者称为指令字。
字长的直接影响计算机的功能强弱、精度高低和速度快慢。
计算机处理数据时,一次可以运算的数据长度称为一个“字”(Word),字的长度称为字长。
一个字可以是一个字节(Byte,简称B),也可以是多个字节。
常用的字长有8位(bit)、16位、32位、64位等。
如某一类计算机的字由4个字节组成,则字的长度为32位,相应的计算机称为32位机。
2.时钟周期和主频
计算机的中央处理器对每条指令的执行是通过若干个微指令操作来完成的,这些微指令操作是按时钟周期的节拍来“动作”的,时钟周期的微秒数反映出计算机的运算速度。
有时也用时钟周期的倒数——时钟频率(兆频),即人们常说的主频来表示。
一般说来,主频越高(时钟周期越短),计算机的运算速度越快。
但是,主频并不能全面准确地反映计算机的运算速度,而每秒钟执行百万条指令数(MIPS)指标则能较全面准确地反映计算机的运算速度。
近十年来,微计算机的主频提高很快,例如,IBMPC/XT微机的CPU主频为4.77MHz,而Pentium4CPU的主频己超过1GMHz,并且在不断提高。
3.运算速度
计算机的运算速度是衡量计算机水平的一项主要指标,它取决于指令执行时间。
运算速度的计算方法多种多样,目前常用单位时间内执行多少条指令来表示,而计算机执行各种指令所需时间不同。
因此,常根据在一些典型题目计算中,各种指令执行的频度以及每种指令的执行时间来折算出计算机的等效速度。
4.内存容量
存储器的容量反映计算机记忆信息的能力,它常以字节为单位表示。
存储器的容量越大,则存储的信息越多,计算机的功能越强。
计算机中的操作大多是与内存交换信息,但内存的存取速度相对CPU的算术和逻辑运算的速度要低1~2个数量级。
因此,内存的读写速度也是影响计算机运行速度的主要因素之一。
为了度量信息存储容量,将8位二进制位(8bits)称为1个字节,字节是计算机中数据处理和存储容量的基本单位。
1024个字节称为1K字节(1KB),1024K个字节称1兆字节(1MB),1024M个字节称为1G字节(1GB),1024G个字节称为1T字节(1TB),现在微型计算机主存容量大多数在兆字节以上。
5.数据输入输出最高速率
主机与外部设备之间交换数据的速率也是影响计算机系统工作速度的重要因素。
由于各种外部设备本身工作的速度不同,常用主机所能支持的数据输入输出最大速率来表示。
14.计算机的分类有哪些?
根据计算机工作原理和运算方式的不同,以及计算机中信息表示形式和处理方式的不同,计算机可分为数字式电子计算机(DigitalComputer)、模拟式电子计算机(AnalogComputer)和数字模拟混合计算机(HybridComputer)。
当今广泛应用的是数字计算机,因此,常把数字式电子计算机(ElectronicDigitalComputer)简称为电子计算机或计算机。
按计算机的用途可分为通用计算机(GeneralPurposeComputer)和专用计算机(SpecialPurposeComputer)两大类。
通用计算机能解决多种类型问题,是具有较强通用性的计算机,一般的数字式电子计算机多属此类;专用计算机是为解决某些特定问题而专门设计的计算机,如嵌入式系统。
根据计算机的总体规模对计算机分类,可分为巨型机(SuperComputer)、大/中型计算机(Mainframe)、小型计算机(Minicomputer)、微型计算机(Microcomputer)和网络计算机(NetworkComputer)五大类。
常见的微型机还可以分为台式机、便携机、笔记本电脑、掌上型电脑等多种类型。
15.简述计算机的基本运行方式。
计算机的基本运作方式可概括为所谓的“IPOS循环”。
IPOS循环即输入(Input)、处理(Processing)、输出(Output)和存储(Storage),它反映了计算机进行数据处理的基本步骤。
(1)输入
接受由输入设备(如键盘、鼠标器、扫描仪等)提供的数据。
(2)处理
对数值、逻辑、字符等各种类型的数据进行操作,按指定的方式进行转换。
(3)输出
将处理所产生的结果等数据由输出设备(如显示器、打印机、绘图仪等)进行输出。
(4)存储
计算机可以存储程序和数据供以后使用。
16.计算机有哪些主要的用途?
(1)科学计算
使用计算机来完成科学研究和工程技术中所遇到的数学问题的计算称为科学计算,也称为数值计算。
科学计算是使用计算机完成在科学研究和工程技术领域中所提出的大量复杂的数值计算问题,是计算机的传统应用之一。
(2)信息处理
所谓信息处理就是使用计算机对数据进行输入、分类、加工、整理、合并、统计、制表、检索以及存储等,又称为数据处理。
例如座席预订与售票系统、零售业中的应用、办公自动化等。
信息处理已成为当代计算机的主要任务,是现代化管理的基础。
(3)实时控制(也称过程控制)
实时控制也称过程控制,实时控制能及时地采集检测数据、使用计算机快速地进行处理并自动地控制被控对象的动作,实现生产过程的自动化。
(4)计算机辅助设计/辅助制造/辅助教学
计算机辅助设计(ComputerAidedDesign——CAD)是使用计算机来辅助人们完成产品或工程的设计任务的一种方法和技术。
计算机辅助制造(ComputerAidedManufacturing——CAM)是使用计算机辅助人们完成工业产品的制造任务,能通过直接或间接地与工厂生产资源接口的计算机来完成制造系统的计划、操作工序控制和管理工作的计算机应用系统。
计算机辅助教学(ComputerAidedInstruction——CAI)是把计算机用作教学媒体,使它充当指导者、工具和学习者角色,学生通过与计算机的对话进行学习的一种新型教学技术。
(5)人工智能
人工智能(Artificial Intelligence——AI)就是指计算机模拟人类某些智力行为的理论、技术和应用。
(6)多媒体技术
随着电子技术特别是通信和计算机技术的发展,人们已经有能力把文本、音频、视频、动画、图形和图像等各种媒体综合起来,构成“多媒体”(Multimedia)的概念。
17.简述计算机的发展趋势。
(1)微型化
一方面,随着计算机的应用日益广泛,在一些特定场合,需要很小的计算机,计算机的重量、体积都变得越来越小,但功能并不减少。
另一方面,随着计算机在世界上日益普及,个人电脑正逐步由办公设备变为电子消费品。
人们要求电脑除了要保留原有的性能之外,还要有时尚的外观、轻便小巧、便于操作等特点,如平板电脑、手持电脑等。
今后个人计算机(PersonalComputer)在计算机中所占的比重将会越来越大,使用也将会越来越方便。
(2)巨型化
社会在不断发展,人类对自然世界的认识活动也越来越多,很多情况要求计算机对数据进行运算。
“巨型化”在这里并不是通常意义上的大小,主要是指机器的性能——运算速度等。
(3)网络化
因特网(Internet)的建立正在改变我们的世界,改变我们的生活。
网络具有虚拟和真实两种特性,网上聊天和网络游戏等具有虚拟特性,而网络通信、电子商务、网络资源共享则具有真实的特性。
(4)智能化
今后,计算机在生活中扮演的角色将会更加重要,计算机应用将具有更多的智能特性,能够帮助用户解决—些自己不熟悉或不愿意做的事,如智能家电、烹调等。
(5)新型计算机
目前新一代计算机正处在设想和研制阶段。
新一代计算机是把信息采集、存储处理、通信和人工智能结合在一起的计算机系统。
18.简述计算学科的定义、计算学科的本质、计算学科的三个过程。
计算学科是对描述和变换信息的算法过程,包括对理论分析、设计、效率、实现和应用等进行的系统研究。
计算学科的研究包括了从算法与可计算性的研究到根据可计算硬件和软件的实际实现问题的研究。
计算学科的根本问题是“什么能被有效地自动进行?
”。
计算学科的根本问题讨论的是能行性的有关内容,而凡是与能行性有关的讨论都是处理离散对象的。
计算学科的实质是学科方法论的思想,其关键问题是抽象、理论和设计三个过程相互作用的问题。
(1)理论
理论是数学科学的根本。
应用数学家们都认为,科学的进展都是基于纯数学的。
应用数学用数学的方法推动经验科学和工程学的发展,同时又不断刺激对新数学的需要,为纯理论数学提出新的问题。
(2)抽象
抽象(模型化)是自然科学的根本。
科学家们相信,科学进展的过程基本上都是形成假设,然后用模型化过程去求证。
(3)设计
设计是工程的根本。
工程师们认为,工程进展基本上都是提出问题,然后通过设计去构造系统,以解决问题。
19.简述计算机科学与技术学科的定义。
计算机科学技术是研究计算机的设计与制造和利用计算机进行信息获取、表示、存储、处理、控制等的理论、原则、方法和技术的学科,包括科学与技术两方面。
科学侧重于研究现象、揭示规律;技术则侧重于研制计算机和研究使用计算机进行信息处理的方法与技术手段。
科学是技术的依据,技术是科学的体现;技术得益于科学,它又向科学提出新的课题。
20.简述计算机科学与技术学科的根本问题及研究范畴。
计算机科学与技术学科的根本问题是什么能被有效地自动化。
问题的符号表示及其处理过程的机械化、严格化的固有特性,决定了数学是计算机科学与技术学科的重要基础之一,数学及其形式化描述、严密的表达和计算是计算机科学与技术学科所用的重要工具,建立物理符号系统并对其实施变换是计算机科学与技术学科进行问题描述和求解的重要手段。
计算机科学与技术的研究范畴包括计算机理论、硬件、软件、网络及应用等,按照研究的内容,也可以划分为基础理论、专业基础和应用三个层面。
计算机理论的研究包括离散数学、算法分析理论、形式语言与自动机理论、程序设计语言理论、程序设计方法学;计算机硬件的研究包括元器件与存储介质、微电子技术、计算机组成原理、微型计算机技术、计算机体系结构;计算机软件的