计算机科学导论第三版答案_第1页
计算机科学导论第三版答案_第2页
计算机科学导论第三版答案_第3页
计算机科学导论第三版答案_第4页
计算机科学导论第三版答案_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./第1章概述习题<答案>1.D 2.B 3.CD 4.C 5.A6.ABC 7.A 8.C 9.B 10.B11.C 12.A 13.ABC 14.B 15.ABCD16.C17.ABCDE1.第一代计算机<1946—1957>2.第二代计算机<1958—1964>3.第三代计算机<1965—1972>4.第四代计算机<1972年至今>1.华罗庚和我国第一个计算机科研小组2.第一代电子管计算机研制<1958—1964><3>第二代晶体管计算机研制<1965—1972><4>第三代基于中小规模集成电路的计算机研制<1973—20世纪80年代初><5>第四代基于超大规模集成电路的计算机研制<20世纪80年代中期至今>=1\*GB3①运算器=2\*GB3②控制器=3\*GB3③存储器=4\*GB3④输入和输出设备9.计算机有哪些主要的特点?<1>运算速度快、精度高计算机的字长越长,其精度越高,现在世界上最快的计算机每秒可以运算几十万亿次以上.一般计算机可以有十几位甚至几十位<二进制>有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的.<2>具有逻辑判断和记忆能力计算机有准确的逻辑判断能力和高超的记忆能力.能够进行各种逻辑判断,并根据判断的结果自动决定下一步应该执行的指令.<3>高度的自动化和灵活性评价计算机的性能指标有很多,通常人们从计算机的字长、时钟周期和主频、运算速度、内存容量、数据输入输出最高速率等技术指标来评价计算机系统.1.字长2.时钟周期和主频3.运算速度4.内存容量5.数据输入输出最高速率计算机的基本运作方式可概括为所谓的"IPOS循环".IPOS循环即输入<Input>、处理<Processing>、输出<Output>和存储<Storage>,它反映了计算机进行数据处理的基本步骤.<1>输入接受由输入设备<如键盘、鼠标器、扫描仪等>提供的数据.<2>处理对数值、逻辑、字符等各种类型的数据进行操作,按指定的方式进行转换.<3>输出将处理所产生的结果等数据由输出设备<如显示器、打印机、绘图仪等>进行输出.<4>存储13.计算机有哪些主要的用途?<1>科学计算使用计算机来完成科学研究和工程技术中所遇到的数学问题的计算称为科学计算,也称为数值计算.科学计算是使用计算机完成在科学研究和工程技术领域中所提出的大量复杂的数值计算问题,是计算机的传统应用之一.<2>信息处理所谓信息处理就是使用计算机对数据进行输入、分类、加工、整理、合并、统计、制表、检索以及存储等,又称为数据处理.例如座席预订与售票系统、零售业中的应用、办公自动化等.信息处理已成为当代计算机的主要任务,是现代化管理的基础.<3>实时控制<也称过程控制>实时控制也称过程控制,实时控制能及时地采集检测数据、使用计算机快速地进行处理并自动地控制被控对象的动作,实现生产过程的自动化.<4>计算机辅助设计/辅助制造/辅助教学计算机辅助设计<ComputerAidedDesign——CAD>是使用计算机来辅助人们完成产品或工程的设计任务的一种方法和技术.计算机辅助制造<ComputerAidedManufacturing——CAM>是使用计算机辅助人们完成工业产品的制造任务,能通过直接或间接地与工厂生产资源接口的计算机来完成制造系统的计划、操作工序控制和管理工作的计算机应用系统.人工智能人工智能<Artificial

Intelligence——AI>就是指计算机模拟人类某些智力行为的理论、技术和应用.<6>多媒体技术14.简述计算机的发展趋势.<1>微型化一方面,随着计算机的应用日益广泛,在一些特定场合,需要很小的计算机,计算机的重量、体积都变得越来越小,但功能并不减少.另一方面,随着计算机在世界上日益普及,个人电脑正逐步由办公设备变为电子消费品.人们要求电脑除了要保留原有的性能之外,还要有时尚的外观、轻便小巧、便于操作等特点,如平板电脑、手持电脑等.今后个人计算机<PersonalComputer>在计算机中所占的比重将会越来越大,使用也将会越来越方便.<2>巨型化社会在不断发展,人类对自然世界的认识活动也越来越多,很多情况要求计算机对数据进行运算."巨型化"在这里并不是通常意义上的大小,主要是指机器的性能——运算速度等.<3>网络化因特网<Internet>的建立正在改变我们的世界,改变我们的生活.网络具有虚拟和真实两种特性,网上聊天和网络游戏等具有虚拟特性,而网络通信、电子商务、网络资源共享则具有真实的特性.<4>智能化今后,计算机在生活中扮演的角色将会更加重要,计算机应用将具有更多的智能特性,能够帮助用户解决—些自己不熟悉或不愿意做的事,如智能家电、烹调等.<5>新型计算机计算学科的实质是学科方法论的思想,其关键问题是抽象、理论和设计三个过程相互作用的问题.<1>理论理论是数学科学的根本.应用数学家们都认为,科学的进展都是基于纯数学的.应用数学用数学的方法推动经验科学和工程学的发展,同时又不断刺激对新数学的需要,为纯理论数学提出新的问题.<2>抽象抽象<模型化>是自然科学的根本.科学家们相信,科学进展的过程基本上都是形成假设,然后用模型化过程去求证.<3>设计计算学科课程体系的教学内容归结为14个知识体,包括:<1>离散结构<PS>计算学科是以离散型变量为研究对象,离散数学对计算技术的发展起着十分重要的作用.随着计算技术的迅猛发展,离散数学越来越受到重视.<2>程序设计基础<PF>《计算作为一门学科》报告指出了程序设计在计算学科的正确地位:程序设计是计算学科课程中固定练习的一部分,是每一个计算学科专业的学生应具备的能力,是计算学科核心科目的一部分,程序设计语言还是获得计算机重要特性的有力工具.<3>算法与复杂性<AL>算法是计算机科学和软件工程的基础,现实世界中,任何软件系统的性能仅依赖于两个基本点方面,一方面是所选择的算法;另一方面是各不同层次实现的适宜性和效率.<4>组织与体系结构<AR>计算机在计算中处于核心地位,如果没有计算机,计算学科只是理论数学的一个分支,应该对计算机系统的功能构件、以及他们的特点/性能和相互作用有一定的理解.<5>操作系统<OS>操作系统定义了对硬件行为的抽象,程序员用它来对硬件进行控制.操作系统还管理计算机用户间的资源共享.<6>网络计算<NC>计算机和通信网络的发展,尤其是基于TCP/IP的网络的发展使得网络技术在计算学科中更加重要.<7>程序设计语言<PL>程序设计语言是程序员与计算机交流的主要工具.一个程序员不仅要知道如何使用一种语言进行程序设计,还应理解不同语言的程序设计风格.<8>人-机交互<HL>人机交互重点在于理解人对交互式对象的交互行为,知道如何使用以人为中心的方法开发和评价交互软件系统,以及人机交互设计问题的一般知识.<9>图形学和可视化计算<GV>该主领域的主要内容包括:计算机图形学、可视化、虚拟现实、计算机视觉等4个学科子领域的研究内容.<10>智能系统<IS>人工智能领域关心的问题是自主代理的设计和分析.智能系统必须干知其环境,合理地朝着指定的任务行动,并与其它代理和人进行交互.<11>信息管理<IM>信息系统几乎在所有使用计算机的场合都发挥着重要的作用.<12>软件工程<SE>软件工程是关于如何有效地利用建立满足用户和客户需求的软件系统理论/知识和实践的学科,可以应用于小型、中型、大型系统.<13>数值计算科学<CN>从计算学科的诞生之日起,科学计算的数值方法和技术就构成了计算机科学研究的一个主要领域.<14>社会和职业问题<SP>第2章计算机体系结构与组织习题〔答案一.选择题1.D 2.D 3.D 4.D 5.C6.B 7.A 8.C 9.A 10.C11.A 12.C 13.C 14.C 15.A16.A 17.B 18.A二.简答题1.试简单叙述计算机采用二进制的原因.答:计算机只认识二进制编码形式的指令和数据.因此,包括数字、字符、声音、图形、图像等信息都必须经过某种方式转换成二进制的形式,才能提供给计算机进行识别和处理.在计算机中采用二进制,是因为物理上实现容易.由于二进制只有两个状态0和1,这正好与物理器件的两种状态相对应,例如电压信号的高与低,门电路的导通与截止等;而十进制电路则需要用十种状态来描述,这将使得电路十分复杂,处理也十分困难.因此,采用二进制将使得计算机在物理上实现简单,且具有可靠性高、处理简单、抗干扰能力强等优点.2.什么是定点数,它分为哪些种类?答:所谓定点数,就是指计算机在运算过程中,数据中小数点的位置固定不变.其中小数点的位置是由计算机设计者在机器的结构中指定一个不变的位置,而不一定都必须具有小数点的指示装置.定点数一般有小数和整数两种表示形式.定点小数是把小数点固定在数据数值部分的左边,符号位的右边;定点整数则把小数点固定在数据数值部分的右边.3.简要叙述声音的编码过程.答:计算机获取声音信息的过程即是声音信号数字化的处理过程.经过数字化处理后的数字声音信息才能被计算机所识别和处理.声音被计算机处理的过程主要经过音频信号的采样、量化和编码几个过程.4.简述计算机软件系统的分类.〔系统软件和应用软件两方面软件是指能在计算机上运行的各种程序,包括各种有关的文档.通常将软件分为系统软件和应用软件两大类.1.系统软件可以把软件分成若干层,最内层是对硬件的扩充与完善,而外层则是对内层的再次扩充与完善.一般把靠近内层、为方便使用和管理计算机资源的软件,称为系统软件.系统软件通常是负责管理、控制和维护计算机的各种软硬件资源,并为用户提供一个友好的操作界面,以及服务于一般目的的上机环境.系统软件包括操作系统、计算机的监控管理程序、高级程序设计语言的编译和解释程序以及系统服务程序等.操作系统在系统软件中处于核心地位,其他的系统软件在操作系统的支持下工作;高级程序设计语言的编译和解释程序,将软件工程师编写的软件"翻译"成为计算机能够"理解"的机器语言;系统服务程序为计算机系统的正常运行提供服务.2.应用软件应用软件是针对某个应用领域的具体问题而开发和研制的程序,它由专业人员为各种应用目的而开发.应用软件必须在系统软件的支持下才能工作,它具有很强的实用性和专业性,正是由于应用软件的开发和使用,才使得计算机的应用日益渗透到社会的各行各业.应用软件可以由用户自己开发,也可在市场上购买.常用的应用软件有:文字处理软件,如WPS、Word等;电子表格软件,如Excel、Lotus等;图形处理软件,如3DMAX等;课件制作软件,如PowerPoint、Authorware等;多媒体处理软件,如RealPlay、MediaPlayer等.5.存储器的功能是什么?答:现代计算机是以存储器为中心的计算机系统,存储器是计算机的重要组成部分.当利用计算机完成某项任务时,首先把解决问题的程序和所需数据存于存储器中,在执行程序时再由存储器快速地提供给处理机.显然,存储器的功能是存储信息,被存储的信息包括程序信息和数据信息等.6.存储器的主要指标是什么?答:存储器作为计算机系统的核心部件之一,有必要对其性能进行描述.描述一个存储器性能优劣的主要指标有存储容量、存储周期和存取时间、可靠性、性能价格比、功耗、可靠性等.7.简述存储器的三级存储体系分层结构.三级结构的存储器系统,是围绕读写速度尚可、存储容量适中的主存储器来组织和运行的,并由高速缓冲存储器缓解主存读写速度慢、不能满足CPU运行速度需要的矛盾;用虚拟存储器更大的存储空间来解决主存容量小、存不下规模更大的程序与更多数据的难题,从而达到使整修存储器系统有更高的读写速度、更大的存储空间、相对较低的制造与运行成本的要求.追求整修存储器系统有更高的性能价格比是三级存储体系结构的核心思想.这种三级结构的存储器系统的运行原理是建立在程序运行的局部性原理之上的.程序运行的局部性原理体现在:<1>时间的局部性原理.在一小段时间内,最近被访问过的程序和数据很可能再次被访问.<2>空间局部性原理.即最近被往往集中在一小片存储区域中.<3>指令执行顺序的局部性原理.指令顺序执行比转移执行的可能性要大.在三级结构的存储器系统中,所存储的信息必须满足如下原则:一致性原则即同一个信息会同时存放在几个级别的存储器中,此时,这一信息在几个级别的存储器中必须保持相同的值.包含性原则处在内层<即靠近CPU>存储器中的信息一定被包含在各外层的存储器中,即内层存储器中的全部信息一定是各外层存储器中所存信息中一小部分的副本,这是保证程序正常运行、实现信息共享、提高系统资源利用率所必需的,反之则不成立.8.简述多核的关键技术.与单核处理器相比,多核处理器在体系结构、软件、功耗和安全性设计等方面面临着巨大的挑战,但也蕴含着巨大的潜能.

1.核结构研究CMP的构成分成同构和异构两类,同构是指内部核的结构是相同的,而异构是指内部的核结构是不同的.为此,面对不同的应用研究核结构的实现对未来微处理器的性能至关重要.核本身的结构,关系到整个芯片的面积、功耗和性能.怎样继承和发展传统处理器的成果,直接影响多核的性能和实现周期.同时,根据Amdahl定理,程序的加速比决定于串行部分的性能,所以,从理论上来看似乎异构微处理器的结构具有更好的性能.多核所用的指令系统对系统的实现也是很重要的,采用多核之间采用相同的指令系统还是不同的指令系统,能否运行操作系统等,也将是研究的内容之一.2.程序执行模型多核处理器设计的首要问题是选择程序执行模型.程序执行模型的适用性决定多核处理器能否以最低的代价提供最高的性能.程序执行模型是编译器设计人员与系统实现人员之间的接口.编译器设计人员决定如何将一种高级语言程序按一种程序执行模型转换成一种目标机器语言程序;系统实现人员则决定该程序执行模型在具体目标机器上的有效实现.当目标机器是多核体系结构时,产生的问题是:多核体系结构如何支持重要的程序执行模型?是否有其他的程序执行模型更适于多核的体系结构?这些程序执行模型能多大程度上满足应用的需要并为用户所接受?3.Cache设计:多级Cache设计与一致性问题处理器和主存间的速度差距对CMP来说是个突出的矛盾,因此必须使用多级Cache来缓解.目前有共享一级Cache的CMP、共享二级Cache的CMP以及共享主存的CMP.通常,CMP采用共享二级Cache的CMP结构,即每个处理器核心拥有私有的一级Cache,且所有处理器核心共享二级Cache.Cache自身的体系结构设计也直接关系到系统整体性能.但是在CMP结构中,共享Cache或独有Cache孰优孰劣、需不需要在一块芯片上建立多级Cache,以及建立几级Cache等等,由于对整个芯片的尺寸、功耗、布局、性能以及运行效率等都有很大的影响,因而这些都是需要认真研究和探讨的问题.另一方面,多级Cache又引发一致性问题.采用何种Cache一致性模型和机制都将对CMP整体性能产生重要影响.在传统多处理器系统结构中广泛采用的Cache一致性模型有:顺序一致性模型、弱一致性模型、释放一致性模型等.与之相关的Cache一致性机制主要有总线的侦听协议和基于目录的目录协议.目前的CMP系统大多采用基于总线的侦听协议.4.核间通信技术CMP处理器的各CPU核心执行的程序之间有时需要进行数据共享与同步,因此其硬件结构必须支持核间通信.高效的通信机制是CMP处理器高性能的重要保障,目前比较主流的片上高效通信机制有两种,一种是基于总线共享的Cache结构,一种是基于片上的互连结构.总线共享Cache结构是指每个CPU内核拥有共享的二级或三级Cache,用于保存比较常用的数据,并通过连接核心的总线进行通信.这种系统的优点是结构简单,通信速度高,缺点是基于总线的结构可扩展性较差.基于片上互连的结构是指每个CPU核心具有独立的处理单元和Cache,各个CPU核心通过交叉开关或片上网络等方式连接在一起.各个CPU核心间通过消息通信.这种结构的优点是可扩展性好,数据带宽有保证;缺点是硬件结构复杂,且软件改动较大.也许这两者的竞争结果不是互相取代而是互相合作,例如在全局范围采用片上网络而局部采用总线方式,来达到性能与复杂性的平衡.5.总线设计传统微处理器中,Cache不命中或访存事件都会对CPU的执行效率产生负面影响,而总线接口单元〔BIU的工作效率会决定此影响的程度.当多个CPU核心同时要求访问内存或多个CPU核心内私有Cache同时出现Cache不命中事件时,BIU对这多个访问请求的仲裁机制以及对外存储访问的转换机制的效率决定了CMP系统的整体性能.因此寻找高效的多端口总线接口单元〔BIU结构,将多核心对主存的单字访问转为更为高效的猝发〔burst访问,同时寻找对CMP处理器整体效率最佳的一次Burst访问字的数量模型以及高效多端口BIU访问的仲裁机制将是CMP处理器研究的重要内容.6.操作系统设计:任务调度、中断处理、同步互斥对于多核CPU,优化操作系统任务调度算法是保证效率的关键.一般任务调度算法有全局队列调度和局部队列调度.前者是指操作系统维护一个全局的任务等待队列,当系统中有一个CPU核心空闲时,操作系统就从全局任务等待队列中选取就绪任务开始在此核心上执行.这种方法的优点是CPU核心利用率较高.后者是指操作系统为每个CPU内核维护一个局部的任务等待队列,当系统中有一个CPU内核空闲时,便从该核心的任务等待队列中选取恰当的任务执行,这种方法的优点是任务基本上无需在多个CPU核心间切换,有利于提高CPU核心局部Cache命中率.目前多数多核CPU操作系统采用的是基于全局队列的任务调度算法.多核的中断处理和单核有很大不同.多核的各处理器之间需要通过中断方式进行通信,所以多个处理器之间的本地中断控制器和负责仲裁各核之间中断分配的全局中断控制器也需要封装在芯片内部.另外,多核CPU是一个多任务系统.由于不同任务会竞争共享资源,因此需要系统提供同步与互斥机制.而传统的用于单核的解决机制并不能满足多核,需要利用硬件提供的"读-修改-写"的原子操作或其他同步互斥机制来保证.7.低功耗设计半导体工艺的迅速发展使微处理器的集成度越来越高,同时处理器表面温度也变得越来越高并呈指数级增长,每三年处理器的功耗密度就能翻一番.目前,低功耗和热优化设计已经成为微处理器研究中的核心问题.CMP的多核心结构决定了其相关的功耗研究是一个至关重要的课题.低功耗设计是一个多层次问题,需要同时在操作系统级、算法级、结构级、电路级等多个层次上进行研究.每个层次的低功耗设计方法实现的效果不同——抽象层次越高,功耗和温度降低的效果越明显.8.存储器为了使芯片内核充分地工作,最起码的要求是芯片能提供与芯片性能相匹配的存储器带宽,虽然内部Cache的容量能解决一些问题,但随着性能的进一步提高,必须有其他一些手段来提高存储器接口的带宽,如增加单个管脚带宽的DDR、DDR2、QDR、XDR等.同样,系统也必须有能提供高带宽的存储器.所以,芯片对封装的要求也越来越高,虽然封装的管脚数每年以20%的数目提升,但还不能完全解决问题,而且还带来了成本提高的问题,为此,怎样提供一个高带宽,低延迟的接口带宽,是必须解决的一个重要问题.9.可靠性及安全性设计随着技术革新的发展,处理器的应用渗透到现代社会的各个层面,但是在安全性方面却存在着很大的隐患.一方面,处理器结构自身的可靠性低下,由于超微细化与时钟设计的高速化、低电源电压化,设计上的安全系数越来越难以保证,故障的发生率逐渐走高.另一方面,来自第三方的恶意攻击越来越多,手段越来越先进,已成为具有普遍性的社会问题.现在,可靠性与安全性的提高在计算机体系结构研究领域备受注目.今后,CMP这类处理器芯片内有多个进程同时执行的结构将成为主流,再加上硬件复杂性、设计时的失误增加,使得处理器芯片内部也未必是安全的,因此,安全与可靠性设计任重而道远.9.什么是高性能计算机?答:高性能计算机的概念并无明确的定义,一般认为运算速度非常快的计算机就可以认为是高性能计算机.严格地讲,高性能计算机是一个拥有最先进的硬件、软件、网络和算法的综合概念,"高性能"的标准是随着技术的发展而发展的.10.什么是接口?它的主要功能是什么?答:在主机与外设进行数据交换时必领引入相应的逻辑部件解决两者之间的同步与协调、数据格式转换等问题,这些逻辑部件就称为输入输出接口,简称为接口.输入输出接口的基本功能有:<1>实现数据缓冲,提供主机和设备交换信息过程中的数据缓冲机构,使主机与外设在工作速度上达到匹配.<2>实现数据格式的转换,例如,当主机和设备的信号同谋不同时的信号电平转换功能、数据传送中的格式〔串行、并行转换功能、直接内存访问中的额外需求等.<3>提供外设和接口的状态,为CPU更好地控制各种外设提供有效的帮助,交换主机和外围设备的状态信息.<4>实现主机与外设之间的通讯联络控制,实现主机与设备之间的数据交换.11.简述并行算法的基本内容.并行算法是在给定并行模型下的一种具体明确的计算方法和步骤,其分类有不同的分类方法.根据并行计算任务的大小分类,可以分为粗粒度并行算法、中粒度并行算法和细粒度并行算法三类.粗粒度并行算法所含的计算任务有较大的计算量和较复杂的计算程序;中粒度并行算法所含的计算任务的大小和计算程序的长短在粗粒度和细粒度两种类型的算法之间;细粒度并行算法所含的计算任务有较小的计算量和较短的计算程序.根据并行计算的基本对象可分为数值并行计算和非数值并行计算.非数值计算也会用于高精度数值计算,数值计算中也会有查找、匹配等非数值计算成分,这两者之间并无严格的界限.实际分类时,主要是根据主要的计算量所属范畴以及宏观的计算方法来判断.根据并行计算进程间的依赖关系可以分为同步并行算法和异步并行算法.前者是通过一个全局的时钟来控制各部分的步伐,将任务中的各个部分计算同步地向前推进;而后者执行的各部分计算步伐之间没有关联,互不同步,在操作中,它们根据计算过程的不同阶段决定等待、继续或终止.同步并行算法适合于SIMD并行计算机,异步并行算法适合于MIMD并行计算机.一个高效的并行算法设计过程比较复杂.一般编程设计过程可以分为任务划分、通信分析、任务组合和处理器映射四步.任务划分阶段主要将整个使用域或功能分解成一些小的计算任务,它的目的是要揭示和开拓并行执行的机会;通信分析则检测在任务划分阶段划分的合理性;任务组合按照性能要求和实现的代价来考察前两个阶段的结果,必要时可以将一些小的任务组合成更大的任务以提高执行效率和减少通信开销;处理器映射决定将每一个任务分配到哪个处理器上去执行,目的是要最小化全局执行时间和通讯成本,并最大化处理器的利用率.12.什么是网络计算机?它有什么优点?答:网络计算机〔NETWORKCOMPUTER简称NC,是专用于高速网络环境下的计算机终端设备.是基于处理器芯片和网络基础的新一代计算机产品,是一种新的桌面计算机.NC除了有人机交互必需的显示器,键盘鼠标外,它没有硬盘,软盘,光驱等外部存储设备,是一种瘦客户机.网络计算机具有以下优点:<1>易管理,维护简单,使用方便.<2>网络计算机没有硬盘,软盘和光盘,也没有风扇,在硬件方面没有什么可维护的地方,大大减少了计算机网络的维护工作,成本低廉.<3>安全性强,无论是防止病毒的侵犯,还是资料维护的安全,NC都比PC要好的多.<4>静音节能,高可靠网络计算机没有任何噪音,非常安静.网络计算机的功耗非常小.三.讨论题1.为什么计算机使用二进制,而不使用人们生活中的十进制来表示数据信息.答案略.2.计算机系统的存储器分为哪几个层次?〔原题已删除答案略.3.网络计算机有许多优点,请结合其特点谈谈我国发展网络计算机的前途.答案略.第3章程序设计语言习题1.A 2.A 3.D 4.A 5.AB6.C 7.D 8.D 9.ABCD 10.B11.A12.A二、简答题1.简述程序的概念.答:一个程序就是能够实现特定功能的一组指令序列的集合.或者程序=算法+数据结构.2.简述程序设计过程的一般步骤.程序设计的过程一般有四个步骤.1.分析问题在着手解决问题之前,应该通过分析,充分理解问题,明确原始数据、解题要求、需要输出的数据及形式等.2.设计算法算法是解题的过程.首先集中精力于算法的总体规划,然后逐层降低问题的抽象性,逐步充实细节,直到最终把抽象的问题具体化成可用程序语句表达的算法.这是一个自上而下、逐步细化的过程.3.编码利用程序设计语言表示算法的过程称为编码.4.调试程序调试程序包括编译和连接等操作.编译程序将源程序转换为目标程序,它对程序员编写的源程序进行语法检查,程序员根据编译过程中的错误提示信息,查找并改正源程序的错误后再重新编译,直到没有语法错误为止.大多数程序设计语言还要使用连接程序把目标程序与系统提供的库文件进行连接以得到最终的可执行文件.在连接过程中若程序使用了错误的内部函数名,将会引起连接错误.对于经过编译和连接,并最终运行结束的程序,程序员还要对程序执行的结果进行分析,只有得到正确结果的程序才是所需的程序.3.简述机器语言和汇编语言的共同特点.汇编语言具有一个本质上与机器语言一一对应的指令系统.大多数情况下,一条汇编指令直接对应一条机器指令,少数汇编指令对应几条机器指令,所以,汇编语言的实质和机器语言是相同的.与机器指令一样,汇编指令直接针对计算机硬件进行操作,要求程序员具有较为深厚的计算机专业知识;每一条指令只能实现一个非常细微的操作〔例如移动、自增,因而源程序一般比较冗长、复杂、容易出错.4.简述高级语言程序的运行过程.使用高级语言编写程序的一般过程可以归纳为以下几个步骤:<1>使用文本编辑工具,逐条编写源程序的语句.保存源程序的文件时,文件的后缀名与所用的高级语言有关.<2>编译源程序文件,生成目标文件,文件后缀名通常为obj.<3>链接目标文件,生成可执行文件,文件后缀名通常为exe.<4>在计算机上运行可执行程序,并进行调试和维护.程序的执行环境由操作系统提供,一般分为命令行环境和图形用户界面环境.在DOS与大多数Unix类操作系统中,提供的就是命令行用户界面,用户需要在系统命令提示符后面输入各种操作命令以实现需要的功能;在Windows操作系统中,提供的是图形用户界面,用户可以通过点击鼠标等操作完成希望的功能."界面就是程序"反映了在程序设计中为用户提供良好的操作界面的重要性.用户使用界面的好坏直接影响着程序的质量,要树立以人为本的思想,尽量为用户提供便利.5.简述编译程序的概念.编译程序是把高级语言程序<源程序>作为一个整体来处理,在应用源程序执行之前,就将程序源代码"翻译"成目标代码<机器语言>,编译后与系统提供的代码库链接,形成—个完整的可执行的机器语言程序<目标程序代码>.6.用图示法表示编译程序的框架.答:编译程序的框架如图所示:7.词法分析的任务是什么?答:作为编译过程的第一个阶段,其任务是从左到右一个字符,一个字符地对源程序进行扫描,读入源程序,对构成源程序的字符流进行扫描和分解,通过词法分析从而识别出一个个单词<也称单词符号或符号>.8.语法分析的任务是什么?答:语法分析是编译过程的第二个阶段,任务是在词法分析的基础上将单词序列分解成各类语法短语,如"程序"、"语句"、"表达式"等等.9.简述语义处理的功能.答:编译过程中的语义处理实现两个功能:<1>审查每个语法结构的静态语义,即验证语法结构合法的程序是否真正有意义,有时把这个工作称为静态语义分析或静态审查.<2>如果静态语义正确,则语义处理要执行真正的翻译,要么生成程序的一种中间表示形式<中间代码>,要么生成实际的目标代码.10.简述中间代码的概念.答:所谓"中间代码"是一种结构简单、含义明确的记号系统,这种记号系统可以设计为多种多样的形式,重要的设计原则为两点:一是容易生成;二是容易将它翻译成目标代码.11.目标代码生成阶段的任务是什么?答:目标代码生成阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码.这是编译的最后阶段,它的工作与硬件系统结构和指令含义有关,这个阶段的工作很复杂,涉及到硬件系统功能部件的运用、机器指令的选择、各种数据类型变量的存储空间分配以及寄存器和后援寄存器的调度等.三、讨论题1.作为一个计算机专业的学生,程序设计是大学学习的重要内容之一,程序设计的内容很多,语言的更新也很快,如何才能更好地掌握程序设计?如何利用语言编程?怎样才能克服害怕编程的思想?答案略.2.根据你的理解,学习程序设计语言的过程中,最重要的注意事项是什么?答案略.第4章程序设计基础习题1.C 2.A 3B 4.D 5.A6.B 7.C 8.D 9.B 10.D二、简答题1.结构化程序设计的思想是什么?答:结构化程序设计的基本思想就是采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构.2.结构化程序设计的原则是什么?答:结构化程序设计的原则是:<1>使用顺序、选择、循环3种基本控制结构表示程序逻辑.<2>程序语句组织成容易识别的语句模块,每个模块都是单入口、单出口.<3>严格控制GOTO语句的使用.3.结构化程序设计语言采用自顶向下的方法进行程序设计的特点是什么?答:利用结构化程序设计语言采用自顶向下的方法进行程序设计的特点是:<1>问题分解成子问题的结构必须与3种基本程序结构之一相对应.<2>问题的划分决定了程序的结构.一方面,子问题的划分决定了这一层次的程序是3种基本结构中的哪一种结构;另一方面,一个问题该如何划分成子问题是灵活的,并不是只有一种分解方法.分解的好坏就决定了设计的质量,也决定了程序的不同结构.<3>问题的边界应该清晰明确.只有这样才能精确地解决这些子问题,否则就会模棱两可,无从下手.4.简述面向对象和结构化程序设计的区别.答:面向对象是从本质上区别于传统的结构化方法的一种新方法、新思路.它吸收了结构化程序设计的全部优点,同时又考虑到现实世界与计算机之间的关系,认为现实世界是由一系列彼此相关并且能够相互通信的实体组成,这些实体就是面向对象方法中的对象,每个对象都有自己的自然属性和行为特征,而一类相似对象的共性的抽象描述,就是面向对象方法中的核心——类.5.答:数据结构是指数据元素之间的相互关系的集合,包括了数据的逻辑结构、物理结构以及数据的运算.数据的物理结构主要有四种,分别是顺序结构、链表结构、索引结构及散列结构.<1>顺序结构:是把所有元素存放在一片连续的存储单元中,逻辑上相邻的元素存储在物理位置相邻的存储单元中,由此得到的存储表示称为顺序存储结构.<2>链表结构:对逻辑上相邻的元素不要求其物理位置相邻,元素间的逻辑关系通过附设的指针域来表示,由此得到的存储表示称为链式存储结构.<3>索引结构:每个数据结构建立索引表,每个数据元素占用表中的一项,每个表项通常包含关键字和地址指针.其中的关键字是能够惟一标志一个数据元素的数据项.<4>散列结构:通过构造相应的散列函数,由散列函数的值来确定元素存放的地址.三、讨论题题目已变1.在进行程序设计时,语言的选择尤为重要,根据你对程序设计语言的了解,谈谈你对程序设计的认识.答案略.2.如何才能选择一个好的数据结构进行程序设计.答案略.第5章算法与复杂性习题1.B 2.D 3.C 4.A 5.B6.B 7.D 8.C 9.A 10.A二、简答题"算法<Algorithm>是一组明确的、可以执行的步骤的有序集合,它在有限的时间内终止并产生结果".算法的特性有:<1>有穷性<可终止性>:一个算法必须在有限个操作步骤内以及合理的有限时间内执行完成.<2>确定性:算法中的每一个操作步骤都必须有明确的含义,不允许存在二义性.<3>有效性<可执行性>:算法中描述的操作步骤都是可执行的,并能最终得到确定的结果.<4>输入及输出:一个算法应该有零个或多个输入数据、有1个或多个输出数据.时间复杂度是与求解问题规模、算法输入相关的函数,该函数表示算法运行所花费的时间.记为,T<n>,其中,n代表求解问题的规模.complexity>度量算法的空间复杂性、即执行算法的程序在计算机中运行所占用空间的大小.简单讲,空间复杂度也是与求解问题规模、算法输入相关的函数.记为,S<n>,其中,n代表求解问题的规模.同样,引入符号"O"来表示T<n>、S<n>与求解问题规模n之间的数量级关系.3.用图示法表示语言处理的过程.答:语言处理的过程如图所示:4.简述算法设计的策略.答:作为实现计算机程序实现时解决问题的方法,算法研究的内容是解决问题的方法,而不是计算机程序的本身.一个优秀的算法可以运行在比较慢的计算机上,但一个劣质的算法在一台性能很强的计算机上也不一定能满足应用的需要,因此,在计算机程序设计中,算法设计往往处于核心地位.要想充分理解算法并有效地应用于实际问题,关键是对算法的分析.通常可以利用实验对比分析、数学方法来分析算法.实验对比分析很简单,两个算法相互比较,它们都能解决同一问题,在相同环境下,一般就会认为哪个算法的速度快这个算法性能更好.在算法设计中,通常采用能近似表达性能的方法来展示某个算法的性能指标.例如,计算机对和的响应速度,当n比较大的时,没什么区别,便可直接认为后者算法的复杂度为.基于算法复杂度简化表达的思想基础上,通常会对算法进行最坏情况分析和平均情况分析.对于一个给定的算法,如果能保证它的最坏情况下的性能依然很好,但是在某些情况下,程序的最坏情况算法的运行时间和实际情况的运行时间相差很大,在实际应用中几乎不会碰到最坏情况下的输入,那么此时进行最坏情况分析显得有些画蛇添足,特别是分析最坏情况算法会花费大量精力的时候.算法的平均情况分析可以帮助估计程序的性能,作为算法分析的基本指标之一,但是平均情况和实际情况仍然会有相差很大的时候,这时便可以使用随机法来尽量模拟现实中的情况,这样可以得到在严格的概率意义上的预测运行时间.另外,对于一个经典算法,没有必要再去对该算法进行改进,研究它的上界和下界,只需要了解该算法的特性,然后在合适的时候使用它.5.简述并行算法研究的内容.答:<1>并行计算模型并行算法作为一门学科,首先研究的是并行计算模型.并行计算模型是算法设计者与体系结构研究者之间的一个桥梁,是并行算法设计和分析的基础.它屏蔽了并行机之间的差异,从并行机中抽取若干个能反映计算特性的可计算或可测量的参数,并按照模型所定义的计算行为构造成本函数,以此进行算法的复杂度分析.并行计算模型的第一代是共享存储模型,如SIMD-SM和MIMD-SM的一些计算模型,模型参数主要是CPU的单位计算时间,这样科学家可以忽略一些细节,集中精力设计算法.第二代是分布存储模型.在这个阶段,人们逐渐意识到对并行计算机性能带来影响的不仅仅是CPU,还有通信.因此如何把不同的通信性能抽象成模型参数,是这个阶段的研究重点.第三代是分布共享存储模型,也是我们目前研究所处的阶段.随着网络技术的发展,通信延迟固然还有影响,但对并行带来的影响不再像当年那样重要,注重计算系统的多层次存储特性的影响.<2>设计技术并行算法研究的第二部分是并行算法的设计技术.虽然并行算法研究还不是太成熟,但并行算法的设计依然是有章可循的,例如划分法、分治法、平衡树法、倍增法/指针跳跃法、流水线法破对称法等都是常用的设计并行算法的方法.另外人们还可以根据问题的特性来选择适合的设计方法.以上是并行算法的常规研究内容.随着时代的进步,我们需要不断调整研究方向.目前并行算法研究的新走向是并行算法研究内容不断拓宽,并行计算被纳入研究范畴;与广大用户领域结合,注重应用,强调走到用户中去,为用户解决问题;重视新的、非常规计算模式,如神经计算、量子计算等,这些模式能够解决某类特定问题,有其自身的优越性.三、讨论题1.算法是程序设计的基础,没有好的算法,就不可能写出好的程序,但是,学习算法涉及到很多交叉学科的知识,怎样才能把这些知识融会贯通,写出优秀的程序?答案略.2.算法设计非常复杂,如何才能设计优秀的算法?答案略.第6章信息管理习题<答案>一.单项选择题1.D 2.C 3.B 4.D 5.B6.C 7.B 8.D 9.A 10.C11.A 12.C 13.A 14.A 15.C二.简答题1.答:DBMS通常由四部分组成,也是DBMS要完成的功能:<1>数据定义语言DDL及其翻译处理程序:定义数据库中的数据对象.<2>数据操纵语言DML及其编译<或解释>程序:实现对数据库的查询、插入、删除、修改等操作.<3>数据库运行控制程序:实现对数据库的统一管理和控制,从而保证数据的安全性、完整性,并对数据并发访问进行控制,完成数据库的故障恢复等功能.<4>实用程序:完成数据库的建立与维护、数据格式的转换与通信、数据库的转储等功能.2.答:数据库系统通常采用三级模式结构,它也是数据库管理系统内部的系统结构.<1>模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图.模式层中定义了数据模型和模式图表,DBMS的主要功能都在这层.一个数据库系统中只有一个模式.<2>外模式也称子模式或用户模式,是数据库用户可见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,通常与某一应用需求相对应.这层将来自模式层的数据转化为用户所熟悉的格式和视图.外模式通常可以有任意多个.<3>内模式是数据物理结构和存储结构的描述,是数据在数据库内部的表示方法.内模式层决定数据存储在存储设备中的实际位置,并处理数据的存取方法及数据在设备间的数据传输.数据库系统的内模式也只有一个.3.答:关系模型中,定义了三种完整性约束条件:实体完整性、参照完整性、用户自定义的完整性.实体完整性规定一个关系的主码<包括所有的主属性>不能为空;参照完整性规定外码必须是另一个关系的主码的有效取值,或为空;用户定义的完整性是根据应用需求而要求数据必须满足的语义的要求,如某一属性的取值范围.4.答:事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全都不做,是一个不可分割的工作单位.所有的事务都具有原子性<Atomicity>、一致性<Consistency>、隔离性<Isolation>、持续性<Durability>,或简称ACID特性.原子性:事务的所有操作必须作为一个整体的处理单位,要么全做,要么全都不做,不可以分割.一致性:数据必须保持一致性状态.即事务的执行只能从一个一致性状态转变到另一个一致性状态.隔离性:系统内多个事务的执行是相互独立的,互不相扰.持续性:一个事务一旦执行成功,对于数据库中数据的改变是永久的.5.答:数据库完整性控制是指保证数据库中数据的正确性、有效性、相容性,防止错误的数据进入数据库.正确性是指数据的合法性;有效性是指数据是否属于所定义的有效范围;相容性是指表示同一个事实的多个数据应该相同.三.讨论题答案略.第7章软件工程习题<答案>1.D 2.B 3.C 4.B 5.A6.C 7.A 8.D 9.BD 10.C11.B 12.C答:随着计算机应用的普及和深化,计算机软件的数量、规模、复杂程度和开发所需的人力、物力等都在急剧增加,计算机发展初期个人编写小程序的传统方法,已不再适合现代大型软件的开发,用传统方法开发出来的许多大型软件甚至无法投入运行.同时,由于计算机应用领域和硬件技术得到丁飞速发展,软件的生产速度、质量和规模远远适应不了对软件的需求,造成大量人力、物力、财力的浪费,在软件开发和维护过程中出现了巨大的困难.计算机领域把大型软件开发和维护过程中遇到的一系列严重问题称为"软件危机"<SoftwareCrisis>.答:软件危机的表现形式:<1>软件的质量难以保证开发的软件可靠性差.由于在开发过程中,没有确保软件质量的体系和措施,在软件测试时,又没有严格的、充分的、完全的测试,提交给用户的软件质量差,在运行中暴露出大量的问题.这种不可靠的软件,轻者会影响系统正常工作,重者会发生事故,造成生命财产的重大损失.<2>软件开发成本和开发进度难以控制经费预算经常突破,完成时间一再拖延.由于缺乏软件开发的经验和软件开发数据的积累,使得开发工作的计算很难制定.主观盲目制定的计算,执行起来和实际情况有很大差距,使得开发经费一再突破.由于对工作量和开发难度估计不足,进度计划无法按时完成,开发时间一再拖延.<3>软件的维护非常困难开发的软件可维护性差.开发过程没有统一的、公认的规范,软件开发人员按各自的风格工作,各行其事.开发过程无完整、规范的文档,发现问题后进行杂乱无章的修改.程序结构不好,运行进发现错误也很难修改,导致维护性差.<4>用户对"已完成"的软件系统不满意开发的软件不能满足用户要求.开发初期对用户的要求了解不够明确,未能得到明确表达.开发工作开始后,软件人员和用户又未能及进交换意见,使得一些问题不能及时解决,导致开发的软件不能满足用户的要求,使开发失败.答:软件工程是研究大规模程序设计的方法、工具和管理的一门工程科学,也就是运用系统的、规范的和可定量的方法来开发、运行和维护软件的系统工程.软件工程是—门交叉学科,涉及到计算机科学、管理科学、工程学和数学.软件工程的理论、方法、技术都是建立在计算机科学的基础上,它是用管理学的原理、方法来进行软件生产管理;用工程学的观点来进行费用估算、制定进度和实施方案;用数学方法来建立软件可靠性模型以及分析各种算法和性质.软件工程是指导计算机软件开发和维护的工程学科.答:软件工程的目标可概括为:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并满足用户需要的软件产品.答:软件工程过程包含如下7个过程.<1>获取过程:获取过程为需方按合同获取一个系统、软件产品或服务的活动.<2>供应过程:供应过程为供方向需方提供合同中的系统、软件产品或服务所需的活动.<3>开发过程:开发过程为开发者和机构为了定义和开发软件或服务所需的活动.引过程包括需求分析、设计、编码、集成、测试、软件安装和验收等活动.<4>操作过程:操作过程为操作者和机构为了在规定的运行环境中为其用户运行一个计算机系统所需要的活动.<5>维护过程:维护过程为维护者和机构为了管理软件的修改,使它处于良好运行状态所需要的活动.<6>管理过程:管理过程为软件工程过程中各项管理活动,包括项目开始和范围定义;项目管理计划;实施和控制,评审和评价;项目完成.<7>支持过程:支持过程对项目的生存周期过程给予支持.它有助于项目的成功并能提高项目的质量.答:软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期.通常,软件生存周期包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等活动,可以将这些活动以适当方式分配到不同阶段去完成.答:常见的软件工程模型有:瀑布模型、螺旋模型、快速原型模型、智能模型等等.答:喷泉模型是一种以用户需求为动力,以对象作为驱动的模型.它适合于面向对象的开发方法.它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性.喷泉模型使开发过程具有迭代性和无间隙性.系统某些部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统.无间隙是指在分析、设计和实现等开发活动之间不存在明显的边界.智能模型又称智能生存周期模型,是基于知识的软件开发模型,它把瀑布模型与专家系统结合在—起.该模型在实施过程中要建立知识库,将模型本身、软件工程知识与特定领域的知识分别存入数据库.以软件工程知识为基础的生成规则构成的专家系统与含应用领域知识规则的其他专家系统相结合,构成这一应用领域软件的开发系统.答:模块的划分不能够随意进行,而是应该遵循一定的原则:<1>划分的模块要有尽量高的功能独立性,而模块之间应该是低耦合<关联少>的.<2>模块的大小要适宜,过大,增加模块本身的复杂性;过小,模块数增多,会增加模块间关联度.<3>模块间接口是必须是明确的.<4>模块间可以有调用关系,这个调用的层次不能太多.<5>尽量注意提高模块的复用率,提高开发效率.答:结构化方法通常遵循以下原则:<1>用户参与的原则.由于整个软件开发工作的复杂性,用户的需求分析至关重要,但是,用户的需求不是一次就能够明确的,而是随着系统开发工作的深入,用户的需求表达和开发人员对用户需求的理解才能逐步明确、深化和细化.这就要求软件的开发要有用户的积极参与.否则,往往导致开发缓慢、不断反复、甚至失败.<2>先分析、再设计、后实现的原则.结构化方法强调在进行系统设计和系统实施之前,要先进行充分的需求调查与分析,进行可行性的论证,即首先解决系统"做什么"的问题,然后再进入系统设计、系统实施阶段,来解决"如何做"的问题.<3>自顶向下的原则.在系统分析、设计、实施等各阶段,结构化方法都强调"自项向下"的原则,即从总体目标和功能出发,逐级分解、逐步细化,将整个开发系统分解,先实现某些子系统,然后再实现总的目标和功能.遵循这个原则,可以将一个复杂的问题分解成若干个比较简单的问题分别加以解决,从而降低了解决问题的难度.<4>阶段成果文档化.结构化方法强调要将每一工作阶段的成果,用明确的文字和标准化的图形、表格等文档化工具进行完整而又准确的描述.这些文档即可标志阶段开发工作的结束,又是下阶段工作开展的主要依据.答:软件质量是贯穿软件生存期的一个极为重要的问题,关于软件质量的定义有多种说法,从实际应用来说,软件质量定义如下:<1>与所确定的功能和性能需求的一致性.<2>与所成文的开发标准的一致性.<3>与所有专业开发的软件所期望的隐含特性的一致性.答:软件的质量保证就是向用户及社会提供满意的高质量的产品,确保软件产品从诞生到消亡为止的所有阶段的质量活动,即确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动.答:软件可靠性定义表明了一个程序按照用户的要求和设计的目标,执行其功能的正确程度.一个可靠的程序应要求是正确的、完整的、一致的和健壮的.答:设计质量的评审内容:<1>评价软件的规格说明是否合乎用户的要求,即总体设计思想和设计方针是否明确;需求规格说明是否得到了用户或单位上级机关的批准;需求规格说明与软件的概要设计规格说明是否一致等.<2>评审可靠性,即是否能避免输入异常<错误或超载等>、硬件失效及软件失效所产生的失效,一旦发生应能及时采取代替或恢复手段.<3>评审保密措施实现情况,即是否提供对使用系统资格进行检查;对特定数据的使用资格、特殊功能的使用资格进行检查,在查出有违反使用资格情况后,能否向系统管理人员报告有关信息;是否提供对系统内重要数据加密的功能等.<4>评审操作特性实施情况,即操作命令和操作信息的恰当性,输入数据与输入控制语句的恰当性;输出数据的恰当性;应答时间的恰当性等.<5>评审性能实现情况,即是否达到所规定性能的的目标值.<6>评审软件是否具有可修改性、可扩充性、可互换性和可移植性.<7>评审软件是否具有可测试性.<8>评审软件是否具有复用性.答:容错软件的定义,有以下4种:<1>规定功能的软件,在一定程度上对自身错误的作用<软件错误>具有屏蔽能力,则称此软件为具有容错功能的软件,即容错软件.<2>规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称之为容错软件.<3>规定功能的软件,在因错误而发生错误时,仍然能在一定程度上完成预期的功能,则把该软件称为容错软件.<4>规定功能的软件,在一定程度上具有容错能力,则称之为容错软件.答:软件开发环境是指在计算机的基本软件的基础上,为了支持软件的开发而提供的一组工具软件系统.软件工程环境是一组方法、过程及计算机程序<计算机化的工具>的整体化构件,它支持从需求定义、程序生成直到维护的整个软件生存期.软件是计算机的灵魂,用软件工程的方法来保证软件开发过程的顺利进行有哪些好处?2.学习了软件工程后,你觉得在哪些方面的收获最大?第8章操作系统习题<答案>一.单项选择题1.D 2.C 3.B 4.A 5.C6.D 7.B 8.C 9.D 10.A二.简答题1.?答:操作系统就是合理管理并控制计算机系统内软、硬件资源,并能够合理组织工作流程、方便用户使用的程序的集合.提供友好的人机交互以及程序级接口,使得计算机看上去像是功能扩展了的机器.2.?答:最常见的是按照操作系统的性质来划分的类型:分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统、嵌入式操作系统.分时系统中往往支持多道程序执行,尽管如此,各运行任务具有独立性,互不影响;由于将处理机分时使用,使得用户与系统的及时交互成为可能,因此,分时系统具有较好的交互性;同时,系统资源利用率也得到了很大的提高.3.?答:并发系统只能够是宏观上并行、微观上串行执行;而并行则在微观执行上也是并行的.只有在多处理机系统中,任务的并行执行才是可能的.并行系统往往也可以支持任务的并发执行.4.答:进程管理包含了进程描述、进程的状态及转换、进程控制和调度、进程间通信等多个部分.存储管理解决内存分配与回收、内存保护、地址映射、虚拟存储等问题.设备管理涉及到中断技术、I/O硬件与I/O软件、数据传输控制技术等.文件管理要解决文件的命名、文件属性、文件操作、文件的逻辑与物理结构、文件的存取方式、磁盘物理空间管理、目录、文件可靠性等问题.5.答:Windows、UNIX、Linux等.Windows操作系统特点:统一的窗口和操作风格、多任务的图形化用户界面、支持网络及多媒体技术、UNIX操作系统特点:多用户、多任务、分时,有可装卸的树型结构文件系统,设备文件化,较强的可移植性.Linux操作系统特点:三.讨论题答案略.第9章网络计算习题<答案>一.选择题1.C 2.B 3.A 4.C 5.C6.A 7.ABCD 8.ABCD 9.ABCD 10.ABC11.D 12.C 13.B 14.B二.简答题1.什么叫信息、数据、信号?答:信息<Information>是客观事物的属性和相互联系特性的表现,它反映了客观事物的存在形式和运动状态.计算机中的信息—般是字母、数字、符号的组合,而将这些信息进行传输的载体可以是文字、声音、图形、图像等.数据<Data>是信息的数字化形式或数字化的信息形式.信号<Signal>是携带信息的传输介质,在通信系统中常用电信号、光信号、载波信号、脉冲信号、调制信号等描述.2.什么是串行通信和并行通信?答:在数据通信中,将待传送的每个字符的二进制代码按由低位到高位的顺序依次发送,每次由发送端传送到接收端的数据只有一位,这种方式称为串行通信.至少有8位二进制数据同时通过多位数据线从一个设备传送到另一个设备,每次发送一个字符代码,这种工作方式称为并行通信.3.什么是同步通信和异步通信?答:同步是每次发送多个字节或信息块,要求通信的收、发双方在时间基准上保持一致,系统需要一个同步时钟,用于传输大量的信息.异步每次发送和接收一个字符的数据,同步在字符的基础上进行,起始时刻是任意的,字符与字符之间的间隔也是任意的,即各个字符之间是异步的.4.简述计算机网络的定义.答:计算机网络就是利用通信设备和线路将地理位置分散的、具有独立功能的多个计算机系统连接起来,按照以功能完善的网络软件<即网络通信协议、信息交换方式和网络操作系统<NetworkOperatingSystem:NOS>等>进行数据通信,以实现网络中资源共享和信息传递的系统.5.简述资源子网和通信子网的组成.答:资源子网由主机系统、终端、终端控制器、连网外设、各种软件资源与信息资源织成.资源子网负责全网的数据处理业务,向网络用户提供各种网络资源与网络服务.通信子网由通信控制处理机、通信线路与其他通信设备组成,负责完成网络数据传输、转发等通信处理任务.6.简述光纤通信的优点.答:光纤通信的优点是通信容量非常大、抗雷电和电磁抗干扰性能好、传输距离远、传输速率高、单芯可实现传输、传输损耗小、中继距离长、无串音干扰、保密性好、体积小、重量轻.7.简述分组交换.答:分组交换采用存储转发的技术,把来自用户的信息暂存于存储装置中,并划分为多个一定长度的分组,每个分组前边都加上固定格式的分组标记<Lable>,用于指明该分组的发端地址、收端地址及分组序号等,然后再根据地址转发分组.分组在各交换节点之间传送比较灵活,交换节点不必等待整个报文的其他分组到齐,而是一个分组、一个分组地转发.这样可以大大压缩节点所需的存储容量,也缩短了网路时延.另外,较短的报文分组比长的报文可大大减少差错的产生,提高了传输的可靠性.但分组交换也有缺点,分组存储转发时,会产生时延;携带控制信息会增加开销<Overhead>;分组交换网还需要专门的管理和控制机制.8.计算机网络的拓扑结构有哪些?分别简述每种拓扑结构的特点.答:<1>总线型网络<BusNetwork>结构在总线型拓扑结构中,网络中的所有节点都直接连接到同一条传输介质上,这条传输介质称为总线.各个节点将依据一定的规则分时地使用总线来传输数据,发送节点发送的数据帧沿着总线向两端传播,总线上的各个节点都能接收到这个数据帧,并判断是否发送给本节点的,如果是,则将该数据帧保留下来;否则将丢弃该数据帧.<2>树型网络<TreeNetwork>结构总线型拓扑结构的另一种形式是树型拓扑结构,传输介质是不封闭的分支电缆.和总线型结构一样,树型拓扑结构中任何一个节点发送的数据都能被其它节点接收.<3>星型网络<StarNetwork>结构在星型拓扑结构中,每个端点必须通过点到点链路连接到中间节点上,任何两个端节点之间的通信都要通过中间节点来进行.在星型结构的网络中,可采用集中式访问控制和分布式访问控制两种访问控制策略对网络节点实施网络访问控制.<4>环型网络<RingNetwork>结构在环型拓扑结构中,各个节点通过中继器连入网络,中继器之间通过点到点链路连接,使之构成一个闭合的环型网络.发送节点发送的数据帧沿着环路单向传递,每经过一个节点,该节点要判断这个数据帧是否发送给本节点的,如果是,则要将数据帧拷贝下来.然后将数据帧传递到下游节点.数据帧遍历各个节点后,由发送节点将数据帧从环路上取下.9.简述网络体系结构.答:网络的体系结构是用层次结构设计方法提出的计算机网络层次结构及其协议的集合.换种说法,它是计算机网络及其部件所应能完成的各种功能的精确定义.在网络分层体系结构中,每一个层次在逻辑上都是相对独立的;每一层都有具体的功能;层与层之间的功能有明确的界限;相邻层之间有接口标准,接口定义了低层向高层提供的操作服务;计算机间的通信是建立在同层次之间的基础上.10.常用的网络互连设备有哪些?答:常用的互连设备有以下几类:<1>物理层互连设备,即中继器<Repeater>,中继器又叫转发器.<2>数据链路层互连设备,即网桥<Bridge>.<3>网络层互连设备,即路由器<Router>.<4>网络层以上的互连设备,统称网关<Gateway>或应用网关.11.简述TCP/IP协议的体系结构.答:TCP/IP<传输控制协议/网际协议>是Internet赖以存在的基础,Internet中计算机之间通信必须共同遵循的TCP/IP通信规定.TCP/IP的体系结构如图所示.TCP/IP的体系结构图<1>网络接口层是TCP/IP协议的最底层,用于负责网络层与硬件设备间的联系.这一层的协议非常多,包括逻辑链路和媒体访问控制.<2>网际层主要解决的是计算机到计算机之间的通信问题,包括的功能有处理来自传输层的分组发送请求,收到请求后将分组装入IP数据报,填充报头,选择路径,然后将数据发往适当的接口;处理数据报;处理网络控制报文协议,即处理路径、流量控制、阻塞等.<3>传输层用于解决计算机程序到计算机程序之间的通信问题.<4>应用层提供一组常用的应用程序给用户.在应用层,用户调节访问网络的应用程序,应用程序与传输层协议配合,发送或接收数据.12.简述IP地址.答:每台计算机或路由器都有一个由授权机构分配的号码,称为IP地址.IP地址能够惟一地确定Internet上每台计算机.由32位二进制数组成地址称为IPv4地址,在实际应用中,将这32位二进制数分成4段,每段包含8位二进制数.13.Internet提供的主要服务有哪些?答:Internet提供的主要的服务有:WWW服务、电子邮件服务、文件传输服务、远程登录服务.14.简述域名系统.答:由于IP地址很难记忆,为了使用和记忆方便,因特网还采用了域名管理系统,简称DNS<DomainNameSystem>.域名系统与IP地址的结构一样,也是采用层次结构.任何一个连接在因特网上的主机或路由器,都有一个惟一的层次结构的名字,即域名.域名的结构由若干个分量组成,顶级域名放在最右面,各分量之间用"."隔开:···.三级域名.二级域名.顶级域名.15.Intranet的技术有何特点?答:Intranet的技术的特点有:<1>Intranet为用户提供了友好统一的浏览器界面.<2>Intranet可以简化用户培训过程.<3>Intranet可以改善用户的通信环境.<4>Intranet可以为企业实现无纸办公创造条件.16.网络管理的目标是什么?答:网络管理的目标有:<1>减少停机时间,改进响应时间,提高设备利用率;<2>减少运行费用,提高效率;<3>减少/消灭网络瓶颈;<4>适应新技术<多媒体,多平台>;<5>使网络更容易使用;<6>安全.17.网络安全策略的设计应考虑到那些方面?答:网络安全策略的设计应考虑到以下几个发面:<1>网络安全策略与网络用户的关系;<2>制定网络安全策略的两种思想;<3>网络安全教育与网络安全策略;<4>网络安全策略的修改、完善与网络安全制度的发布.18.简述计算机网络安全技术中防火墙<Firewall>的基本功能及其技术分类.答:计算机网络安全技术中"防火墙"<Firewall>的基本功能:<1>为内部网与Internet之间所设的安全系统;<2>是在两个网络之间执行访问,控制策略的系统;<3>它在内部网络和外部网络之间设置障碍;<4>防止外界对内部资源的非法访问,也可以防止内部对外部的不安全的访问.防火墙的技术分类:网络层防火墙和应用层防火墙.三.讨论题1.OSI/RM规定的计算机网络体系结构有七层模型结构,而TCP/IP只有四层或五层模型,试讨论它们的异同点.为什么会有这些变化,给出你自己的理由.答案略.2.结合你对计算机网络的认识,谈谈计算机网络<特别是Internet>给人们的生活带来了哪些变化?这些变换有正面的和负面的影响,你是怎样认识的?和同学、老师、周围的人们进行交流,看看他们有什么想法?答案略.第10章图形学和可视化习题<答案>一.选择题1.ABCDE 2.ABC 3.ABC 4.B 5.ABC6.C 7.ABCD 8.ACD 9.ABCD二.简答题1.什么是计算机图形学?计算机图形学主要研究的内容有哪些?答:计算机图形学是研究怎样用数字计算机生成、处理和显示图形的一门学科.计算机图形学主要研究的内容有:三维景物的表示、三维场景的显示、基于图像和图形的混合绘制技术、自然景物仿真、图形用户接口、虚拟现实、动画技术、可视化技术、几何和图形数据的存储<包括数据压缩和解压缩>、图形硬件、图形标准、图形交互技术等.2.虚拟现实的组成要素有哪些?答:虚拟现实一般有三个要素组成:软件播放平台;专业计算机<SGI>;成像设备.三.讨论题1.列举你在现实生活中所见到的计算机图形学方面的应用例子,并对应用例子用图形学方面的知识去分析.答案略.2.虚拟现实技术逐渐进入人们的生活,虚拟现实在娱乐方面的应用必将在很大程度上改变人们的生活方式,谈谈虚拟现实对人们的生活会带来哪些变化?答案略.第11章人机交互习题<答案>一.选择题1.ABC 2.C 3.ABCD 4.ABCD 5.ABCD6.A7.ABCD二.简答题1.什么是人机交互技术?它的发展阶段有哪些?答:人机交互技术是指通过计算机输入、输出设备,以有效的方式实现人与计算机对话的技术.它的发展阶段由指示灯和机械开关组成的操纵界面到由终端和键盘组成的字符界面<80年代>,再到由多种输入设备和光栅图形显示设备构成的图形用户界面<GUI>,<90年代>PC,工作站,WIMP<W-windows、I-icons、M-menu、P-pointingdevices>界面到VR技术<发展方向>.2.人机界面交互有哪几种方式?答:数据交互、图像交互、语音交互、行为交互.3.简述人机界面的设计原则?答:设计一个友好的用户界面应遵循以下原则:<1>用户针对性原则;<2>尽量减少用户的工作;<3>应用程序与人机界面相分离;<4>人机界面一致性;<5>系统反馈及时性;<6>尽量减少用户记忆;<7>及时的出错处理及帮助功能;<8>使用图形.4.数据交互主要的交互形式有哪些?答:<1>问答式对话数据输入交互;<2>菜单选择数据输入交互;<3>填表数据输入交互特点;<4>直接操纵数据输入交互;<5>关键词数据输入交互;<6>条形码数据输入;<7>光学字符识别;<8>声音数据输入交互;<9>图像数据输入.三.讨论题1.多媒体计算机技术逐渐进入人们的生活,多媒体在娱乐方面的应用必将在很大程度上改变人们的生活方式,谈谈多媒体技术对人们的生活会带来哪些变化?答案略.2.多媒体计算机技术逐渐进入人们的生活,多媒体在娱乐方面的应用必将在很大程度上改变人们的生活方式,谈谈多媒体技术对人们的生活会带来哪些变化?答案略.第12章离散结构习题〔答案一.单项选择题1.D 2.C 3.B 4.C 5.D6.B 7.A 8.B 9.D 10.C二.解答题解:∀xP<x><2>∃yQ<y>∀x∃yR<x,y><4>∀y∃xR<x,y>>∧∨解:P∧P>∨<<Q∧R>>的真值表.解:PQRPP∧PQ∧R<Q∧R>P∧P>∨<<Q∧R>>00010011001100110101001101110100100000111010001111000011111001004.××C×解:××C×解:f◦gg◦ff◦gg◦ff◦fg◦g解:f◦gg◦ff◦gg◦ff◦fg◦g∪,∩,->解:〔1对加法+,令幺元为e,则对所有的元素a,a+e=e+a,则e=0;对乘法*,令幺元为e,则对所有的元素a,a*e=e*a,则e=1.〔2对并集∪,令幺元为e,则对所有的集合a,a∪e=e∪a,则e=,空集;对交集∩,令幺元为e,则对所有的集合a,a∩e=e∩a,则e=U,全集.8.画出集合A={2,3,6,12,24,36}上整除关系的哈斯图.并指出最大元、最小元、极大元和极小元.解:集合A={2,3,6,12,24,36}上整除关系的哈斯图如图所示.其中,没有最大元,也没有最小元;极大元是24和36,极小元是2和3.9.画出图G=<V,E,Ψ>的图形,其中V={a,b,c,d,e,f,g,h},E={e1,e2,e3,e4,e5,e6,e7,e8,e9},Ψ<e1>={a,c},Ψ<e2>={a,b},Ψ<e3>={d,c},Ψ<e4>={b,d},Ψ<e5>={e,a},Ψ<e6>={e,d},Ψ<e7>={f,e},Ψ<e8>={e,g},Ψ<e9>={f,g};并给出其关联矩阵.cacabdefg关联矩阵略.10.在以下有向简单图中,给出每个结点的度,并给出其邻接矩阵.解:d<a>=3,d<b>=2,d<c>=3,d<d>=2三.讨论题第13章数值计算科学习题<答案>1.A 2.B 3.C 4.D 5.B二、简答题<1>构造法在数值计算问题中,有许多是可以通过构造来证明其存在性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论