计算机科学导论(第4版)习题答案-第5、6章
计算机科学导论第4章 程序设计基础(答案)
第4章程序设计基础习题一、选择题1. A2.D3.C4. A5. B6.D7.A8.B9.C 10. B11. D 12. A 13.B 14.D 15.C二、简答题1.结构化程序设计的思想是什么?答:结构化程序设计的基本思想就是采用自顶向下、逐步求精的设计方法和单入口单出口的控制结构。
2.结构化程序设计的原则是什么?答:结构化程序设计的原则是:(1) 使用顺序、选择、循环3种基本控制结构表示程序逻辑。
(2)程序语句组织成容易识别的语句模块,每个模块都是单入口、单出口。
(3)严格控制GOTO语句的使用。
3.结构化程序设计语言采用自顶向下的方法进行程序设计的特点是什么?答:利用结构化程序设计语言采用自顶向下的方法进行程序设计的特点是:(1) 问题分解成子问题的结构必须与3种基本程序结构之一相对应。
(2) 问题的划分决定了程序的结构。
一方面,子问题的划分决定了这一层次的程序是3种基本结构中的哪一种结构;另一方面,一个问题该如何划分成子问题是灵活的,并不是只有一种分解方法。
分解的好坏就决定了设计的质量,也决定了程序的不同结构。
(3) 问题的边界应该清晰明确。
只有这样才能精确地解决这些子问题,否则就会模棱两可,无从下手。
4.简述面向对象和结构化程序设计的区别。
答:面向对象是从本质上区别于传统的结构化方法的一种新方法、新思路。
它吸收了结构化程序设计的全部优点,同时又考虑到现实世界与计算机之间的关系,认为现实世界是由一系列彼此相关并且能够相互通信的实体组成,这些实体就是面向对象方法中的对象,每个对象都有自己的自然属性和行为特征,而一类相似对象的共性的抽象描述,就是面向对象方法中的核心——类。
5. 从互联网上面搜索选择结构的使用方式。
答案略。
6.简述模块化方法的原理。
模块化方法是一种传统的软件开发方法,该方法通常是将待开发软件划分为一些功能相对独立的模块,模块与模块之间定义相应的接口,各个模块是可以分别单独开发、调试、运行和测试的,然后,再将多个模块组合起来,进行软件的整体测试,从而完成整个软件的开发。
计算机科学导论(第4版)习题答案-第5、6章
第5章算法与复杂性习题一、选择题1. B2. D3. C4. A5. B6. B7. D8.B9.C 10.A11.A 12.C 13.A 14.A二、简答题1.什么是算法,算法的特性有哪些?答:“算法(Algorithm)是一组明确的、可以执行的步骤的有序集合,它在有限的时间内终止并产生结果”。
算法的特性有:(1) 有穷性(可终止性):一个算法必须在有限个操作步骤内以及合理的有限时间内执行完成。
(2) 确定性:算法中的每一个操作步骤都必须有明确的含义,不允许存在二义性。
(3) 有效性(可执行性):算法中描述的操作步骤都是可执行的,并能最终得到确定的结果。
(4) 输入及输出:一个算法应该有零个或多个输入数据、有1个或多个输出数据。
2.什么是算法的时间复杂度和空间复杂度,如何表示?答:时间复杂度是与求解问题规模、算法输入相关的函数,该函数表示算法运行所花费的时间。
记为,T(n),其中,n代表求解问题的规模。
算法的空间复杂度(Space complexity)度量算法的空间复杂性、即执行算法的程序在计算机中运行所占用空间的大小。
简单讲,空间复杂度也是与求解问题规模、算法输入相关的函数。
记为,S(n),其中,n代表求解问题的规模。
时间复杂度和空间复杂度同样,引入符号“O”来表示T(n)、S(n)与求解问题规模n之间的数量级关系。
3.用图示法表示语言处理的过程。
答:语言处理的过程如图所示:4.简述算法设计的策略。
答:作为实现计算机程序实现时解决问题的方法,算法研究的内容是解决问题的方法,而不是计算机程序的本身。
一个优秀的算法可以运行在比较慢的计算机上,但一个劣质的算法在一台性能很强的计算机上也不一定能满足应用的需要,因此,在计算机程序设计中,算法设计往往处于核心地位。
要想充分理解算法并有效地应用于实际问题,关键是对算法的分析。
通常可以利用实验对比分析、数学方法来分析算法。
实验对比分析很简单,两个算法相互比较,它们都能解决同一问题,在相同环境下,一般就会认为哪个算法的速度快这个算法性能更好。
大学计算机基础课课本计算机科学导论课后答案
大学计算机根底课课本计算机科学导论课后答案以下答案多方资料做的,仅供参考。
第一章绪论1. 和计算机相关的问题.2. 冯.诺依曼模型.3. 第一点:尽管这个模型能够表达现代计算机的功能,但是它的定义太广泛. 第二点:而且,并没有清楚地说明基于这个模型的机器能够完成的操作类型和数量.4. 输入数据和程序.5. 存储器,算术逻辑单元,控制单元和输入/输出单元.6. 存储器是用来存储的区域,在计算机处理过程中用来存储数据和程序.7. 算术逻辑单元是进行计算和逻辑判断的地方.8. 控制单元是用来对存储器,算术逻辑单元,输入/输出单元等子系统的操作进行控制的单元.9. 输入子系统负责从计算机外部接受输入数据和程序;输出子系统负责将计算机的处理结果输出到计算机外部.10. 早期的计算机的存储器存储数据.而完成某一任务的程序是通过操作一系列的开关或改变配线系统来实现的.而基于冯.诺依曼模型的计算机的存储器主要用来存储程序及其相应的数据.11.编程在早期的计算机中表达为对系列开关的开闭和配线系统的改变.而冯.诺依曼模型通过详细的第一计算机可以使用的不同指令集,从而使编程变得相对简单.程序员通过组合这些不同的指令来创立任意数量的程序. 12. B 13. C 14. A 15. B 16. D从而改变了编程的概念.17. C 18. D 19. C 20. A 21. D 22. A 23. C 24. D 25. D 26. D第二章略第三章数的表示1. 将十进制转换成二进制,那么反复采用底数除法.将要转换的数反复除2,所得余数做为从右往左的数.直到除数为1,作为最左端的数.2. 将所给的二进制的数每个二进制数字分别乘以它的权值,最后将每个二进制位乘以权值后的结果相加即得到相应的十进制数. 3. 第N位是2的N-1次幂.4. 第N位是10的N-1次幂.5. 符号加绝对值格式,二进制反码格式和二进制补码格式.6. 计算机定义一个最大的无符号整数的常量,这样,计算机所能存储的无符号整数就介于0到该常量之间.也就定义了一个存值范围.7. 位数分配是指用以表示整数的二进制位数.8. 因为8位的存储单元中,范围最大的无符号整数类型的范围是0~255,256超出其存储范围,在计算机中不能存储. 9. 计数和寻址.10. 溢出. 11. 一样.12. 符号加绝对值:在N位的存储单元中,将该负数忽略其负号,然后转换成N-1位的二进制数,缺乏位数左边补0.最后在最左边加1.二进制反码:在N位的存储单元中,将该负数忽略其负号,然后转换成N位的二进制数,缺乏位数左边补0.最后,将其每一位换成它D 31. C 32. B 33. D 34. ~46* 47.例子: 23. 23/2=11…1, 11/2=5…1, 5/2=2…1, 2/2=1…0, 剩1. 即:10111,所以其八位无符号整数即为00010111.48.例子: 41. 41/2=20…1, 20/2=10…0, 10/2=5…0, 5/2=2…1, 2/2=1…0, 剩1. 即:101001,所以其16位无符号整数为0000000000101001.49. 例子:-101, 去其负号. 101/2=50…1, 50/2=25…0, 25/2=12…1,12/2=6…0, 6/2=3…0, 3/2=1…1, 剩1. 即:1100101. 其8位符号加绝对值即补足7位,再在最左边加1表负数. 即:11100101. 50. 同上.51. 例子:-110, 去其负号, 110/2=55…0, 55/2=27…1, 27/2=13…1,13/2=6…1, 6/2=3…0, 3/2=1…1, 剩1. 即:1101110. 其16位无符号整数位:0000000001101110,二进制反码整数即为:以下略.方法由上面依此类推.第四章位运算略第五章计算机组成39.A 40.B41.A 42.D 43.D 44.D 45.C 46.A 47.B 48.A 49.(2")50.D51.A 52.A 53.C 54.B 55.D 56.D 57.A 58.B 59.C 60.B61.B 62.A 63.C 64.B 65.D 66.C 67.D 68.D 69.C 70.C 71.A 72.C 73.B 74.C 75.B 76.A 77.C第六章计算机网络1.模型是标准化组织制定的用于网络设计的指南;协议是用于控制网络或交互式网络种不同设备间交互的一系列规那么。
计算机操作系统(第四版)1-8章-课后答案(全)
计算机操作系统(第四版)1-8章-课后答案(全)第四版计算机操作系统课后答案第一章1. 操作系统的定义操作系统是一种软件,它管理着计算机系统的硬件和软件资源,并为用户和应用程序提供接口,以方便他们的使用。
2. 操作系统的功能操作系统具有以下功能:- 进程管理:负责创建、执行和终止进程,并管理它们的资源分配。
- 存储管理:管理计算机系统的内存资源,包括内存分配、虚拟内存和页面置换等。
- 文件系统管理:管理计算机系统中的文件和文件夹,包括文件的存储、读写和保护等。
- 设备管理:负责管理计算机系统中的各种设备,如打印机、键盘和鼠标等。
- 用户接口:提供用户与计算机系统进行交互的接口,如命令行界面和图形用户界面。
3. 操作系统的类型操作系统可以分为以下类型:- 批处理操作系统:按照一系列预先定义的指令集来运行任务。
- 分时操作系统:多个用户可以同时使用计算机系统。
- 实时操作系统:对任务的响应时间要求非常高,用于控制系统和嵌入式系统。
- 网络操作系统:支持多台计算机之间的通信和资源共享。
- 分布式操作系统:在多台计算机上分布式地管理和调度任务。
第二章1. 进程与线程的区别进程是计算机系统中正在运行的程序实例,而线程是进程内的一个执行单元。
进程拥有独立的地址空间和资源,而线程共享进程的地址空间和资源。
多个线程可以在同一进程内并发执行,从而提高系统的效率和资源利用率。
2. 进程的状态转换进程可以处于以下状态:- 创建状态:进程正在被创建。
- 就绪状态:进程准备好执行,等待分配CPU资源。
- 运行状态:进程占用CPU资源执行。
- 阻塞状态:进程等待某种事件发生。
- 终止状态:进程完成执行或被终止。
3. 进程调度算法操作系统使用进程调度算法来决定哪个进程应该被执行。
常见的调度算法有:- 先来先服务(FCFS)调度算法:按照进程到达的顺序进行调度。
- 最短作业优先(SJF)调度算法:选择运行时间最短的进程进行调度。
计算机科学导论(第4版)习题答案-第3、4章
第3章程序设计语言习题一、选择题1. A2. A3. D4. A5. AB6. C7.D8.C9.D 10. D11.ABCD 12.B 13.A 14.A二、简答题1.简述程序的概念。
答:一个程序就是能够实现特定功能的一组指令序列的集合。
或者程序=算法+数据结构。
2. 简述程序设计语言的发展阶段。
经历了机器语言、汇编语言和高级语言三个发展阶段。
机器语言又称面向机器的语言,是特定的计算机硬件系统所固有的语言,是CPU唯一能够真正不经过翻译而直接识别和执行的语言。
相比而言,其他任何语言编写的程序都必须最终转换成机器语言以后才能在CPU上执行。
由于二进制编码形式的机器指令不便于记忆和使用,人们很快引入了便于记忆、易于阅读和理解、由英文单词或其缩写符号表示的指令,称为汇编指令,又称符号指令或助记符。
利用汇编指令编写得到的程序称为汇编语言程序。
通过引入汇编语言,在一定程度上解决了低级语言程序设计的问题,之后又出现了程序的“可移植性”问题,即程序员编写的源程序如何从一台计算机方便地转移到另一台计算机上执行。
为了解决这个问题,人们引入了高级语言。
高级语言是一种利用意义比较直观的各种“单词”和“公式”,按照一定的“语法规则”来编写程序的语言,又称为程序设计语言或算法语言。
高级语言之所以“高级”,是因为高级语言把很多硬件上复杂费解的概念抽象化了,从而使得程序员可以绕开复杂的计算机硬件的问题、无需了解计算机的指令系统,就能完成程序设计的工作。
3. 简述程序设计过程的一般步骤。
程序设计的过程一般有四个步骤。
(1)分析问题在着手解决问题之前,应该通过分析,充分理解问题,明确原始数据、解题要求、需要输出的数据及形式等。
(2)设计算法算法是解题的过程。
首先集中精力于算法的总体规划,然后逐层降低问题的抽象性,逐步充实细节,直到最终把抽象的问题具体化成可用程序语句表达的算法。
这是一个自上而下、逐步细化的过程。
(3)编码利用程序设计语言表示算法的过程称为编码。
计算机导论课后习题答案
计算机科学导论第七章1应用程序和操作系统的不同点是什么?操作系统是一个程序,有利于应用程序的执行。
2操作系统的组成是什么?内存管理器,进程管理器,设备管理器,文件管理器。
3单道程序和多道程序之间有何区别?单道程序,只有一个程序在内存中。
多道程序,多个程序同时在内存中,但是计算机的资源只分配给正在运行的程序。
4分页调度和分区调度有什么区别?分区调度把内存分为若干个区,把程序整个的放入区中。
分页调度提高了分区调度的效率,在分页调度下,内存被分为大小相等的若干部分,程序也被分为大小相等的部分。
分区调度需要把程序装载到连续的内存上。
分页调度可以吧把程序装载到不连续的内存当中。
5为什么请求分页调度比常规页面调度具有更高的效率?在常规的分页调度中,整个程序必须同时在内存中,以便为程序执行。
但是在请求分页调度中,有部分页面的程序可以在内存中。
这意味着,在请求分页调度中,在给定的时间中,更多的程序可以使用计算机的资源。
6程序和作业之间有何联系?作业和进程之间有何联系?程序和进程之间有何联系?从一个程序被选中执行,到其运行结束并再次成为一个程序的这段过程中,该程序称为作业。
7程序驻留在哪里?作业驻留在哪里?进程驻留在哪里?程序和作业驻留在磁盘上,进程驻留在内存中。
8作业调度器和进程调度器有什么区别?作业调度器负责从作业中创建一个进程和终止一个进程。
进程调度器将一个进程从一个状态转入另一个状态。
9为什么操作系统需要队列?一个操作系统需要使用队列,因为在同一时间可以有许多作业和进程同时活跃。
为了共享所有的资源,队列是必要的,以确保作业和进程都得到他们需要的资源。
31一个计算机装有一个单道程序的操作系统。
如果内存容量为64MB,操作系统需要4MB的内存,那么该计算机执行一个程序可用的最大内存为多少?64-4=60MB33 70/(70+10)=87.5%34一个多道程序的操作系统用一个适当的分配计划把60MB内存分为10MB,12MB,18MB,20MB。
大学计算机(第4版) 课本习题答案
十二五规划教材《大学计算机(第4版)》第1章习题答案1.计算机的发展经历了机械式计算机、(B)式计算机和电子计算机三个阶段。
(A)电子管(B)机电(C)晶体管(D)集成电路2.英国数学家巴贝奇曾设计了一种程序控制的通用(D)。
(A)加法器(B)微机(C)大型计算机(D)分析机3. 1939年,美国爱荷华州立大学研制成功了一台大型通用数字电子计算机(D)。
(A)ENIAC (B)Z3 (C)IBM PC (D)ABC4.爱德华·罗伯茨1975年发明了第一台微机(C)。
(A)Apple II (B)IBM PC (C)牛郎星(D)织女星5.1981年IBM公司推出了第一台(B)位个人计算机IBM PC 5150。
(A)8 (B)16 (C)32 (D)646.我国大陆1985年自行研制成功了第一台PC兼容机(C)0520微机。
(A)联想(B)方正(C)长城(D)银河7.摩尔定律指出,微芯片上集成的晶体管数目每(C)个月翻一番。
(A)6 (B)12 (C)18 (D)248.第四代计算机采用大规模和超大规模(B)作为主要电子元件。
(A)微处理器(B)集成电路(C)存储器(D)晶体管9.计算机朝着大型化和(C)化两个方向发展。
(A)科学(B)商业(C)微机(D)实用10.计算机中最重要的核心部件是(A)。
(A)CPU (B)DRAM (C)CD-ROM (D)CRT11.计算机类型大致可以分为:大型计算机、(A)、嵌入式系统三类。
(A)微机(B)服务器(C)工业PC (D)笔记本微机12.大型集群计算机技术是利用许多台单独的(D)组成一个计算机群。
(A)CPU (B)DRAM (C)PC (D)计算机13.(C)系统是将微机或微机核心部件安装在某个专用设备之内。
(A)大型计算机(B)网络(C)嵌入式(D)服务器14.冯结构计算机包括:输入设备、输出设备、存储器、控制器、(B)五大组成部分。
(A)处理器(B)运算器(C)显示器(D)模拟器15.在冯·诺伊曼计算机模型中,存储器是指(A)单元。
计算机科学导论(第4版)习题答案-第2章计算机体系结构与组织(答案).doc
第2章计算机体系结构与组织习题(答案)一.选择题1. D2. D3. A4. D5. C6. C7. D8. B9. D10. c11. B12. A13. C14. A15. C16. A17. C18. C19. C20. A21. A22. B23. A二.简答题1.试简单叙述计算机采用二进制的原因。
答:计算机只认识二进制编码形式的指令和数据。
因此,包括数字、字符、声音、图形、图像等信息都必须经过某种方式转换成二进制的形式,才能提供给计算机进行识别和处理。
在计算机中采用二进制,是因为物理上实现容易。
rti于二进制只有两个状态o和1, 这正好与物理器件的两种状态相对应,例如电压信号的高与低,门电路的导通与截止等;而十进制电路则需要用十种状态来描述,这将使得电路十分复杂,处理也十分困难。
因此, 采用二进制将使得计算机在物理上实现简单,且具有可靠性高、处理简单、抗干扰能力强等优点。
2.什么是定点数,它分为哪些种类?答:所谓定点数,就是指计算机在运算过程中,数据中小数点的位置固定不变。
其中小数点的位置是由计算机设汁者在机器的结构中指定一个不变的位置,而不一定都必须具有小数点的指示装置。
定点数一般有小数和整数两种表示形式。
定点小数是把小数点固定在数据数值部分的左边,符号位的右边;定点整数则把小数点固定在数据数值部分的右边。
3・简要叙述声音的编码过程。
答:计算机获取声音信息的过程即是声音信号数字化的处理过程。
经过数字化处理后的数字声音信息才能被计算机所识别和处理。
声音被计算机处理的过程主要经过音频信号的采样、量化和编码几个过程。
4 •简述计算机有哪些特点?(1)运算速度快、精度高计算机的字长越长,其精度越高,目前世界上最快的计算机每秒可以运算千万亿次以上。
(2)具有逻辑判断和记忆能力计算机有准确的逻辑判断能力和超强的记忆能力,能够进行各种逻辑判断,并根据判断的结果自动决定下一步应该执行的指令。
(3)高度的自动化和灵活性计算机采取存储程序方式工作,即把编好的程序输入计算机,机器便可依次逐条执行,这就使计算机实现了高度的自动化和灵活性。
计算机导论-课后习题参考答案
第1章计算机概述一、单项选择题A B D B C C D B A D二、简答题1. 根据计算机所采用的电子逻辑元件可将计算机的发展划分为4个发展阶段,每个阶段所采用的元器件分别为:电子管,晶体管,中、小规模集成电路,大规模、超大规模集成电路。
2. 冯·诺依曼计算机主要由4部分组成:运算器、存储器、控制器、输入/输出设备。
3. 衡量计算机性能的指标主要有5个,分别为:字长、主频、存储容量、运算速度和存取周期。
4. 计算机的特点:1)能自动连续、高速度地运算;2)运算速度快;3)运算精度高;4)具有超常的记忆能力;5)具有可靠的逻辑判断能力。
按运算规模,计算机可分为巨型机、大型机、中型机、小型机、微型机和工作站。
第2章计算机中的数据一、单项选择题A ABC B二、计算题1.(1)7 (2)511 (3)40762.(1)766O (2)201O (3)265O3.(1)251O (2)6272O (3)64361363O4.(1)0.1B (2)≈101.01B (3)110011B三、简答题1. 计算机采用二进制表示数据主要有以下4个原因:1)二进制物理上易于实现;2)二进制运算法则简单;3)二进制编码机器可靠性高;4)二进制通用性和逻辑性强。
2. 在计算机中,所有数值型数据都用二进制编码来表示,这串二进制编码称为该数据的机器数,数据原来的表现形式称为“真值”。
一个进制中数码的个数称为“基数”。
3. 带符号整数常用的编码形式有3种,分别为原码、反码和补码。
1)原码表示法为:最高位是符号位(0表示正,1表示负),其余各位表示数的绝对值大小。
2)反码表示法为:最高位是符号位(0表示正,1表示负),正数的反码与原码相同,负数的反码是在其原码的基础上,除符号位外各位求反。
3)补码表示法为:最高位是符号位(0表示正,1表示负),正数的补码与原码相同,负数的补码是在该数反码的最低位加1。
4. 要表示文本,必须先对每个可能出现的字符进行表示。
计算机科学导论课本答案(完整版)
第1章概述习题(答案)一.选择题1. D2. B3. CD4. C5. ABC6. A7. B8. B9. ABCD 10. ABCDE二.简答题1.什么是计算机系统?计算机系统是一种能够按照事先存储的程序,自动、高速地对数据进行输入、处理、输出和存储的系统,由计算机硬件系统和计算机软件系统两大部分组成。
2.请解释冯•诺依曼所提出的“存储程序”概念。
把程序和数据都以二进制的形式统一存放在存储器中,由机器自动执行。
不同的程序解决不同的问题,实现了计算机通用计算的功能。
3.控制器的主要功能是什么?控制器基本功能就是从内存中取出指令和执行指令,即控制器按程序计数器指出的指令地址从内存中取出该指令进行译码,然后根据该指令功能向有关部件发出控制命令,执行该指令。
另外,控制器在工作过程中,还要接受各部件反馈回来的信息。
4.简述CPU和主机的概念。
通常把运算器、控制器做在一个大规模集成电路块上称为中央处理器,又称CPU(Central Processing Unit)。
通常把内存储器、运算器和控制器合称为计算机主机,也可以说主机是由CPU与内存储器组成的,而主机以外的装置称为外部设备,外部设备包括输入/输出设备,外存储器等。
5.什么是计算机软件?计算机软件的分类有哪些?软件是指用来指挥计算机运行的各种程序的总和以及开发、使用和维护这些程序所需的技术文档。
计算机软件系统分为系统软件和应用软件。
计算机系统软件由操作系统、语言处理系统、以及各种软件工具等组成,指挥、控制计算机硬件系统按照预定的程序运行、工作,从而达到预定的目标。
应用软件是用户利用计算机软、硬件资源为解决各类应用问题而编写的软件,包括用户程序及其说明性文件资料。
6.计算机有哪些主要的特点?(1)运算速度快、精度高计算机的字长越长,其精度越高,现在世界上最快的计算机每秒可以运算几十万亿次以上。
一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的。
计算机科学导论(第4版)习题答案-第1、2章
第1章概述习题(答案)一.选择题1. D2.C3.D4.B5.A6. B7. CD8.C9.A 10. ABC11.A 12.C 13.B 14.B 15. A16.A 17.C 18.A 19. ABC 20.B21.ABCD 22.C 23. ABCDE二.简答题1.举例说明石子计数的过程早上放10头牛出去,就拿10颗小石子表示,晚上牛回来清数时,就以小石子的数量来逐个进行清点,看看是否一致。
2.简述计算机的发展阶段计算机的出现是20世纪最辉煌的成就之一,按照采用的电子器件划分,计算机大致经历了四个阶段。
1. 第一代计算机(1946—1957)其主要特征是逻辑器件使用了电子管,用穿孔卡片机作为数据和指令的输入设备,用磁鼓或磁带作为外存储器,使用机器语言编程。
第一台计算机需要工作在有空调的房间里,如果希望它处理什么事情,需要把线路重新连接接,把成千上万的线重新焊接。
1949年发明了可以存储程序的计算机,这些计算机使用机器语言编程,可存储信息和自动处理信息,存储和处理信息的方法开始发生革命性的变化。
第一代计算机体积大、运算速度低、存储容量小、可靠性低。
几乎没有什么软件配置,主要用于科学计算。
尽管如此,第一代计算机却奠定了计算机的技术基础,如二进制、自动计算及程序设计等,对以后计算机的发展产生了深远的影响。
其代表机型有:ENIAC、IBM650(小型机)、IBM709(大型机)等。
2. 第二代计算机(1958—1964)其主要特征是使用晶体管代替了电子管,内存储器采用了磁芯体,引入了变址寄存器和浮点运算部件,利用I/O处理机提高了输入输出能力。
这不仅使得计算机的体积缩小了很多,同时增加了机器的稳定性并提高了运算速度,而且计算机的功耗减小,价格降低。
在软件方面配置了子程序库和批处理管理程序,并且推出了Fortran、COBOL、ALGOL等高级程序设计语言及相应的编译程序,降低了程序设计的复杂性。
除应用于科学计算外,它还开始应用在数据处理和工业控制等方面。
计算机科学导论(第4版)习题答案-第7、8章
第7章软件工程习题(答案)一、选择题1. D2. B3. C4. B5. A6. C7. A8. D9.C 10. B11. C 12.C 13.D二、简答题1.什么叫软件危机?答:随着计算机应用的普及和深化,计算机软件的数量、规模、复杂程度和开发所需的人力、物力等都在急剧增加,计算机发展初期个人编写小程序的传统方法,已不再适合现代大型软件的开发,用传统方法开发出来的许多大型软件甚至无法投入运行。
同时,由于计算机应用领域和硬件技术得到丁飞速发展,软件的生产速度、质量和规模远远适应不了对软件的需求,造成大量人力、物力、财力的浪费,在软件开发和维护过程中出现了巨大的困难。
计算机领域把大型软件开发和维护过程中遇到的一系列严重问题称为“软件危机”(Software Crisis)。
2.软件危机的表现形式是什么?答:软件危机的表现形式:(1) 软件的质量难以保证开发的软件可靠性差。
由于在开发过程中,没有确保软件质量的体系和措施,在软件测试时,又没有严格的、充分的、完全的测试,提交给用户的软件质量差,在运行中暴露出大量的问题。
这种不可靠的软件,轻者会影响系统正常工作,重者会发生事故,造成生命财产的重大损失。
(2) 软件开发成本和开发进度难以控制经费预算经常突破,完成时间一再拖延。
由于缺乏软件开发的经验和软件开发数据的积累,使得开发工作的计算很难制定。
主观盲目制定的计算,执行起来和实际情况有很大差距,使得开发经费一再突破。
由于对工作量和开发难度估计不足,进度计划无法按时完成,开发时间一再拖延。
(3) 软件的维护非常困难开发的软件可维护性差。
开发过程没有统一的、公认的规范,软件开发人员按各自的风格工作,各行其事。
开发过程无完整、规范的文档,发现问题后进行杂乱无章的修改。
程序结构不好,运行进发现错误也很难修改,导致维护性差。
(4) 用户对“已完成”的软件系统不满意开发的软件不能满足用户要求。
开发初期对用户的要求了解不够明确,未能得到明确表达。
计算机导论课后习题及参考答案
计算机导论课后习题第一章绪论一、单项选择题1.世界上第一台电子计算机ENIAC诞生于()。
A.1941年B.1946年C.1949年D.1950年2.世界上首次提出存储程序计算机体系结构的是()。
A.莫奇莱B.艾仑·图灵C.乔治·布尔D.冯·诺依曼3.世界上第一台电子数字计算机采用的主要逻辑部件是()。
A.电子管B.晶体管C.继电器D.光电管4.物理器件采用晶体管的计算机被称为()。
A.第一代计算机B.第二代计算机C.第三代计算机D.第四代计算机5.下列叙述正确的是()。
A.世界上第一台电子计算机ENIAC,首次实现了“存储程序”方案B.按照计算机的规模,人们把计算机的发展过程分为四个时代C.微型计算机最早出现于第三代计算机中D.冯·诺依曼提出的计算机体系结构奠定了现代计算机结构的理论基础6.计算机最早的应用领域是()。
A.科学计算B.数据处理C.过程控制D.CAD/CAM/CIMS7.计算机辅助设计的简称是( )。
A.CAD B.CAM C.CAI D.CBE8.当前的计算机一般称为第四代计算机,它所采用的逻辑元件是()。
A.晶体管B.集成电路C.电子管D.大规模集成电路9.按照计算机用途,可将计算机分为()。
A.通用计算机和个人计算机B.数字计算机和模拟计算机C.数字计算机和混合计算机D.通用计算机和专用计算机10.计算机中所有信息的存储都采用()。
A.十进制B.二进制C.八进制D.十六进制11.计算机最主要的工作特点是()。
A.存储程序与自动控制B.高速度与高精度C.可靠性与可用性D.有记忆能力12.计算机硬件的组成部分主要包括运算器、存储器、输入设备、输出设备和()。
A.控制器B.显示器C.磁盘驱动器D.鼠标器13.客机、火车票系统属于()方面的计算机应用。
A.科学计算B.数据处理C.过程控制D.人工智能14.个人计算机属于()。
A.小巨型机B.小型计算机C.微型计算机D.中型计算机15.计算机之所以能实现自动连续执行,是由于计算机采用了()工作原理。
计算机科学导论第4、5章作业(供参考)
计算机科学导论第4、5章作业(供参考)1. 求八位的二进制数 + 0110101的原码、反码和补码;八位的二进制数 - 0110101的原码、反码和补码。
+ 0110101的原码=00110101,反码=00110101,补码=00110101- 0110101的原码=10110101,反码=11001010,补码=110010112. 设A=1,B=1,C=0,逻辑表达式A·B + B·C + A·B·C 的值是多少?A·B + B·C + A·B·C=1+0+0=13. 用三种基本逻辑运算来表示"异或"运算,给出逻辑表达式和真值表。
=+逻辑表达式:F AB AB真值表4. 计算机为什么要采用补码实现数的运算?因为计算机的处理器是电路组成的,电路只有加法器,只能做加法,要让计算机做减法运算,就只能补码,减去一个数等于加上它的补码,于是减法就转换为计算机能执行的加法了。
5. 什么是程序?什么是程序设计?程序是如何执行的?程序是可以连续执行,并能够完成一定任务的一条条指令的集合。
它是人与机器之间进行交流的语言。
程序设计是指设计、编制、调试程序的方法和过程。
它是目标明确的智力活动。
它分为1、功能分析2、编写代码 3、编译调试 4、生成执行文件+文档、发行等步骤。
6. 指令执行过程中,"自动取下一条指令"对计算机有是么实际意义?7. 设 P 表示王华的成绩很好,Q 表示王华打得一手好球,试用逻辑表达式表示"王华的成绩很好且打得一手好球"。
如果要表示"王华的成绩很好但球技不佳"呢?王华的成绩很好且打得一手好球:PQ王华的成绩很好但球技不佳:PQ9. 试用门电路符号表示出逻辑函数 Q = ( A + B ) · C或门 与门10.采用补码形式计算 12-16-1812的二进制为00001100,-16为10010000,其补码为11110000,18为10010010,其补码为11101110。
计算机导论(第3版)-4-6章参考答案
5、简述计算机网络的功能。 答案: (1)资源共享;(2)数据通信;(3)协同工作。并对每种功能作简要说明。
10、简要说明计算机网络的分类。 答案: 根据覆盖范围分为(1)个人区域网;(2)局域网;(3)城域网;(4)广域网;(5)互联网。 根据传输技术分为(1)广播式网络;(2)点对点式网络。 根据传输介质分为(1)有线网;(2)无线网。 并对每种分类作简要说明。
11、简要说明 TCP/IP 模型中各层的作用。 答案:(1)主机-网络层:负责将相邻高层提交的 IP 报文封装成适合在物理网络上传输的帧格式并 传输,或将从物理网络接收到的帧解封,从中取出 IP 报文并提交给相邻高层。 (2)互联层:负责将报文独立地从源主机传输到目的主机。 (3)传输层:负责在源主机和目的主机的应用程序间提供端到端的数据传输服务,使主机上的对等 实体可以进行会话。 (4)应用层:提供用户所需要的各种服务。
网格计算 答案: 网格计算的基本含义是通过互联网把分散在不同地理位置、不同类型的物理与逻辑资源以开 放和标准的方式组织起来,通过资源共享和动态协调,来解决不同领域的复杂问题的分布式和并行 计算。
云计算 答案: 云计算的基本含义是对于单位用户或个人用户来说,把原本在本地计算机完成的数据存储和 数据处理工作更多地通过互联网上的存储与计算资源来进行,有专业的网络公司提供数据存储和数 据处理平台。
7、对比说明常用的计算机网络传输介质。 答案: (1)双绞线电缆:双绞线由螺旋状相互绞合在一起的两根绝缘铜线组成,将多对双绞线封装 于绝缘套里做成双绞线电缆。双绞线广泛地应用于局域网中。 (2)同轴电缆:由同轴的内外两个导体组成,内导体是一根金属线,外导体(也称外屏蔽层)是一 根圆柱形的套管,一般是由细金属线编织成的网状结构,内外导体之间有绝缘层。曾应用于局域网。 (3)光缆:光纤是能传导光波的石英玻璃纤维,光纤外加保护层构成光缆。多用于城域网、广域网、 互联网及局域网的主干传输。
[计算机导论——基于计算思维视角(第4版)][王玉龙,等] 第6章 计算机系统的软件
第6章 计算机系统的软件
6.1.4 计算机系统的组成
上一页 下一页 返 回
第6章 计算机系统的软件
计算机系统的体系结构
上一页 下一页 返 回
第6章 计算机系统的软件
教学小结
软件概念; 软件分类; 计算机系统的组成;
上一页 返 回
第3章 计算机系统的软件
6.2 程序设计语言
6.2.1 程序设计语言发展概述
第一代 语言
第二代 语言
第三代 语言
第四代 语言
第五代 语言
▪计算机可以直接识别和执行,效率高 ▪指令的二进制代码难记住,人工编写 机器语言很繁琐,易出错 ▪不同的计算机有不同的机器语言,因 而通用性很差。
▪用高级语言编写的源程序必须通过“翻译” ▪智能化语言,如
生成目标程序,才能被计算机所执行。
PROLOG
常用软件
一类日常办公的软件,如Office
办公 软件
在CPU一级提供多媒体指令,实
现对多媒体的直接支持。
多媒体
处理
可以帮助操作系统更有效地完成系 统的管理和维护。如反病毒软件
系统工 具软件
基于网络环境和Internet 环境的应用软 件,如Web服务器、FTP
Internet 工具软件
上一页 下一页 返 回
上一页 下一页 返 回
第6章 计算机系统的软件
6.2.2 程序设计基础
4.表达式和赋值语句
最基本的命令语句是赋值语句。它的一般形式为
<变量> <赋值运算符> <表达式>
高级语言中的表达式内容丰富,通常有以下三类。
算术表达式。所谓“算术表达式”即一般数学计算式 关系表达式。其功能是比较两个数据的大小,其结果为逻辑值,即“真 ”或“假”。 逻辑表达式。逻辑表达式的结果是一个逻辑值,即“真”或“假”。
计算机科学导论(第4版)习题答案-第1、2章
第1章概述习题(答案)一.选择题1. D2.C3.D4.B5.A6. B7. CD8.C9.A 10. ABC11.A 12.C 13.B 14.B 15. A16.A 17.C 18.A 19. ABC 20.B21.ABCD 22.C 23. ABCDE二.简答题1.举例说明石子计数的过程早上放10头牛出去,就拿10颗小石子表示,晚上牛回来清数时,就以小石子的数量来逐个进行清点,看看是否一致。
2.简述计算机的发展阶段计算机的出现是20世纪最辉煌的成就之一,按照采用的电子器件划分,计算机大致经历了四个阶段。
1. 第一代计算机(1946—1957)其主要特征是逻辑器件使用了电子管,用穿孔卡片机作为数据和指令的输入设备,用磁鼓或磁带作为外存储器,使用机器语言编程。
第一台计算机需要工作在有空调的房间里,如果希望它处理什么事情,需要把线路重新连接接,把成千上万的线重新焊接。
1949年发明了可以存储程序的计算机,这些计算机使用机器语言编程,可存储信息和自动处理信息,存储和处理信息的方法开始发生革命性的变化。
第一代计算机体积大、运算速度低、存储容量小、可靠性低。
几乎没有什么软件配置,主要用于科学计算。
尽管如此,第一代计算机却奠定了计算机的技术基础,如二进制、自动计算及程序设计等,对以后计算机的发展产生了深远的影响。
其代表机型有:ENIAC、IBM650(小型机)、IBM709(大型机)等。
2. 第二代计算机(1958—1964)其主要特征是使用晶体管代替了电子管,内存储器采用了磁芯体,引入了变址寄存器和浮点运算部件,利用I/O处理机提高了输入输出能力。
这不仅使得计算机的体积缩小了很多,同时增加了机器的稳定性并提高了运算速度,而且计算机的功耗减小,价格降低。
在软件方面配置了子程序库和批处理管理程序,并且推出了Fortran、COBOL、ALGOL等高级程序设计语言及相应的编译程序,降低了程序设计的复杂性。
除应用于科学计算外,它还开始应用在数据处理和工业控制等方面。
《计算机科学导论》第六章答案(包含讨论题)
一、选择题
1——5 DABDB 6——10 CADAB 11——15 BD CCAC
二、简答题
1、DBMS通常由数据定义语言及其翻译处理程序,数据操纵语言及其编译(或解释)程序,数据库运行控制程序,实用程序四部分组成。
2、3级模式结构是数据库管理系统内部的结构
4、事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全都不做,是一个不可分割的工作单位。所有的事务都具有原子性、一致性、隔离性、持续性,或简称ACID特性。
原子性:事务的所有操作必须作为一个整体的处理单位,要么全做,要么全都不做,不
可以分割。
一致性:数据必须保持一致性状态。即事务的执行只能从一个一致性状态转变到另一个
看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。
(3)内模式。内模式是数据物理结构和存储结构的描述,是数据在数据库内部的表示方
法。
3、关系模型中,定义了三种完整性约束条件:实体完整性、参照完整性、用户自定义的完整性。实体完整性规定一个关系的主码(包括所有的主属性)不能为空;参照完整性规定外码必须是另一个关系的主码的有效取值,或为空;用户定义的完整性是根据应用需求而要求数据必须满足的语义的要求,如某一属性的取值范围。
一致性状态。
隔离性:系统内多个事务的执行是相互独立的,互不相扰。
持续性:一个事务一旦执行成功,对于数据库中数据的改变是永久的。
5、数据库完整性控制是指保证数据库中数据的正确性、有效性、相容性,防止错误的数据进入数据库。正确性是指数据的合法性;有效性是指数据是否属于所定义的有效范围;相容性是指表示同一个事实的多个数据应该相同。
(1)模式。模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所
计算机导论第四版课本习题答案
计算机导论第四版课本习题答案由于我无法提供特定书籍的习题答案,但我可以提供一些通用的指导和建议,帮助你解决计算机导论课本中的习题。
以下是一些可能的习题类型和解题策略:1. 概念理解题:这类题目要求你解释计算机科学中的基本概念。
解题时,首先要确保你理解题目所问的概念,然后给出清晰、准确的解释。
2. 算法分析题:这类题目要求你分析给定算法的时间复杂度或空间复杂度。
解题时,要熟悉大O表示法,并能够识别算法中的循环、递归等结构。
3. 编程题:这类题目要求你编写代码来解决特定问题。
解题时,要确保你理解问题的需求,选择合适的数据结构和算法,然后编写清晰、高效的代码。
4. 系统设计题:这类题目要求你设计一个计算机系统或组件。
解题时,要考虑系统的可扩展性、可靠性和性能。
5. 案例研究题:这类题目要求你分析一个真实世界的问题,并提出解决方案。
解题时,要能够将理论知识应用到实际情况中。
6. 实验题:这类题目要求你通过实验来验证某个概念或理论。
解题时,要熟悉实验工具和方法,能够记录和分析实验结果。
7. 批判性思维题:这类题目要求你评估不同的观点或解决方案,并提出自己的见解。
解题时,要能够批判性地思考问题,并提供合理的论据。
8. 研究题:这类题目要求你进行文献研究,以了解某个领域的最新发展。
解题时,要能够找到可靠的资源,并能够总结和解释关键点。
解题策略:- 仔细阅读题目:确保你完全理解题目的要求。
- 分解问题:将复杂问题分解成更小的部分,逐一解决。
- 使用图示:对于涉及数据结构或算法的问题,使用图表可以帮助你更好地理解和解释问题。
- 逐步检查:在解决问题的过程中,不断检查你的工作,确保每一步都是正确的。
- 实践编程:对于编程题,多写代码并运行测试,以确保你的解决方案是有效的。
- 复习基础:如果你在某个概念上遇到困难,回顾课本或笔记,确保你的基础知识是扎实的。
最后,请记住,解决习题的目的是为了加深对计算机科学概念的理解,而不仅仅是为了得到正确答案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第5章算法与复杂性习题一、选择题1. B2. D3. C4. A5. B6. B7. D8.B9.C 10.A11.A 12.C 13.A 14.A二、简答题1.什么是算法,算法的特性有哪些?答:“算法(Algorithm)是一组明确的、可以执行的步骤的有序集合,它在有限的时间内终止并产生结果”。
算法的特性有:(1) 有穷性(可终止性):一个算法必须在有限个操作步骤内以及合理的有限时间内执行完成。
(2) 确定性:算法中的每一个操作步骤都必须有明确的含义,不允许存在二义性。
(3) 有效性(可执行性):算法中描述的操作步骤都是可执行的,并能最终得到确定的结果。
(4) 输入及输出:一个算法应该有零个或多个输入数据、有1个或多个输出数据。
2.什么是算法的时间复杂度和空间复杂度,如何表示?答:时间复杂度是与求解问题规模、算法输入相关的函数,该函数表示算法运行所花费的时间。
记为,T(n),其中,n代表求解问题的规模。
算法的空间复杂度(Space complexity)度量算法的空间复杂性、即执行算法的程序在计算机中运行所占用空间的大小。
简单讲,空间复杂度也是与求解问题规模、算法输入相关的函数。
记为,S(n),其中,n代表求解问题的规模。
时间复杂度和空间复杂度同样,引入符号“O”来表示T(n)、S(n)与求解问题规模n之间的数量级关系。
3.用图示法表示语言处理的过程。
答:语言处理的过程如图所示:4.简述算法设计的策略。
答:作为实现计算机程序实现时解决问题的方法,算法研究的内容是解决问题的方法,而不是计算机程序的本身。
一个优秀的算法可以运行在比较慢的计算机上,但一个劣质的算法在一台性能很强的计算机上也不一定能满足应用的需要,因此,在计算机程序设计中,算法设计往往处于核心地位。
要想充分理解算法并有效地应用于实际问题,关键是对算法的分析。
通常可以利用实验对比分析、数学方法来分析算法。
实验对比分析很简单,两个算法相互比较,它们都能解决同一问题,在相同环境下,一般就会认为哪个算法的速度快这个算法性能更好。
在算法设计中,通常采用能近似表达性能的方法来展示某个算法的性能指标。
例如,计算机对2n和22n n 的响应速度,当n 比较大的时,没什么区别,便可直接认为后者算法的复杂度为2n 。
基于算法复杂度简化表达的思想基础上,通常会对算法进行最坏情况分析和平均情况分析。
对于一个给定的算法,如果能保证它的最坏情况下的性能依然很好,但是在某些情况下,程序的最坏情况算法的运行时间和实际情况的运行时间相差很大,在实际应用中几乎不会碰到最坏情况下的输入,那么此时进行最坏情况分析显得有些画蛇添足,特别是分析最坏情况算法会花费大量精力的时候。
算法的平均情况分析可以帮助估计程序的性能,作为算法分析的基本指标之一,但是平均情况和实际情况仍然会有相差很大的时候,这时便可以使用随机法来尽量模拟现实中的情况,这样可以得到在严格的概率意义上的预测运行时间。
另外,对于一个经典算法,没有必要再去对该算法进行改进,研究它的上界和下界,只需要了解该算法的特性,然后在合适的时候使用它。
5.简述并行算法研究的内容。
答:(1) 并行计算模型并行算法作为一门学科,首先研究的是并行计算模型。
并行计算模型是算法设计者与体系结构研究者之间的一个桥梁,是并行算法设计和分析的基础。
它屏蔽了并行机之间的差异,从并行机中抽取若干个能反映计算特性的可计算或可测量的参数,并按照模型所定义的计算行为构造成本函数,以此进行算法的复杂度分析。
并行计算模型的第一代是共享存储模型,如SIMD-SM和MIMD-SM的一些计算模型,模型参数主要是CPU的单位计算时间,这样科学家可以忽略一些细节,集中精力设计算法。
第二代是分布存储模型。
在这个阶段,人们逐渐意识到对并行计算机性能带来影响的不仅仅是CPU,还有通信。
因此如何把不同的通信性能抽象成模型参数,是这个阶段的研究重点。
第三代是分布共享存储模型,也是我们目前研究所处的阶段。
随着网络技术的发展,通信延迟固然还有影响,但对并行带来的影响不再像当年那样重要,注重计算系统的多层次存储特性的影响。
(2) 设计技术并行算法研究的第二部分是并行算法的设计技术。
虽然并行算法研究还不是太成熟,但并行算法的设计依然是有章可循的,例如划分法、分治法、平衡树法、倍增法/指针跳跃法、流水线法破对称法等都是常用的设计并行算法的方法。
另外人们还可以根据问题的特性来选择适合的设计方法。
以上是并行算法的常规研究内容。
随着时代的进步,我们需要不断调整研究方向。
目前并行算法研究的新走向是并行算法研究内容不断拓宽,并行计算被纳入研究范畴;与广大用户领域结合,注重应用,强调走到用户中去,为用户解决问题;重视新的、非常规计算模式,如神经计算、量子计算等,这些模式能够解决某类特定问题,有其自身的优越性。
三、讨论题1.算法是程序设计的基础,没有好的算法,就不可能写出好的程序,但是,学习算法涉及到很多交叉学科的知识,怎样才能把这些知识融会贯通,写出优秀的程序?答案略。
2.算法设计非常复杂,如何才能设计优秀的算法?答案略。
第6章信息管理习题(答案)一.单项选择题1.C 2.A 3.D 4.C 5.B6.B 7.D 8.B 9.C 10.B11.D12.A 13.C 14.A 15.C16.A 17.A 18.C二.简答题1.简要说明一个DBMS的组成部分。
答:DBMS通常由四部分组成,也是DBMS要完成的功能:(1)数据定义语言DDL及其翻译处理程序:定义数据库中的数据对象。
(2)数据操纵语言DML及其编译(或解释)程序:实现对数据库的查询、插入、删除、修改等操作。
(3)数据库运行控制程序:实现对数据库的统一管理和控制,从而保证数据的安全性、完整性,并对数据并发访问进行控制,完成数据库的故障恢复等功能。
(4)实用程序:完成数据库的建立与维护、数据格式的转换与通信、数据库的转储等功能。
2.解释数据库的三级模式结构。
答:数据库系统通常采用三级模式结构,它也是数据库管理系统内部的系统结构。
(1) 模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
模式层中定义了数据模型和模式图表,DBMS的主要功能都在这层。
一个数据库系统中只有一个模式。
(2) 外模式也称子模式或用户模式,是数据库用户可见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,通常与某一应用需求相对应。
这层将来自模式层的数据转化为用户所熟悉的格式和视图。
外模式通常可以有任意多个。
(3) 内模式是数据物理结构和存储结构的描述,是数据在数据库内部的表示方法。
内模式层决定数据存储在存储设备中的实际位置,并处理数据的存取方法及数据在设备间的数据传输。
数据库系统的内模式也只有一个。
3.简述数据管理技术发展的三个阶段。
(1)人工管理阶段20世纪50年代中期以前,计算机主要用于科学计算。
当时的硬件状况是只有纸带、卡片和磁带,没有磁盘等直接存取的存储设备;软件状况是没有操作系统、没有管理数据的软件,数据处理方式是批处理。
(2)文件系统阶段20世纪50年代后期到60年代中期,随着硬、软件技术的发展,硬件方面已有了磁盘、磁鼓等直接存取存储设备;软件方面已经有了专门的数据管理软件——文件系统;处理方式上不仅有了批处理,而且能够联机实时处理。
(3)数据库系统阶段20世纪60年代后期以来,硬件方面已有了大容量磁盘。
软件方面,为编制和维护系统软件,应用程序所需成本相对增加,有了联机实时处理、分布式处理的应用需求。
如果仍然用文件系统来管理数据,已经不能适应应用的发展需求。
于是为解决多用户、多任务共享数据的要求,实现大量的联机实时数据处理,数据库技术便应运而生,出现了统一管理数据的专门的软件系统——DBMS。
4.简述常用的三种数据模型及其特点。
(1)网状模型网状模型在层次模型的基础上,允许结点无父结点,或者有多个父结点,数据之间的联系通过地址指针实现。
网状模型与层次模型比较,具有更好的存取方式和灵活性,更利于实现实体间多对多的联系,但是,网状模型比层次模型要复杂得多,不易掌握,而且不易实现数据库结构的独立性。
(2)层次模型层次模型的基本思想就是用树型结构来表示各类实体及实体之间的联系,非常适合表达一对一、一对多的联系,但多对多的联系不能用层次模型表示。
层次模型中,数据之间的联系通过地址指针实现。
(3)关系模型与层次模型和网状模型用地址指针实现数据之间的联系不同,关系模型以关系代数为基础,实体间通过公共属性实现联系,与数据的物理结构无关。
目前,关系模型已经成为最重要的一种数据模型。
5.简述关系数据库的完整性。
答:关系模型中,定义了三种完整性约束条件:实体完整性、参照完整性、用户自定义的完整性。
实体完整性规定一个关系的主码(包括所有的主属性)不能为空;参照完整性规定外码必须是另一个关系的主码的有效取值,或为空;用户定义的完整性是根据应用需求而要求数据必须满足的语义的要求,如某一属性的取值范围。
6.简述SQL的特点。
(1) 功能统一。
SQL是一个集数据查询、数据操纵、数据定义、数据控制于一体的关系数据库语言。
SQL不仅功能统一,语言风格也统一,便于学习使用。
(2) 非过程性语言。
用户只需说明做什么,而不需要说明怎么做,不必关心SQL命令的内部执行过程,也不必知道数据如何存储。
(3) 面向集合的操作方式。
SQL是关系数据库的结构化查询语言,SQL语言中的操作对象与执行结果仍然是集合或关系。
(4) SQL提供了两种灵活的使用方式。
SQL既可以直接在联机终端或客户端使用SQL 命令实施对数据库的操作,还可以按照同样的格式,嵌入到其他语言中使用,弥补了SQL 不能生成菜单、报表、格式化输出的缺陷,开发人员可以利用其他的开发语言来生成界面,从而开发出界面友好、功能强大、实用性强的数据库应用系统。
(5) SQL简单、易学。
SQL语言的语法简单、语句少,非常容易掌握。
7.什么是事务,事务的特征有哪些?答:事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全都不做,是一个不可分割的工作单位。
所有的事务都具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durability),或简称ACID特性。
原子性:事务的所有操作必须作为一个整体的处理单位,要么全做,要么全都不做,不可以分割。
一致性:数据必须保持一致性状态。
即事务的执行只能从一个一致性状态转变到另一个一致性状态。
隔离性:系统内多个事务的执行是相互独立的,互不相扰。
持续性:一个事务一旦执行成功,对于数据库中数据的改变是永久的。
8.什么是数据库完整性控制,其含义是什么?答:数据库完整性控制是指保证数据库中数据的正确性、有效性、相容性,防止错误的数据进入数据库。