计算机科学导论 第一章 学习记录

第一部分 笔记:

第一章 绪论
本章主要讨论如下内容:

计算机模型(图灵,冯诺依曼)
计算机发展史
计算机出现后所增加的社会和道德问题
计算机科学领域总览
图灵模型
阿兰·图灵在1937年提出了一个通用计算设备的设想,也就是现在所说的图灵机。

原始的数据处理器模型
在这个模型的定义下,计算机仅根据外部输入得到输出。

也就是简单的输入->计算机->输出的模型。

但这个定义过于宽泛,其仅仅是描述一类数据处理设备的工作方式,并不能特定规定计算机。

而且其并没有区分其为专用计算模型还是通用计算模型,而显然计算机输入通用计算模型。

可编程数据处理器模型
可编程的数据处理器模型则是在上述的数据模型之中加入了程序这一额外输入。

改造后的数据处理器模型的工作方式则是输入数据+程序->计算机->输出,这也就是图灵模型。

在图灵模型中,计算机根据程序来将输入数据处理成输出数据,这样也就做到了其通用性。

冯·诺依曼模型
冯诺依曼模型相较于图灵模型最大的不同点在于,图灵模型只将数据存于计算机中,程序靠外部读取,而冯诺依曼模型将程序和数据都存在计算机中。

基于这个理念设计的冯诺依曼模型如下所示:

其主要包括四个部分:

存储器:用于存储数据和程序的区域
算术逻辑单元:用于进行计算的单元(包括算术运算和逻辑运算)
控制单元:控制存储器,算术逻辑单元,输入/输出等子系统的单元
输入/输出:包括接收输入的设备,传出输出结果的设备,输入输出缓存区等一系列与输入/输出有关的系统
冯诺依曼模型中的程序
在冯诺依曼模型中,程序被看作是一条条指令的集合体。

控制器按顺序从存储器中读入指令,解析指令,执行指令。

计算机组成部分
计算机由计算机硬件,数据,计算机软件组成。

计算机发展史
机械计算机器(1930年以前)

这个阶段下出现了许多用于计算的机器,但还没有提出计算机这个概念(简单的讲就是图灵发话以前)。

电子计算机的诞生(1930~1950)

这个时候开始出现计算机的雏形。早期的电子计算机都是基于图灵模型,换句话说,这个阶段的计算机的程序靠外部输入(打孔卡,人工接线等)。

计算机的诞生(1950~)

这个阶段开始的计算机基本都是基于冯诺依曼模型的计算机。

第一代计算机(1950~1959)

这个阶段的计算机体积庞大,且使用真空管作为电子开关。

第二代计算机(1959~1965)

计算机开始缩小体积,并使用晶体管代替真空管。这个阶段开始出现高级计算机语言。

第三代计算机(1965~1975)

集成电路替代了晶体管,开始出现小型计算机。与此同时软件包开始出现,人们只需要买过来就能用,而不需要自己写程序。

第四代计算机(1975~1985)

此时的科技以允许将整个计算机的子系统做在单块电路板上。这个阶段出现了微型计算机和计算机网络。

第五代计算机(1985~)

这个阶段出现了我们现在所用的掌上计算机和台式计算机。

社会和道德问题
社会问题主要有:

依赖:部分人们认为计算机的便利会让人类产生依赖,一旦离开计算机人类的生活就会很困难。
社会公正:部分人们认为只有高端人群才能用得起计算机,这对低端人群不公正。
数字化分裂:基于上一条,用计算机的人群会跟不用计算机的人群产生分裂。
道德问题主要有:

隐私:计算机网络带来的通信和数据隐私问题。
版权:数据版权和电子版权等。
计算机犯罪:黑客之类的。
计算机科学领域
计算机科学简单地讲包括两个领域:系统领域和应用领域。

系统领域主要指跟计算机软硬件直接相关的领域,如计算机体系结构,操作系统,计算机网络,算法,程序设计语言,软件工程等。

应用领域主要指与计算机的使用有关的领域,如数据库,人工智能等。

第二部分 复习题:

第一章复习题

1. 定义一个基于图灵模型的计算机

图灵提出,各种计算都可以由一种特殊的机器来完成。他基于人们在进行计算时所执行的动作来构建这个模型。他将这些动作抽象化,构建了一个计算机模型,这个模型真正改变了世界。

2. 定义一个基于冯诺依曼模型的计算机

基于冯·诺依曼模型的计算机是一种将程序指令存储器和数据存储器合并在一起的计算机设计概念结构。这种模型是计算机体系结构的基础,它奠定了现代计算机系统的基本框架。
具体来说,基于冯·诺依曼模型的计算机具备以下主要特点:

1.存储单元:程序指令和数据都存储在同一个存储器中,这种设计使得程序和数据可以共享相同的物理存储空间,从而简化了计算机的硬件结构。

2.控制单元:计算机中包含一个控制单元,负责按照指令的正确顺序执行程序。这个控制单元能够解析指令,并协调各个硬件部件的操作,以确保计算机能够正确地执行程序。

3.运算器:运算器是计算机中负责执行算术和逻辑运算的部件。它能够接收来自控制单元的指令,并从存储器中读取操作数,然后执行相应的运算操作。

4.输入输出设备:计算机还包括输入设备和输出设备,用于与外部世界进行交互。输入设备(如键盘、鼠标等)用于向计算机输入数据和指令,而输出设备(如显示器、打印机等)则用于显示处理后的结果或输出数据。

基于冯·诺依曼模型的计算机工作时,首先通过输入设备将数据和程序输入到存储器中。然后,控制单元从存储器中取出指令进行解码,并根据指令的要求从存储器中读取操作数。接下来,运算器执行相应的运算操作,并将结果存储回存储器中。最后,通过输出设备将处理后的结果输出到外部世界。
需要注意的是,基于冯·诺依曼模型的计算机在执行指令时通常是按照串行顺序处理的。即使有关数据已经准备好,也必须逐条执行指令序列。这种顺序执行的方式在某些情况下可能会成为性能瓶颈,尤其是在处理复杂任务或需要并行处理的情况下。
总的来说,基于冯·诺依曼模型的计算机是现代计算机技术的核心,它为计算机系统提供了一种精确、可靠的模型,使得计算机能够自动处理数据并生成期望的结果。

3. 在基于图灵模型的计算机中,程序的作用是什么

基于图灵模型,程序是一组指令,用于告诉计算机需要执行的操作。这些指令被计算机逐步执行,从而完成特定的任务或计算。因此,可以说程序是计算机执行操作的蓝图或指南。

4. 在基于冯诺依曼模型的计算机中,程序的作用是什么

在基于冯·诺依曼模型的计算机中,程序的作用至关重要。该模型的核心思想之一是将程序作为指令序列直接存储在计算机的存储器中。程序的作用是指导计算机如何执行特定的任务或操作。
具体来说,程序的作用可以分解为以下几个主要方面:

1.控制执行流程:程序中的指令按照特定的顺序排列,控制单元会按照这些指令的顺序依次执行。这确保了计算机能够有条不紊地完成一系列操作,从而实现预期的功能。

2.处理数据:程序包含了各种算术和逻辑运算的指令,这些指令能够处理存储器中的数据。程序能够读取、修改和存储数据,从而实现数据的处理和分析,满足用户或应用的需求。

3.实现算法:程序是实现各种算法和逻辑规则的载体。无论是简单的数学计算还是复杂的科学模拟,程序都能够通过一系列指令的组合来实现这些算法,从而完成特定的任务。

4.实现自动化和流程优化:程序可以自动化日常任务和流程,例如自动化发送邮件、自动化生成报告等。同时,通过优化程序中的算法和逻辑,还可以实现业务流程的优化,提高工作效率。

5.扩展计算机功能:通过编写不同的程序,计算机可以执行各种不同的任务,从而实现功能的扩展。无论是娱乐、教育还是科学研究,程序都是实现这些功能的关键。

综上所述,程序在基于冯·诺依曼模型的计算机中扮演着至关重要的角色。它不仅是计算机执行操作的基础,也是实现各种功能和应用的关键。

5. 计算机中有哪些子系统

冯·诺依曼模型的子系统包括存储器、算术逻辑单元(ALU)、控制单元以及输入/输出设备。
具体来说,存储器用于存储数据和程序;算术逻辑单元(ALU)执行算术和逻辑运算;控制单元负责解释指令,并控制整个计算机系统的操作;输入/输出设备则负责与外部世界进行交互,如读取数据、显示结果等。这些子系统协同工作,使得计算机能够执行各种复杂的任务。
冯·诺依曼模型是现代计算机体系结构的基础,为计算机科学的发展提供了重要的理论基础。

6. 计算机中存储器子系统的功能是什么

计算机中存储器子系统的功能主要体现在以下几个方面:

1.数据存储与持久性:存储器子系统是计算机中用于存储数据和程序的关键部分。无论是主存储器(如RAM)还是外存储器(如硬盘、光盘等),它们都能保存大量的数据和程序,使得这些信息即使在计算机断电或系统故障后仍能保持其存在。

2.数据访问与传输:存储器子系统能够快速且准确地访问和传输数据。例如,高速缓存器(Cache)可以存储CPU在当前一小段时间内多次使用的程序和数据,从而加快CPU的访问速度。同时,主存和外存之间也可以通过适当的数据传输机制进行快速的数据交换。

3.数据安全性:存储器子系统还负责确保数据的安全性。这包括数据的加密和访问控制,以防止未经授权的访问和数据篡改。同时,存储器子系统也会采用各种技术,如数据备份、故障恢复和错误检测与纠正等,来确保数据的完整性和可靠性。

4.程序的执行支持:程序是计算机执行特定任务的指令集合,而存储器子系统则负责存储这些程序,并在需要时将其加载到CPU中进行执行。没有存储器子系统,计算机将无法运行任何程序。

综上所述,计算机中存储器子系统的功能涵盖了数据存储、访问、传输、保护以及程序的执行支持等多个方面,是计算机能够正常运行和完成各种任务的基础。

7. 计算机中ALU子系统的功能是什么

算术逻辑单元(ALU)是计算机中进行计算和逻辑运算的地方。它执行包括加、减、乘、除在内的算术运算,以及比较、位操作等逻辑运算。ALU是计算机中央处理器(CPU)的重要组成部分,它接收来自控制单元的指令和数据,然后执行相应的运算,并将结果返回给存储器或输出设备。因此,ALU是计算机中执行计算任务的关键部件之一。

8. 计算机中控制单元子系统的功能是什么

计算机中控制单元子系统的功能主要体现在对计算机各个部件的控制和协调上,以确保它们能够按照预定的指令序列正确无误地工作。具体来说,控制单元子系统的主要功能包括:

1.指令控制:控制单元的首要任务是取出存储在内存中的指令,分析指令并确定指令的类型和对操作数的地址,然后将指令分解成一系列的微操作,这些微操作会形成一个微操作序列,用以实现指令的功能。

2.时序控制:控制单元还需要为每条指令按时间顺序提供应有的控制信号。这涉及到确定指令执行过程中的机器周期、节拍(状态)以及时钟周期,这些周期组成了多级时序系统,确保每个操作都在正确的时间点执行。

3.操作控制:控制单元发出各种控制信号,指挥全机的各个部件自动协调工作,以保证指令的执行。这些控制信号不仅涉及指令的读取和执行,还包括对数据的存取、运算结果的输出等操作。

4.中断处理:当计算机执行某条指令时,内部或外部发生的某个随机事件(如某个操作数的地址错误、某个外部设备要求通信等)向CPU发出请求信号,要求CPU暂时中断当前程序的执行转而处理该随机事件,处理完后再返回原来的程序继续执行。控制单元负责响应这些中断请求,并进行相应的中断处理。

综上所述,控制单元子系统是计算机中不可或缺的关键部分,它通过发出指令和时序控制信号,指挥和协调计算机的各个部件进行工作,以确保计算机能够高效、准确地执行各种任务。

9. 计算机中输入/输出子系统的功能是什么

输入子系统负责接受来自计算机外部的数据和程序,而输出子系统则负责将处理结果发送到计算机外部。这两个子系统共同构成了计算机与外部世界进行交互的桥梁。输入子系统可能包括键盘、鼠标、扫描仪等设备,用于接收用户的输入;输出子系统则可能包括显示器、打印机、扬声器等设备,用于展示或输出处理结果。通过这两个子系统的协同工作,计算机能够与用户进行交互,并执行各种任务。

10. 简述5个时代的计算机

第一代计算机:体积大,用真空管做电子开关
第二代计算机:体积缩小,用晶体管取代真空管
第三代计算机:体积再缩小,用集成电路取代晶体管
第四代计算机:微型计算机
第五代计算机:掌上计算机和台式计算机

第三部分 练习题:

第一章练习题

1. 解释为什么计算机不能解决那些计算机外部世界无解决方法的问题

计算机通过执行一系列称为程序的指令来解决问题。这些指令集是基于纸上或铅笔上的解决方案编写的。如果计算机外部没有问题的解决方案,我们就无法编写这样的程序。因此,计算机程序是对问题求解步骤的精确表示,它必须基于某种已知或可理解的求解方法。如果没有一个明确的、可转化为计算机指令的解决方案,我们就无法编写出能够解决问题的程序。这也说明了编程的局限性,它依赖于人类对问题的理解和求解能力。

2. 如果一台小的便宜的计算机可以做大型昂贵的计算机同样能做的事情,为什么人们需要大的

即使小型的廉价计算机能够执行许多与大型昂贵计算机相同的功能,大型计算机在某些方面仍然具有其独特的价值和必要性。以下是几个主要的原因:

1.处理能力和性能:尽管小型计算机的性能不断提升,但在处理大规模、高复杂度的任务时,大型计算机仍然具有显著的优势。大型计算机通常配备更强大的处理器、更大的内存和更高的数据传输速率,能够更快地处理大量数据并执行复杂的计算任务。

2.可靠性和稳定性:大型计算机通常采用更高级别的硬件和软件设计,以确保更高的可靠性和稳定性。它们通常具有更严格的错误检测和纠正机制,能够在长时间运行和高负载情况下保持稳定的性能。

3.扩展性和灵活性:大型计算机通常具有更高的扩展性,可以根据需要增加更多的处理器、内存和存储设备。这使得它们能够适应不断变化的工作负载和数据处理需求。此外,大型计算机还支持更多的定制化配置,以满足特定应用的需求。

4.安全性和合规性:在需要高度安全性和合规性的环境中,如金融、医疗和政府等领域,大型计算机可能更受欢迎。它们通常具有更强大的数据加密、用户权限管理和审计功能,以满足严格的安全和合规要求。

5.特殊应用场景:某些特定的应用场景,如科学研究、大数据分析、高性能计算等,可能需要大型计算机来提供足够的计算能力和资源。这些任务通常对计算性能有极高的要求,小型计算机可能无法满足。

综上所述,尽管小型廉价计算机在许多方面已经取得了显著的进步,但大型计算机在处理能力、可靠性、扩展性、安全性和特殊应用场景等方面仍然具有独特的优势。因此,人们仍然需要大型计算机来满足特定的需求。

3. 研究Pascaline计算器,看看它是否符合图灵模型

在图灵模型中,计算机由输入数据、输出数据和程序三个部分组成。按照这个模型,帕斯卡琳计算器(Pascaline calculator),作为一个只能进行加法和减法的机器,并不构成一台计算机,因为它缺少了程序这一组件。程序是指导计算机如何处理输入数据并生成输出数据的指令集合,而帕斯卡琳计算器只能执行固定的加法和减法操作,没有能力执行更复杂的任务或根据不同的指令集进行变化。因此,根据图灵模型的定义,帕斯卡琳计算器不能被视为计算机。

4. 研究莱布尼茨之轮,看看它是否符合图灵模型

莱布尼茨之轮,也被称为步进计算器(Stepped Reckoner),是莱布尼茨在1672年到1694年间发明的一种机械计算器。它采用了莱布尼茨独创的“莱布尼兹轮”(Leibniz wheel),通过旋转齿轮进行加法和减法运算。每个齿轮上的刻度对应于一个数字,当刻度拨到某个数字时,齿轮会转动相应的齿数,这相当于数据输入功能。
图灵模型,由艾伦·图灵在1936年提出,是一个通用的计算模型。它要求具备无限长的存储带和可计算的转换规则。图灵机接受输入数据,然后根据预设的规则对数据进行处理,并产生输出数据。图灵模型强调了通用计算的能力,即可以对任何可计算的问题进行处理。
将莱布尼茨之轮与图灵模型进行比较,我们可以看到几个关键差异:
存储与转换规则:莱布尼茨之轮没有存储带,它仅仅通过机械方式(如齿轮的旋转)进行加法和减法运算。而图灵模型要求具备无限长的存储带,用于存储数据和中间结果。此外,莱布尼茨之轮也没有通用的转换规则,它的运算能力仅限于加法和减法。
计算通用性:图灵模型是一个通用的计算模型,能够对任何可计算的问题进行处理。而莱布尼茨之轮则是一个特定于数学运算(特别是加法和减法)的机械装置,无法应用于其他问题的计算。
基于以上分析,我们可以得出结论:莱布尼茨之轮不符合图灵模型的要求。它缺乏图灵模型所需的无限存储带和通用转换规则,且其计算能力局限于特定的数学运算,无法实现通用计算。

5. 研究雅卡尔提花织机,看看它是否符合图灵模型

在图灵模型中,计算机由输入数据、输出数据和程序三个主要部分构成。雅卡尔提花机(Jacquard Loom)使用程序(打孔卡)来控制输出(即织机的编织图案)。因此,根据图灵模型的定义,雅卡尔提花机可以被视为一种计算机。这是因为雅卡尔提花机具备了输入(打孔卡作为程序输入)、输出(编织图案作为输出结果)以及处理这些输入以产生输出的机制(即机器本身的机械运作)。尽管与现代电子计算机相比,雅卡尔提花机的功能和技术水平相对简单和原始,但它确实展现出了计算机的基本特性,即根据预设的程序处理信息并产生结果。

6. 研究查尔斯·巴比奇分析引擎,看看它是否符合冯诺依曼模型

查尔斯·巴比奇分析引擎是一个用于进行数学计算的机器,其与冯诺依曼模型的结构是一样的,包含了制造场(算术逻辑单元),存储单元(存储器),操作者(控制单元)和输出单元(输入/输出)。但是由于其程序仍旧需要借助外部人员输入,以及其不具备通用性(仅限算术运算),故其不符合冯诺依曼模型。

7. 研究ABC计算机,看看它是否符合冯诺依曼模型

基于冯·诺依曼模型的第一台计算机最初被认为是ENVAC(制造于1950年)。然而,关于这一点一直存在争议和法律纠纷。1973年,地区法院推翻了ENIAC的专利,并得出结论认为ABC(也制造于1950年)是第一台计算机。这些争议和法律纠纷反映了在界定计算机发展史上的里程碑时存在的挑战和复杂性。不同的设计和制造时间线,以及不同团队对计算机核心概念和功能的理解,都可能导致对这些里程碑的不同认定。尽管如此,这些早期的计算机都为后续的技术发展和创新奠定了重要基础。

8. 研究并找出键盘起源于哪一代计算机

键盘起源于第四代计算机。第四代计算机是从1970年以后采用大规模集成电路(LSI)和超大规模集成电路(VLSI)为主要电子器件制成的计算机。这个时期,计算机的发展已到了第四代,与前三代计算机相比,第四代计算机的特点是电路元件中大量使用中小规模电路(SSI)、大规模电路(LSI)和超大规模电路(VLSI),使计算机体积更小,功耗更低、运算速度更高、存储容量更大、软件功能更完善、系列化、通用化、标准化程度更高。
在这一时期,计算机开始出现了键盘、显示器等外围设备,可连接通信设备组成计算机网络。键盘作为计算机的主要输入设备,使得用户可以更方便地与计算机进行交互。因此,键盘是随着第四代计算机的发展而逐渐普及和完善的。
请注意,虽然键盘起源于第四代计算机,但键盘本身的发展历史可以追溯到更早的时期。例如,在打字机时代,键盘就已经出现并得到了广泛的应用。随着计算机技术的不断发展,键盘的设计和功能也在不断完善和优化,以满足用户日益增长的需求。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仙肖醒醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值