《大学计算机基础课课本计算机科学导论课后答案.docx》由会员分享,可在线阅读,更多相关《大学计算机基础课课本计算机科学导论课后答案.docx(15页珍藏版)》请在三一办公上搜索。
1、大学计算机基础课课本计算机科学导论课后答案以下答案多方资料做的,仅供参考。 第一章 绪论 1. 和计算机相关的问题. 2. 冯.诺依曼模型. 3. 第一点:尽管这个模型能够体现现代计算机的功能,但是它的定义太广泛. 第二点:而且,并没有清楚地说明基于这个模型的机器能够完成的操作类型和数量. 4. 输入数据和程序. 5. 存储器,算术逻辑单元,控制单元和输入/输出单元. 6. 存储器是用来存储的区域,在计算机处理过程中用来存储数据和程序. 7. 算术逻辑单元是进行计算和逻辑判断的地方. 8. 控制单元是用来对存储器,算术逻辑单元,输入/输出单元等子系统的操作进行控制的单元. 9. 输入子系统负责
2、从计算机外部接受输入数据和程序;输出子系统负责将计算机的处理结果输出到计算机外部. 10. 早期的计算机的存储器存储数据.而完成某一任务的程序是通过操作一系列的开关或改变配线系统来实现的. 而基于冯.诺依曼模型的计算机的存储器主要用来存储程序及其相应的数据. 11.编程在早期的计算机中体现为对系列开关的开闭和配线系统的改变. 而冯.诺依曼模型通过详细的第一计算机可以使用的不同指令集,从而使编程变得相对简单.程序员通过组合这些不同的指令来创建任意数量的程序. 12. B 13. C 14. A 15. B 16. D 从而改变了编程的概念. 17. C 18. D 19. C 20. A 21.
3、 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. 位数
4、分配是指用以表示整数的二进制位数. 8. 因为8位的存储单元中,范围最大的无符号整数类型的范围是0255,256超出其存储范围,在计算机中不能存储. 9. 计数和寻址. 10. 溢出. 11. 一样. 12. 符号加绝对值:在N位的存储单元中,将该负数忽略其负号,然后转换成N-1位的二进制数,不足位数左边补0.最后在最左边加1. 二进制反码:在N位的存储单元中,将该负数忽略其负号,然后转换成N位的二进制数,不足位数左边补0.最后,将其每一位换成它的反码形式.(0-1,1-0). 反. 13. 0在符号加绝对值中的形式有N个0,表+0;最左边为1其右边带上N-1个0,表-0. 在二进制反码中的形
5、式有N个0,表+0;N个1,表-0. 在二进制补码中的形式有N个0. 二进制补码: 在N位的存储单元中,将该负数忽略其负号,然后转换成N位的二进制数,不足位数左边补0.最后,将最右边的所有0和首次出现的1保持不变,其余位取14. 符号加绝对值可以表示的数的范围:-(2(N-1)-1) (2(N-1)-1). 二进制反码可以表示的数的范围: -(2(N-1)-1) (2(N-1)-1). 二进制补码可以表示的数的范围: -2(N-1) (2(N-1)-1). 15. 最左边一位在符号加绝对值中表示数的正负性.在二进制反码中表示数的正负性.在二进制补码中表示数的正负性. 16.19.* 20. C
6、 21. A 22. D 23. D 24. B 25. C 26. D 27. D 28. C 29. D 30. D 31. C 32. B 33. D 34. 46* 47.例子: 23. 23/2=111, 11/2=51, 5/2=21, 2/2=10, 剩1. 即:10111,所以其八位无符号整数即为00010111. 48.例子: 41. 41/2=201, 20/2=100, 10/2=50, 5/2=21, 2/2=10, 剩1. 即:101001,所以其16位无符号整数为0000000000101001. 49. 例子:-101, 去其负号. 101/2=501, 50/2
7、=250, 25/2=121, 12/2=60, 6/2=30, 3/2=11, 剩1. 即:1100101. 其8位符号加绝对值即补足7位,再在最左边加1表负数. 即:11100101. 50. 同上. 51. 例子:-110, 去其负号, 110/2=550, 55/2=271, 27/2=131, 13/2=61, 6/2=30, 3/2=11, 剩1. 即:1101110. 其16位无符号整数位:0000000001101110,二进制反码整数即为: 1111111110010001. 以下略.方法由上面依此类推. 第四章 位运算 略 第五章 计算机组成 39.A 40.B 41.A
8、42.D 43.D 44.D 45.C 46.A 47.B 48.A 49.(234) 50.D 51.A 52.A 53.C 54.B 55.D 56.D 57.A 58.B 59.C 60.B 61.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. 模型是标准化组织制定的用于网络设计的指南;协议是用于控制网络或交互式网络种不同设备间交互的一系列规则。举例:OSI模型,TCPIP协议。 2. OSI模型有7层结构:7,应用层,6.表示层,5.会话层,4.
9、传输层,3.网络层,2.数据连接层,1.物理层 3. 4. 物理层和数据连接层,网络层,传输层,应用层 物理层负责在物理介质中传输位流;数据连接层将位组成叫做帧的逻辑单元;网络层负责原站点和目的站点之间包的传送;传输层负责整个消息的源至目的地的传送;会话层用来控制用户间的会话;表示层关心的是两个系统间所交换的信息的语法和语义,它基于不同的系统使用不同德编码这个事实;应用层使得用户都可以访问软件。 5. 点对点传送:当一个站点接收到帧的地址,他会将源地址该为自己的地址,目的地址改为下一个站点的地址;源至目的地的传送:是独立包的端到端的传送,如果包丢失,他必须重发,确保它被正确的目的端得传输层。
10、6. 帧包含网络层的信息,数据链接路层通过加入报头和报尾来接受或中间定义帧。消息是由一个或多个包组成的。 7. 8. 9. 会话层防止系统或网络出错加入了同步点的结点,已进行备份传输。 总线拓扑架构,星型拓扑结构,环形拓扑结构。 中继器:是使数据再生的电子设备,他延伸了网络的物理长度;网桥:是一个通信控制器,他可以吧长总线变为一些较小的段,每一个小段都是独立的通信段;路由器:是连接局域网,城域网,广域网的设备;网关:是充当协议转换器的连接设备 10. UDP:用户数据报协议,是其中比较简单的协议,他是一个端到端的协议,传输时只提供端到端的基本传输需要;TCP:传输层控制协议,为应用程序提供了完
11、整的传输层服务,是可靠的传输协议。TCP将消息分成按顺序标记的连续的段,如果一个段丢失,则从发此段。段在接收端如果失序,可在序列标记机制的帮组下排序。 11. TCP/IP要求互联网上链接的每台计算机都有一唯一的国际地址,这个地址有时候称互联网地址或IP地址。 12. 13. TCP/IP的应用层等同于OSI模型中会话层,表示层和应用层的结合。 FTP,文件传输协议,是互联网上用于从一个机器向另一个机器传送文件的标准协议。 14. 15. 16. TEINET是互联网上允许远程登录的一个通用的客户-服务器程序。 SMTP是简单邮件传输协议。 当用户到计算机实验室直接访问计算机时,称之为本地登录
12、,另一方面,当用户在家中远程访问同一台计算机时则称为远程登录。 17. 静态文档:有固定的内容,它们在服务器端生成,并且只能被复制。动态文档:是驻留在服务器端得程序,当浏览器发送请求服务器就运行改程序并将结果返回浏览器中运行。活动文档:是程序,但是他们不能在服务端运行,相反浏览器需要请求程序的传送。 答案:18.b 19.c 20.b 21.c 22.d 23.d 24.a 25.c 26.a 27.b 28.b 29.d 30.b 31.c 32.a 33.b 34.c 35.a 36.a 37.d 38.b 39.b 40.b 41.d 42.c 43.c 44.d 45.a 46.b 4
13、7.a 48.a 第七章 操作系统 1. 操作系统和应用程序都是软件,只不过操作系统是一种使得其他程序更加方便有效执行的程序。 2. 统。 3. 单道程序在过去很流行,但是他还是值得一提,因为她有助于了解多道程序,网络化和交互网络化的发展扩大了操作系统的内涵,产生了一种新的操作系在单道程序里,大多是内存专用于单一的程序,仅仅一小部分用来转载操作系统。多道程序:同一时刻可以装入多个程序并且能够同时执行这些程序。 4. 5. 内存管理器,进程管理器,设备管理器文件管理器,用户界面。 多道程序使用的第一种技术称为分区调度,这种模式下,内存被分为几个不定长的分区;分页调度改进了分区调度的效率,在这种模
14、式下,内存被分为大小相等的若干个部分称为帧,程序则被称为大小相等的部分称之为页。 6. 内存被分为大小相等的若干个部分称为帧,程序则被称为大小相等的部分称之为页。 7. 8. 9. 因为在请求分页调度中,内存可以同时载入多个程序的页。 类似于分页调度的技术是分段调度。 虚拟内存是划分硬盘上的空间,物理内存是你插在计算机里面的内存条,物理内存比虚拟内存快。 10. 程序是由程序员编写的一组稳定的指令,存在硬盘上,他可能会也可能不会成为作业;进程是驻留在进程中的作业;进程是执行中的程序。 11. 12. 13. 14. 15. 16. 程序驻留在硬盘中,作业驻留在硬盘或内存中,进程驻留在内存中。
15、状态图显示了每个实体状态。 就绪状态,运行状态,等待状态; 就绪状态,运行状态,等待状态,保持状态,终止状态; 就绪状态,等待状态,终止状态; 作业调度器将作业从保持状态转入就需状态,或是从运行状态转入终止状态;进程调度器是将程序从一个状态转入另一个状态。 17. 18. 为处理多个进程和作业,所以需要队列。 1所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程. 2、在计算机操作系统中,一些进程需要一些资源才能运行,但这些资源被其他进程所占用,
16、该进程始终得不到所需要的资源,则会产生饿死。 19. 设备管理器是输入或者输出管理器负责访问输入或输出设备。它不停的监视所有的输入输出设备,保证它们正常运作;它为每一个输入输出设备维护一个或多个队列。他使用不通的方式来访问输入输出设备。 20. 文件管理器用来控制对文件的访问;用来管理文件的创建,删除和修改。命名文件;管理文件的存储;负责归档和备份。 21.A 22.A 23.A 24.D 25.B C 26.D 27.C 28.A B 29.C 30.? 31.A 32.A 33.A 34.D 35.C 36.C 37.A 38.D 39.A 40.B 41.D 42.A 43.D 44.C
17、 45.B 第八章 算法 16 D 17 C 18 C 19 B 20 A 21 C 22 A 23 C 24 B 25 D 26 B 27 B 28 A 29 C 30 D 31 B 32 D 33 A 34 A 35 A 36 B 37 A 38 B 39 C( 题目20答案不确定 ) 第九章 程序语言设计 略 第十章 软件工程 10.1 软件生命周期 软件的生命周期:一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的周期。 a)问题定义 b)可行性研究 c)需求分析 d)软件设计 e)编写程序 f)测试 Boehm指出:软件是程序以及开发、使用和维护程序需要的所有文挡。“
18、 在软件生命周期中,开发过程包括四个阶段:分析、设计、实现和测试。 系统生命周期 系统开发的阶段 10.1.1 分析阶段 1、 定义用户 整个开发过程始于分析阶段,这个阶段显示程序包应该做什么。 在分析阶段包括四个步骤:定义用户、定义要求、定义需求和定义方法。 软件包可以为一般用户或特殊用户而设计, 2、 定义要求 确定用户后,分析员开始定义要求。在这个阶段,最好的答案来自于用户。用户或用户代表清楚地定义了他们对软件的期望。 3、 定义需求 在用户要求的基础上,分析员能够准确地定义系统的需求。 4、 定义方法 最后,在用清晰的术语定义好需求后,系统分析员就选择适当的方法来满足这些需求。 10.
19、1.2 设计阶段 设计阶段定义系统怎样完成在分析阶段所定义的要求。在设计阶段,确定了系统,完成了文件和数据库的设计。 1、 模块化 整个程序包划分成许多小的模块。每个模块经过设计、测试并通过主程序与其他模块进行连接。 2、 工具 在设计阶段使用许多工具,其中最常用的是结构图。结构图显示了如何将软件包分解成逻辑步骤,每个步骤就是一个独立的模块。结构图也显示了各部分之间的相互作用。 10.1.3 实现阶段 在实现阶段,创建实际的程序。 1、 工具 流程图和伪代码。 2、 编码 10.1.4 测试阶段 1、黑盒测试 黑盒测试即在不知道程序内部也不知道程序是怎么工作的情况下测试程序。 2、白盒测试 白
20、盒测试是程序员的责任,他们准确地知道程序内部发生了什么。你必须确保每一条指令和每一种可能情况都已经被测试过。 10.2 开发过程模型 10.2.1 瀑布模型 在这个模型中,开发过程只是向一个方向流动。这就意味着前一个阶段完成后才能开始下一个阶段。 分析 设计 实现 测试 10.2.2 增量模型 该过程在一系列步骤中开发。软件小组首先完成整个软件包的简化版本。这个瀑布模型其中一个优点是:在下一阶段开始之前各个阶段都已经完成了。 缺点是:在定位问题上有困难,必须要调查整个过程。 版本代表了整个软件包但不包括细节。 第一个简化版本通常只包括主模块以及对空白子模块的调用。 在第二个版本中,更多的子模块
21、将被完成,然而还有很多没有完成。 再次测试软件包以证明主模块可以正确地调用子模块。 10.3 模块化 10.3.1 工具 结构图:用于过程化编程以显示过程或函数之间的关系。 类图:用于面向对象编程以显示类之间的关系。 10.3.2 耦合 耦合是对两个模块互相绑定紧密程度的度量。越紧耦合的模块,它们的独立性模块化意味着将大项目分解成较小的部分,以便能够容易理解和处理。 越差。为了让模块尽可能独立,应该希望它们松散耦合。 1、 数据耦合 只从调用函数向被调用函数传递最少的需求数据。 2、 特征耦合 如果参数是诸如数组或结构这样的符合对象,函数之间是特征耦合。 3、 控制耦合 控制耦合传递的是标记,
22、它可用于指示函数的逻辑流程。 4、 全局耦合 全局耦合用全局变量来进行两个或更多函数之间的通讯。 5、 内容耦合 在一个函数直接引用另一个函数的数据或语句时产生这种耦合。 10.3.3 内聚 内聚是程序中处理相关过程相关紧密程度的度量。 1、 功能内聚 带有功能内聚的模块仅仅包含一个处理过程。这是一个高级别的内聚,并且 是你应该尽力建模的级别。 2、 顺序内聚 带有顺序内聚的模块包含两个或更多紧密联系在一起的相关任务,通常一个流程的输出作为另一个的输入。 3、 通信内聚 通信内聚将使用同一数据的处理过程合并。 4、 过程内聚 过程内聚合并由控制流程连接的不相关的处理过程。 5、 顺时内聚 6、
23、 逻辑内聚和巧合内聚 10.4 质量 10.4.1 质量定义 优质软件的定义:软件能够满足用户显示或隐式的需求,文档齐全,符合组织的操作标准,在其开发使用的硬件上高效运行。 10.4.2 质量因素 可操作性、可维护性、可迁移性 对软件可操作性而言重要的因素有:准确性、效率、可靠性、安全性、及时以及实用性。 性。 10.5 文档 答案:1软件工程:利用合理的工程方法和原则获得在真实机器上工作的可靠软件。 差。 内聚:是程序中处理过程相关紧密度的度量。 2意味着软件和其他产品一样,周期的重复一些阶段。 4分析,设计,实现,测试 5分析阶段:定义用户,定义要求定义需求定义方法 6见导论书165页 7见导论书165页 8耦合:是对两个模块相互绑定紧密程度的度量。越紧耦合的模块,独立性越用户文档和系统文档。 对软件可迁移性而言重要的因素有:代码可重用性、互操作性、可移植性。 对软件可维护性而言重要的因素有:可变性、可修正性、灵活性以及可测试选择题: 9 b 10 d 11 d 12 a 13 c 14 b 15 c 16 c 17 d 18 b 19 a 20 b 21 a 22 d 23 a 24 b 25 d 26 a 27 内容耦合 28 d 29 c 30 b 31 a 32 c 33 a 34 b 35 c 36 c 37 a 38 b 39 c