4认识计算机系统.ppt
第第 1 章章 认识计算机认识计算机 1.4 认识计算机系统认识计算机系统 计算机系统的分层结构计算机系统的分层结构 抽象抽象计算的关键计算的关键第第 1 章章 认识计算机认识计算机 计算机系统由计算机硬件和计算机软件构成;计算机系统由计算机硬件和计算机软件构成;计算机硬件计算机硬件:构成计算机系统的所有物理器件(集成:构成计算机系统的所有物理器件(集成电路、电路板以及其他电子元件等)、部件和设备(控电路、电路板以及其他电子元件等)、部件和设备(控制器、运算器、存储器、输入制器、运算器、存储器、输入/输出设备等)的集合;输出设备等)的集合;计算机软件计算机软件是指用程序设计语言编写的程序,以及运是指用程序设计语言编写的程序,以及运行程序所需的文档、数据的集合。行程序所需的文档、数据的集合。自计算机诞生之日起,人们探索的重点不仅在于建造自计算机诞生之日起,人们探索的重点不仅在于建造运算速度更快、处理能力更强的计算机,而且在于开发运算速度更快、处理能力更强的计算机,而且在于开发能让人们更有效地使用这种计算设备的各种软件。能让人们更有效地使用这种计算设备的各种软件。计算机的全称是通用计算机的全称是通用电子数字电子数字计算机;计算机;电子电子计算机是一种电子设备;计算机是一种电子设备;数字数字计算机内部是二进制数字世界。计算机内部是二进制数字世界。计算机硬件计算机硬件计算机硬件计算机硬件:构成计算机系统的所有物理器件(集成电:构成计算机系统的所有物理器件(集成电路、电路板以及其他电子元件等)、部件和设备(控制路、电路板以及其他电子元件等)、部件和设备(控制器、运算器、存储器、输入器、运算器、存储器、输入/输出设备等)的集合;输出设备等)的集合;计算机硬件计算机硬件二进制数字世界:信息(数据、指令)的编码二进制数字世界:信息(数据、指令)的编码电子元件:门、逻辑电路、集成电路电子元件:门、逻辑电路、集成电路 计计算机部件:存算机部件:存储储器、器、CPU、输输入入/输输出出设备设备 硬件硬件计算机软件计算机软件是指用程序设计语言编写的程序,以及运行是指用程序设计语言编写的程序,以及运行程序所需的文档、数据的集合。程序所需的文档、数据的集合。计算机软件计算机软件 计算机的全称是通用电子数字计算机;计算机的全称是通用电子数字计算机;通用通用计算机可服务于多种用途。计算机可服务于多种用途。通用的奥秘:程序,可编程;通用的奥秘:程序,可编程;计算机软件使计算机硬件富有生命力。计算机软件使计算机硬件富有生命力。计算机软件计算机软件计计算机硬件算机硬件 硬件硬件软件软件应应用程序:机器用程序:机器语语言言 1.机器机器语语言:基于言:基于计计算机硬件写程序算机硬件写程序计算机软件计算机软件机器机器语语言是内置在言是内置在计计算机算机电电路中的指令,由路中的指令,由0和和1组组成。成。例如:例如:2+6 在某种在某种计计算机上的机器算机上的机器语语言指令:言指令:1.机器机器语语言:基于言:基于计计算机硬件写程序算机硬件写程序计算机软件计算机软件计计算机硬件算机硬件 硬件硬件软件软件语语言翻言翻译译程序程序 2.高高级语级语言:脱离言:脱离计计算机硬件写程序算机硬件写程序应应用程序:高用程序:高级语级语言言 计算机软件计算机软件2.高高级语级语言:脱离言:脱离计计算机硬件写程序算机硬件写程序源文件源文件.cpp编译编译0101000010100101010100101001000000100010000100111110101010010011110011111010101001001111011001 目目标标文件文件.obj高高级语级语言的言的语语句形式句形式类类似于自然似于自然语语言和数学言和数学语语言。言。例如:例如:2+6的高的高级语级语言言语语句就是句就是2+6。FORTRAN第一个高级语言第一个高级语言 1954年,约翰年,约翰巴克斯领巴克斯领导的小组开发出第一个高级导的小组开发出第一个高级程序设计语言程序设计语言Fortran,大大大大提高了程序开发效率。提高了程序开发效率。Fortran推动推动IBM704走向走向世界,成为当时最成功的计世界,成为当时最成功的计算机,也使算机,也使IBM成为计算机成为计算机产业的老大。产业的老大。计算机软件计算机软件3.操作系操作系统统:计计算机有了管家算机有了管家计计算机硬件算机硬件 硬件硬件软件软件语语言翻言翻译译程序程序 应应用程序:高用程序:高级语级语言言 操作系操作系统统:计计算机的管家算机的管家 计算机软件计算机软件3.操作系操作系统统:计计算机有了管家算机有了管家计计算机硬件算机硬件 语语言翻言翻译译程序程序 应应用程序:高用程序:高级语级语言言 用户用户计算机软件计算机软件3.操作系操作系统统:计计算机有了管家算机有了管家计计算机硬件算机硬件 语语言翻言翻译译程序程序 应应用程序:高用程序:高级语级语言言 操作系操作系统统:计计算机的管家算机的管家 用户用户操作系统操作系统方便用户方便用户 更好、更强大的操作系统被开发出来;更好、更强大的操作系统被开发出来;引入了鼠标的概念和点击式的图形界面;引入了鼠标的概念和点击式的图形界面;DOS(字符界面)(字符界面)Windows(图形界面)。(图形界面)。美国加利福尼美国加利福尼亚亚大学的恩格巴大学的恩格巴特博士特博士发发明了世界上第一只鼠明了世界上第一只鼠标标。1968年鼠年鼠标标在旧金山在旧金山联联合合计计算机会算机会议议上首次亮相,直到上首次亮相,直到1981年才出年才出现现第一台使用鼠第一台使用鼠标标的商用的商用计计算机。算机。计算机软件计算机软件4.工具工具软软件:工欲善,必先利其器件:工欲善,必先利其器计计算机硬件算机硬件 硬件硬件软件软件工具工具软软件件、语语言翻言翻译译程序程序 应应用程序:高用程序:高级语级语言言 操作系操作系统统:计计算机的管家算机的管家 杀杀毒毒软软件、件、压缩软压缩软件、影音播放件、影音播放计算机软件计算机软件5.应应用用软软件:件:计计算机无算机无处处不在不在计计算机硬件算机硬件 硬件硬件软件软件工具工具软软件、件、语语言翻言翻译译程序程序 办公软件、财务软件办公软件、财务软件 操作系操作系统统:计计算机的管家算机的管家 系统软件层系统软件层应用软件层应用软件层计算机软件计算机软件6.计计算机网算机网络络:计计算机成算机成为为一种文化,正在日益改一种文化,正在日益改变变着着人人们们的生活、工作和学的生活、工作和学习习惯习习惯计计算机硬件算机硬件 硬件硬件软件软件工具工具软软件、件、语语言翻言翻译译程序程序 办公软件、财务软件办公软件、财务软件 操作系操作系统统:计计算机的管家算机的管家 系统软件层系统软件层应用软件层应用软件层QQ、电电子子邮邮件、件、Google 网网络络化化与与通通信信1998年年,搜索,搜索引擎引擎Google推出,推出,开创者开创者是史丹佛博士班的是史丹佛博士班的休学学生休学学生Larry Page 和和 Sergey Brin。这是这是Tim Berners-Lee当初发明当初发明WWW所所使用的使用的电脑。电脑。计算机软件计算机软件计算机软件计算机软件计计算机硬件算机硬件 工具工具软软件、件、语语言翻言翻译译程序程序 办公软件、财务软件办公软件、财务软件 操作系操作系统统:计计算机的管家算机的管家 重点:让计算机能重点:让计算机能够良好地运转起来够良好地运转起来QQ、电电子子邮邮件、件、Google 重点:用计算机解重点:用计算机解决真实世界的问题决真实世界的问题计算机系统的分层结构计算机系统的分层结构我们很容易掌握细节,却失去了全局观念。请记住这个分层我们很容易掌握细节,却失去了全局观念。请记住这个分层结构,接下来会依次介绍每一个分层,每前进一个分层,你结构,接下来会依次介绍每一个分层,每前进一个分层,你会感受到计算机系统的精妙。会感受到计算机系统的精妙。硬件硬件软件软件信息(数据、指令)的编码信息(数据、指令)的编码门、逻辑电路、集成电路门、逻辑电路、集成电路 存存储储器、器、CPU、输输入入/输输出出设备设备 工具工具软软件、件、语语言翻言翻译译程序程序 办公软件、财务软件办公软件、财务软件 操作系操作系统统:计计算机的管家算机的管家 系统软件层系统软件层应用软件层应用软件层QQ、电电子子邮邮件、件、Google 网网络络化化与与通通信信计算机用户概念的变化计算机用户概念的变化 起初,计算机用户和程序员是一体的;起初,计算机用户和程序员是一体的;20世纪世纪50年代,出现了系统程序员和应用程序年代,出现了系统程序员和应用程序员的区分,但计算机用户仍然是程序员;员的区分,但计算机用户仍然是程序员;20世纪世纪70年代,计算机用户不仅是程序员,还年代,计算机用户不仅是程序员,还包括使用应用软件的非专业人员;包括使用应用软件的非专业人员;今天,所有使用计算机的人都是计算机用户。今天,所有使用计算机的人都是计算机用户。应用程序员与计算机硬件的距离应用程序员与计算机硬件的距离 在计算机软件发展的进程中,随着包围硬件的软在计算机软件发展的进程中,随着包围硬件的软件变得越来越复杂,计算机提供的功能越来越强件变得越来越复杂,计算机提供的功能越来越强大,使用计算机变得越来越容易,大,使用计算机变得越来越容易,应用程序员离应用程序员离计算机硬件也越来越远计算机硬件也越来越远了。那些仅仅使用高级语了。那些仅仅使用高级语言编程的人不需要懂得机器语言和汇编语言,这言编程的人不需要懂得机器语言和汇编语言,这就降低了对应用程序员在硬件及机器指令方面的就降低了对应用程序员在硬件及机器指令方面的要求。要求。抽象抽象计算的关键计算的关键 抽象:舍弃个别的、非本质的属性,抽出共同的、本质抽象:舍弃个别的、非本质的属性,抽出共同的、本质的属性。是形成概念的必要手段(汉语词典)。的属性。是形成概念的必要手段(汉语词典)。抽象是一种思考问题的方式,它抽象是一种思考问题的方式,它隐藏或忽略隐藏或忽略了复杂的细了复杂的细节,只考虑解决问题所必需的信息。节,只考虑解决问题所必需的信息。日常生活中充满了抽象,例如:日常生活中充满了抽象,例如:开车:不需要知道发动机是如何运转的、车是如何生开车:不需要知道发动机是如何运转的、车是如何生产的、如何装配到一起的,只需会开车;产的、如何装配到一起的,只需会开车;做饭:不需要知道水稻是如何种植、生长、收割的,做饭:不需要知道水稻是如何种植、生长、收割的,只需会做熟、做好。只需会做熟、做好。抽象抽象计算的关键计算的关键 使用计算机时,当与某个计算机分层打交道时,没有必使用计算机时,当与某个计算机分层打交道时,没有必要考虑其他分层。例如:要考虑其他分层。例如:在使用高级语言编写程序时,不需要知道计算机硬件在使用高级语言编写程序时,不需要知道计算机硬件是如何执行指令的,具体的微电路以及如何同步;是如何执行指令的,具体的微电路以及如何同步;在运行程序(例如在运行程序(例如Word文字处理程序)时,不需要文字处理程序)时,不需要知道计算机程序是如何编写的;知道计算机程序是如何编写的;在在Google上搜索信息时,不需要知道搜索引擎是如何上搜索信息时,不需要知道搜索引擎是如何查找网页的;查找网页的;计算机系统太复杂,我们不能同时关注所有细节。计算机系统太复杂,我们不能同时关注所有细节。抽象抽象计算的关键计算的关键 抽象思维抽象思维 逻辑思维逻辑思维描述问题描述问题 问问 题题求解问题求解问题形式化描述形式化描述自动化运行自动化运行 符符 号号 符号变换符号变换抽象抽象计算的关键计算的关键【七桥问题七桥问题】1717世纪的东普鲁士有一座哥尼斯堡城(现在叫世纪的东普鲁士有一座哥尼斯堡城(现在叫加里宁格勒,在波罗的海南岸),城中有一座岛,普雷格尔加里宁格勒,在波罗的海南岸),城中有一座岛,普雷格尔河的两条支流环绕其旁,并将整个城市分成北区、东区、南河的两条支流环绕其旁,并将整个城市分成北区、东区、南区和岛区区和岛区4 4个区域,全城共有七座桥将个区域,全城共有七座桥将4 4个城区连接起来,于个城区连接起来,于是,产生了一个有趣的问题:一个人是否能在一次步行中穿是,产生了一个有趣的问题:一个人是否能在一次步行中穿越全部的七座桥后回到起点,且每座桥只经过一次。越全部的七座桥后回到起点,且每座桥只经过一次。抽象抽象计算的关键计算的关键 东区东区北区北区岛区岛区南区南区CADB 抽象抽象【抽象模型抽象模型】用用A、B、C、D表示表示4个城区,用个城区,用 7 条条线线表示表示 7 座座桥桥,将七,将七桥问题桥问题抽象抽象为为一个一个图图模型。模型。抽象抽象计算的关键计算的关键【描述描述问题问题】是否存在欧拉回路的判定是否存在欧拉回路的判定规则规则是:是:(1)如果通奇数)如果通奇数桥桥的地方多于两个,的地方多于两个,则则不存在欧拉回路;不存在欧拉回路;(2)如果只有两个地方通奇数)如果只有两个地方通奇数桥桥,可以从,可以从这这两个地方之一出两个地方之一出发发,找到欧拉回路;,找到欧拉回路;(3)如果没有一个地方通奇数)如果没有一个地方通奇数桥桥,则则无无论论从哪里出从哪里出发发,都能,都能找到欧拉回路。找到欧拉回路。抽象抽象计算的关键计算的关键【形式化描述形式化描述】程序程序符号化符号化#include int EulerCircuit(int mat1010,int n);int main()int mat1010=0,1,2,2,1,0,1,1,2,1,0,0,2,1,0,0;int num;num=EulerCircuit(mat,4);if(num 2)printf(有有%d个地方通奇数个地方通奇数桥桥,不存在欧拉回路,不存在欧拉回路n,num);else if(num=2|num=0)printf(存在欧拉回路存在欧拉回路n);return 0;int EulerCircuit(int mat1010,int n)int i,j,count=0,degree;for(i=0;i n;i+)抽象抽象计算的关键计算的关键 抽象是计算的关键;抽象是计算的关键;计算机系统的分层体现了抽象的概念;计算机系统的分层体现了抽象的概念;抽象以各种形式体现在各个分层中;抽象以各种形式体现在各个分层中;计算机系统的整个进化过程,都运用了抽象;计算机系统的整个进化过程,都运用了抽象;问题求解的过程中运用了抽象;问题求解的过程中运用了抽象;计算思维计算思维抽象思维、逻辑思维。抽象思维、逻辑思维。