粉丝344获赞8622
我们现在使用的计算机其实是通用计算机的简称,言下之意就是我们曾经出现过专用计算机。 专用计算机是什么样子的?打个比方,如果你让计算机计算 a 加 b, 那么他是可以算的很好的,你也可以把 ab 用任何数据进行替代。但是如果你想计算 a 加上 b 乘以 c, 那就不行了,你得把计算机送回到厂家那重新编程,重新输入计算机,然后客户再拿过来使用,才能够计算 a 加 b 乘以 c。 这样的计算机其实跟收音机没有什么区别,它的功能是由厂家设定的,用户想要实现新的功能,就必须由生产厂家改装电路、改装结构 和机构,才有可能实现。这种情况直到冯诺一曼提出通用计算机体系结构才得以改观。在冯诺一曼体系结构下,计算机内部主要分为存储和计算两部分。存储部分用来存储数据或指令。 按照存取速度的快慢,存储部分可以分为计存器、高速缓存、内存、外存等四种。 计算部分指的是 cpu, 他只能进行加法运算,其他运算如减法、乘法、除法等只能通过加法运算间接实现。 所谓程序就是指令的集合,他通常是存在外存当中的,只有在运行时才会被掉到内存当中来。每条指令的作用不同,有的是在各种存储之间移动数据,比如 如从外存移到内存,从内存移到计算器,或者从计算器移到内存,从内存移到外存。有的用来控制 cpu 进行各种计算,比如加法、求法、移位、 加一、减一等。基本操作程序中的指令通常是按照顺序执行的,但是有些指令可以打破顺序执行,比如跳到若干条指令之前, 把前面执行过的指令再次执行一遍,这相当于循环。有的则是往后忽略若干行指令,执行更后面的指令,这相当于条件依据。 有的跳转指令是带有条件的,比如说必须某个计算器里面的值等于零或不等于零,才能够发生跳转。内存中有一段 是跟显示器直接挂钩的,所以我们虽然在屏幕上可以看到各种图表、色彩、图片颜色或文字, 但是在计算机看来,这只不过是一个一个的像素点,每个像素点对应着内存中的若干字节, 只要把内存中这些字节的值发生改变,对应屏幕中的图像就会发生改变。当用户敲击键盘的时候,计算机内部会产生被称为中断的信号, 导致某个事先被指定的程序被执行,从而将每个键对应的码值存储在内存中指定位置。逢诺伊曼体系结构就是通过这种方法实现了通用计算功能。
毫不夸张的说,不管我们现在的计算机有多牛, cpu 升级到了多少内米,都没能跳出世界计算机之父大数家冯诺伊曼设计的框架。那么,冯诺伊曼到底有多牛呢?在这里给大家讲个故事。有一次,冯诺伊曼参加晚会,女主人心血来潮, 决定考考数学家。他说,两列火车相距一英里,以每小时三十英里的速度相向而行。与此同时,火车上有一只苍蝇以每小时六十英里的速度 朝着另一辆火车飞去。当他飞到另一列火车时,他又迅速的飞回来,就这样一直往返飞行,直到火车相撞。问,这只苍蝇一共飞了多少阴灵?这是一个无穷极速求和的数学问题,一般人都是一次一次计算苍蝇的飞行路程, 然后把这些结果累加起来,虽然不难,但是费时费力。其实这个问题有一个技巧,首先计算出两列火车要经过多长时间才能相撞,很容易计算出来是一分钟,而 苍蝇每小时飞行六十英里,一分钟也就是一英里,答案就出来了。就在女主人刚问完问题的同时,冯诺伊曼就给出了答案,是伊英里。女主人非常惊讶,不知道冯诺伊曼用的什么技巧,然而冯诺伊曼却轻松地说道,我用的是无穷极术,您听明白了吗? 冯一曼能在一瞬间完成无穷极数求和,他的大脑都赶上了计算机。故事说到这里,您千万不要划走。冯诺一曼和计算机比赛的例子还真有,有一年,普林斯顿大学为了测试计算机的性能,他们让冯诺一曼同机器对抗。几个科学家解释了两个小时,在黑板上写下了公示方程。冯诺一曼拖着下巴停着, 不一会儿,他说,你们不需要什么计算机,因为我已经算出答案了。由此可见,人类的进步就是靠那么几个数学家带领着全人类实现跨越升级,就连原子弹,那也是靠数学计算出来的。那我们必须要先提到一个著名的人, 叫做冯诺伊曼。冯诺伊曼啊,被称为计算机之父,对吧?啊,博伊论,博伊论之父也是冯诺伊曼啊,这个人很厉害, 但是相信你们所有人都不知道,因为很多专家,包括都不太很熟悉,他实际上在晚年还有一个对复杂性科学的重大贡献啊,就是他想知道机器如何进行自我复制。 那在琢磨这么一个问题啊,你可能会觉得,哎呀,干嘛要研究机器的自我复制问题啊, 啊,你看看生物学啊,直接就跟他们去学不就完了吗?啊?但你请你注意这一点,实际上,冯诺伊曼之所以想研究自负制问题,他的本质原因是想找到一条抵抗热力学第二定律给 我们带来的这种死亡宿命的一种解决方案。哎,他是想找到这一点,他首先观察到呢,就是所有的人造的系统,无论你是计算机还是马达啊,都会不可避免的走向衰败和死亡, 对吧?你开车,你会发现你隔一段时间你就要保养你的这个车辆,你不保养,他就会充满了各种问题 啊,甚至于连计算机系统,哼,就是我们使用的软件,特别是 windows 用户,你就会发现,一段时间你不清理你的硬盘,不清理你的这些软件,他就会出开机越来越慢,甚至于很容易崩溃,很容易死亡 啊。就热力学定律会经常作用在人造的这些系统上面,很脆弱,很容易就衰败掉。可是 反观生物体,你会发现呢,哎,他就会眼花,眼花以后,哎,他就会走向有序啊,变得越来越复杂,就是进化第二种时间之见 啊。所以光知道我们这个系统要开放是不够的,远远不够你开放,最后还是要死亡,所以怎么办?哎,生物体已经找到解决方案,他是自负制,因为你自负制,虽然你个体还是死了,对吧?可是你,你的基因,你的后代保留的下来, 哎,所以生物体就找到了一个对抗老天,对抗宿命,对抗死亡热力学第二定律的一种途径。那么冯诺伊曼呢?研究自负制这个问题,哎,就是啊,就想找到这个途径的激励是什么,那么他就发现呢,存在的一种所谓的复杂度的预值 啊。复杂度的一个关键值就是当我人造的这个系统,它的复杂度没有达到这个预值的时候, 那么热力学第二定律就不可避免的作用在这个上面,让他一点一点衰败死亡下去。但是当你推动这个复杂度, 然后超过了一定的预值,哎,就有可能使得这个系统呢,反了,反过来了,变成了是一种进化的一个系统 啊,就像这张画所展示这样,是吧?黑白啊,一个是是一个是复杂度啊,中间有一个分分分水岭,就是复杂度的这个玉质,那么这个玉质到底是什么呢?复杂度玉质就是自复制,就是他就是认为只要你的这个 系统,对吧?他的复杂度能够让他完成自负制的时候,哎,我就有可能从衰外走向秩序,走向进化。
他是一位一生徘徊在数字王国的数学家,却又不经意间创造出了物理学、博弈论、核武器、生化武器和现代计算机的奇迹。他被认为是美国历史上引进的最有用的人才, 二十世纪最具影响力的诸多领域都有杰出剑术的、最伟大的科学全才、 电子计算机之父冯诺伊曼。约翰冯诺伊曼出生在东欧一个富裕而温暖的家庭, 父亲麦克斯年轻有为,风度翩翩,年轻时就已起身于布达佩斯的银行家行列。他的母亲则是一位温柔善良的妇女,受过良好教育,拥有非常高的艺术素养。良好的家庭环境给了冯诺伊曼自由发展的可能。冯诺伊曼从 从小就显示出数学和记忆方面的天才,从海题时代起,冯诺一曼就有过目不忘的天赋。六岁时他能心算做八位数厨房, 八岁时掌握微积分。在十岁时,他花费了数月读完了一部四十八卷的世界史,并且多年以后还能够熟练背诵。十二岁就读懂领会了波兰尔的大作函数论的要义。 十七岁那年,还未上大学的他与菲克特教授合作研究车比雪夫多像根的求解,发表了第一篇论文。同年他已获得厄特沃狮奖,圆满的结束了自己的中学时代。 值得一提的是,这个奖的得主还有超音速飞机之父、中国核工业奠基人钱学森的博士导师冯卡文。中学结束后,也就是 一九二一年,十七岁的冯诺伊曼按照父亲的希望来到柏林大学和宿离市联邦工学院学习化学工程,但他心中还是放不下对数学的热爱, 于是后来又在布达佩斯大学注册成为数学博士候选人。父亲虽然担忧,但出于对儿子的爱,更多的还是理解与支持。于是,这个不满十八岁的年轻人开始了他跨越三个城市、两个不同专业的本科生和研究生的生活。 可想而知,这在当时是多么不可思议,即使放到现代,也极少有人能做出这样不同寻常、有果敢坚定的选择。也正因三个城市距离遥远,交通不便,恰恰成就了冯诺伊曼的传奇。他在布达佩斯大学注册为数学方面的学生, 但并不听课,只是每年按时参加考试,但每次考试都能得 a。 寒王暑来,几经奔波,他顺利获得了布达佩斯大学的数学博士学位。而在柏林的两年,冯诺伊曼仅休了几门化学基础课,除了有时会去上课,其余时间几乎见不到人。 但是两年之后却轻松通过了爱因斯坦考了两次才通过的苏黎世联邦工业大学一年一度的入学考试。那么,他剩下的时间用来做什么呢? 当然不是纸醉金迷,游戏人生,他一直在专注于数学方面集合论的研究。一九二三年,冯诺伊曼完成了他的长篇论文。当时的德国数学家弗兰克尔读到后大为震惊,甚至还引用了十八世纪瑞士数学家丹尼尔为努力读到牛顿 论文时说过的一句话,从爪子判断,这是一头雄狮。之后,这位化学系的本科生常常受邀到一代数学大师希尔伯特的家中做客,二力也从此成了忘年之交, 正是应了青年才女张爱玲那句出名要趁早。冯诺一曼的一生如同坐着火箭一般飞速前进,只留下同路人的一阵感叹与震惊。他自从进入大学开始,就一直在顶尖的数学家中学习,思考、探讨问题时显得游刃有余。 他的师兄兼老师波利亚甚至有些畏惧他,因为波利亚曾在为研究生们做演讲时提出了一个数学界悬而未决的问题。而五分钟后,这个难题竟然被冯诺一曼解出来了。波利亚说,他是唯一的令我感 到自己的教师地位受到威胁的学生,他实在是太敏锐了。自那之后,我对冯诺一曼感到畏惧。 当冯诺伊曼还是苏里士的大学生时,发表了超限叙述的论文,而文中关于叙述的定义如今已被普遍采用。二十九岁,他成为普林斯顿大学最年轻的终身教授,爱因斯坦就在他隔壁的办公桌。 除了火箭一般的成长速度,冯诺伊曼最为人称道的还有他计算机一般非凡的大脑。诺贝尔奖物理学获得者汉斯贝泽说,我有时在思考,冯诺伊曼这样的大脑是否暗示着存在比人类更高级的生物物种? 有一次,几位数学家遇到一道数学难题,用计算器算了一晚上依旧没有结果。大家想考验一下所有神算 支撑的冯诺伊曼,结果冯诺伊曼几分钟之后便心算出了结果。大家都不无崇拜的调侃,还研究什么计算机,他的脑袋不就是一台超级计算机吗? 原子能委员会主席斯特劳斯也曾这样评价他,说冯诺伊曼有一种使人望尘莫及的能力,最困难的问题到他手里都会被分解成一件件看起来十分简单的事情。 诺贝尔物理学奖得主维格纳说,一旦冯诺伊曼博士分析了一个问题,该怎么办就一清二楚了。除此之外,冯诺伊曼一生成就则更是惊人。 他是普林斯顿高级研究所教授、美国云子能委员会会员,美国全国科学院院士。年轻时以算子理论、共振论、量子理论、集合论等方面的研究文明开创, 用了冯诺伊曼代数第二次世界大战起点,为第一颗原子弹的研制、电子数学、计算机的研发做出了卓越贡献。 他与摩根斯特恩合注的不议论与经济行为是不议论学科的奠基性著作,极大的开拓了树立经济学的研究,影响了至少十一位诺贝尔经济学奖得主的工作。
一九四五年六月,美籍匈牙利数学家冯诺伊曼提出了存储程序控制的计算机系统结构。 这一思想在计算机发展历史上是一个里程碑,它奠定了现代计算机的基础。此后,计算机系统组成结构虽经过不断的发展,但总体上都遵循着这种体系结构,这种体系结构称之为冯诺伊曼结构。 冯诺伊曼结构主要有以下特点,一、指令和数据均采用二进制表示。二、计算机由运算器、控制器、存储器、输入设备和输出设备五大功能部件组成。三、编好的程序 是先存入存储器中,然后再执行。最早的冯诺一曼结构采用的是以运算器为核心,但这种结构存在一些固有的缺陷。 此后经过多次改进,现代计算机采用存储器为核心的体系结构,其中运算器和控制器构成了中央处理器 cpu, 除此之外, cpu 中还包括一些计存器等不见。 一个完整的计算机系统中,不仅需要硬件系统的支持,还需要为他注入灵魂,这就是软件系统。计算机软件可以分为系统软件和应用软件两大 系统。软件的任务是控制和维护计算机的正常运行,管理计算机的各种资源。 应用软件则是帮助用户处理实际任务的软件。由此我们可以看出,现代计算机系统主要由硬件和软件两大部分组成,其中硬件系统可以分为主机和外部设备。 主机包含中央处理器 cp 如何内存储器。中央处理器包含运算器和控制器。内存储器包括制度存储器 ram 和随机存储器 ram。 外部设备包括外部存储器、输入设备和输出设备。 软件系统包括系统软件和应用软件两大部分。系统软件包括操作系统、程序与 语言处理程序、数据库管理系统以及各种服务程序。应用软件包括通用软件和专用软件两种, 下面我们介绍一下这些组成。计算机系统的基本组成部分。中央处理器是计算机硬件系统中最核心的部件,英文名为 santoro processing unit, 简称 cpu。 它主要包含的运算器和控制器两大部件。运算器主要负责数据的算数运算和逻辑运算, 其主要的部件是算数逻辑单元,另外还包含一些寄存器,简称 alu。 控制器是计算机的指挥中心,它的主要功能就是指挥 计算机各个部件协调工作。控制器一般由程序技术器、指令计存器、指令密码器和操作控制器组成,它是计算机真正的指挥中心。内存储器简称内存,也称为主存。 他是计算机中重要的部件之一,他的作用是暂时存放 cba 中正在运行的程序和数据。他是计算机中重要的部件之一。 内存是 cpu 之间能访问的存储空间,是与 cpu 沟通的桥梁。目前微型机中内存一般可分为两类,随机存储器 rap 和只读存储器 ram 随即存储期 ran 具有两大特点,一是既可以从中读出数据,也可以写入数据。二是数据的一失, 也就是当系统断电后,存在其中的数据就会丢失。只读存储器拉捏有两个特点,顾名思义,第一个特点就是只能从中读出数据,而不能写入数据。 第二个特点和随机存储器恰恰相反,断电后数据不会丢失,只读存储器中的数据和程序,在制造时就被写入其中,永久保存。乱中一般用于存储计算机的基本程序和数据,如 boss 系统。 计算机外部设备包括外部存储器、输入设备和输出设备。其中外部存储设备有很多种。当前微型计算机中最常用的就是硬盘,此外还有 光盘、 u 盘和早期的软盘等。常见的输入设备有键盘、鼠标、扫描仪、摄像头等。常见的输出设备有显示器、打印机、绘图一等。 下面我们介绍一下计算机软件系统的组成。计算机软件系统包括系统软件和应用软件两类。系统软件中最重要的就是操作系统,常见的操作系统有 windows、 linux、 苹果电脑的 michael is、 谷歌的 intro 等。 程序语言处理系统包括各种编程语言的编译系统、解释程序、链接程序等。数据库管理系统是一种操纵和管理数据库的大型软件,简称 db 案。 目前常用的数据管理系统由 record、 asquelsover、 mysquel。 再对此服务程序主要包括系统的检查、诊断和排措等程序。 应用软件包括通用软件和专用软件。 通用软件是指可以被商品化、大众化的应用软件,比如我们常用的 wps 办公软件就属于通用软件。专用软件只专为某些单位和行业开发的软件, 比如火车站或汽车站的票务管理系统、财务部门的财务系统等。 一上就是本期视频的所有内容,感谢您的观看!
如果一开始就深入到计算机内部的复杂结构中,也许会让人有些迷茫,我们还是用一个轻松愉快的方式来入手,通过一个餐馆的小故事来了解冯诺伊曼结构是如何运转的。 否诺一慢结构的计算机就好比这个餐馆, cpu 就是厨房,而组成就是仓库。 仓库里的货架就好比组成当中的存储单元,我们为货架的每一格都编上了一个 句号,相当于组成当中的地址和货架上存放的物品,相当于存储单元当中的内容。组成中会存放着计算机的指令 还有数据。对于这个餐馆来说,就是厨师需要执行的任务和做菜所用的原料。那厨房当中承担主要控制任务的就是这位大厨了,他就是控制器,而运算器则是厨具, 那我们还需要一些附加的设备。这个厨师记性很不好,他必须要在身边有一张纸,上面写着下一张任务单的位置。这里这张纸上写了一厨师就知道啊,我下一张任务单放在 仓库的第一个,那么如果把任务单取回来以后,还需要放在身边随时的查看,所以他还得有一个放置当天任务单的位置。 如果取来了,任务单就放在这,那厨师做菜做完了,菜放哪呢?不能直接端着锅冲到仓库去吧? 所以他身边操作台上总得放几个盘子,相当于 cpu 当中呢。我们就称这些盘子为通用计算器,用于临时存放运算器的运算结果,或者要送到运算器的操作数。 我们有可能从组成当中事先会取来一些操作数,当然也需要通过执行指令去取来一些操作数,先放到通用计算器当中。 那好,这个餐馆是如何运转的呢?那么我们就让他像计算机的运转一样, 计算机运转的核心内容就是执行指令。计算机执行一条指令的主要步骤呢,包括如下四步,第一步叫做取止,第二步叫做溢码,第三步称为执行,第四步是回血。 依次执行完这四步,计算机就完成了一条指令的执行。那我们就来看看这个弗诺伊曼结构的餐馆是如何像计算机一样执行指令的。 现在我们假设这个餐馆处在这样一个状态, 厨师第一步要做的事情就是查看下一张任务单的位置在哪,我要去取这张任 任务单了,好一查,发现是一好,向主存发出了请求,我需要第一格的物品,他并不知道第一个存放的是什么,他只是根据这里的编号向主存发出申请。 哎,储存并不简单,是一些货架,他还是要有一些控制逻辑,那么这里控制逻辑就会响应控制器的请求。需要第一个的物品,他就找到了第一个物品,把第一个物品给送回去。 厨师收到了任务单了,他就把它放在身边,存放当前任务单的位置,这就完成了第一步取任务单的工作。但实际上这一步呢,还需要有一项任务,就是更新下一张任务单的位置,第一个取完了,等这件事 做完之后,下一次再去取任务单的时候,应该去取下一个,所以把它更新为二。但是现在不会取取第二个啊,只是先更新,等一会去执行下一条指令的时候,再根据这个位置去向主称发出请求。 好,那这样的话,取任务单的这一步就算真正的完成了。第二步,在计算机当中我们称为义码,对于这个厨师来说就是分析刚才拿到的任务单, 你看啊,看这个任务单上写的这么几条,第一呢,说明了这项任务所需要用的方法。 第二呢,说明了这样任务所需要的原料,看来这个原料有两个位置,一个在仓库,一个 在他身边的盘子里。最后这项任务完成以后,看起来是炒一盘菜,那么炒完之后呢,还得把成果存放在某个地方,这个任务单上也指定了存在爱好的盘子里。好,这个任务就分析完了, 控制器呢,就把它转换成若干组的控制信号,准备一一来完成。这样一码,这个阶段就算完成了。第三步,对计算机执行指令是其核心的步骤,就叫做执行, 我们对厨师来说也一样,执行这个已经分析完的任务。这个任务一共有四步,我们先完成第一步,第一步是要去取第六格的物品,好与刚才一样, 向主村发出请求,说我需要第六格的物品,主城会响应把第六格物品送过来。 由于这次是取运算要用的操作数,所以返回的物品呢,控制器就会把它放到运算器的其中一个入口。然后第二步是取这个运算的第二个操作数,其实这是放在 a 号盘子里的,就在厨师身边,很快啊,马上就可以拿到。 第三步是执行这项运算,那么控制器会给出对应的控制信号给运算器,让他执行对应的运算,经过短暂的时间之后呢,运算就完成了,运算结果也产生了, 好,执行阶段就到此结束了。但是我们发现现在运算结果还放在运算器的 这个输出端口上,我们必须要把它转移到另外的地方,根据这条指令的要求,运算的结果应该是存放在 a 号的通用计算器里。好,那我们在最后一步回血,也就是保存结果的时候呢,用控制器把这个运算结果 传送到 a 号的同源计算器当中,这样我们就完成了执行指令的全部过程。 送完了这条指令,控制器也不会闲着,接着来执行下一条指令之后,他就去查看下一张任务单的位置, 跟刚才执行前一条指令的第一步是一样的,先去查看下一张任务单的位置,发现是二,那么就向组成发出我需要第二格的物, 然后组成呢,就会把第二个的任务单返回来。注意我们取回来以后呢,要自动更新成下一张任务单的位置啊,之后再做是三。 这个更新完以后,我们就像刚才一样,继续分析当前取回来这样任务单,并完成他所指定的任务,最后保存结果,然后再去取下一条指令,不断的重复,计算机就自动的运转起来了。 这个餐馆的工作的过程,其实就是我们计算机执行指令的过程, cpu 从组成中取出对应的指令,那么刚才厨师做的那项任务呢?对应于计算机当中,很可能是这样的, w 当中的计算器 a 有一个内容,然后组成的地址为六的这个单元里有一项内容, cpu 根据这条指令把组成中地址为六的单元的内容取出来,并把 cpu 内部计算器 a 的内容取出来,可能执行一个加法, 然后把运算的结果更新到 cpu 中的计算器 a a 当中,这样就完成了一条加法指令的运算。 这个冯诺伊曼结构的餐馆向我们展示了计算机运行的基本原理,不过餐馆仅仅只是餐馆, 从下一节我们就要开始探索真正的计算机的内部结构,不用担心,其实没有那么复杂。
听说你学过计算机组成原理,那你一定知道什么是冯诺伊曼结构吧?啊,这个我还真不知道。冯诺伊曼结构又被称为普林斯顿结构,目前所有的现代计算机都是基于他实现的,包括了你正在用来刷视频的手机和电脑, 甚至正在吃灰的电视都基于冯诺伊曼结构。那冯诺伊曼结构的内容是什么呢?这个问题非常简单,冯诺伊曼结构确定了现代计算机结构中的五大部件,分别为运算器、控制器、存储器、输入设备和输出设备。我们 可以用这个示意图来表示他们之间的关系。我们常见的鼠标、键盘可以视作输入设备,而显示器和耳机则可以视为输出设备。运算器顾名思 思议就是用来处理算数运算和逻辑运算的预算期,怎么知道自己处理什么数区呢?这个功能则要通过控制器来实现,控制器相当于整个计算机的指挥官,根据内存中的指令指挥各种部件完成相应的操作。 控制器和运算器共同组成了中央处理器,中央处理器就是我们所熟知的 epu, 而存储期则是冯诺伊曼架构的一个设计核心, 它可以分为内部存储器和外部存储器。外部存储器一般是硬盘、光盘和优盘这种用来存放暂时不用的程序和数据,并且可以和内部存储器交换数据。 而内部存储器则是插在主板上的内存条,内部存储器直接和 ctu 进行交互, 内存的空间大小、离机频率和计算机的计算速度有相当大的联系,所以如果想要提升自己的计算机运行流畅度,只要无脑升级内存条就可以了。今天你有没有听懂吗?关注我,给你带来更多有用的知识!
计算机组成中,运算和控制单元最为重要,发展成为了中央处理器 cpu。 而存储器是运算的基础,专门存储数据,不然连数都没记住,怎么能去做题呢?计算和存储在冯诺伊曼架构中是完全分开的两个物理单元, 处理器会严格按照指令从存储器中读取数据,执行运算,再存回存储器,就是执行一加一等于二这样一个最简单的计算, cpu 也要依次从存储中读取加数,执行运算,再存回计算结果。经历长期的硬件发展之后, cpu 计算能力突飞猛进, 存储的数量和速率却成了一个矛盾的问题。于是,人们根据存储的计算场景,逐渐发展出了硬盘、内存、缓存和计存器等不同存储戒指,来平衡存储容量和读取速率的问题。一方面,存储设备的戒指不同, 性质也不同。拿我们熟悉的硬盘和内存来讲,一般的内存 ram 是动态随机,存储器断电后,上面的数据就消失了,而硬盘采取磁戒指存储就是关机了,你电脑里的数据、图片和视频也不会消失。 另一方面,不同存储介质的容量和读取速率不同。总结起来就一句话,离 cpu 越近,存储空间越小,存储速率越高。 比如 cpu 内部自带存储器,读写速度最快,处理的是 cpu 正在运算的信息,而内存距离 cpu 较远,存储着与运算数据相关的信息,需要耗费更长的时间进行读取。 至于硬盘,作为信息的大仓库,存储的是 cpu 以后可能用到的信息。很多东西都是到我的硬盘里去吃灰吧, cpu 和他并不直接互动。
现代的计算机形态各异,但是究其本质,几乎全部采用了冯诺伊曼结构。要了解计算机,首先要知道什么是冯诺伊曼结构, 当然,否则一慢结构的内涵是非常丰富的。在这一节,我们先来探究其中的一些要点。 要说冯诺伊曼结构,我们就得从关于 adwalk 的报告草案说起。 在冯诺伊曼署名编写的这份报告中,详细描述了 adywalk 这台计算机的设计方案,从那之后 后一直到现在,绝大多数计算机都基于这个结构进行设计,这样的结构就被称为冯诺伊曼计算机结构,简称冯诺伊曼结构。 这是这份报告当中的一页,我们可以看到下方还有艾迪瓦克的字样。 这份报告长达一百零一页,虽然最终并未完稿,但其内容已经非常的丰富, 主要论述了两个重要的思想,第一,控制计算机的程序应该存放在纯属期中,而不是由开关连线来实现, 开关连线会大大降低计算机的运行效率。第二,计算机应该采用二进制,而不是十进制, 实际制的方式会导致计算机的内部结构变得异常的复杂。 这份报告还明确了计算机的内部结构应该由五个部分组成,包括运算器、控制器、存储器、输入设备和输出设备。我们想要了解这五个部分的含义,不妨先来看一个小例子, 让我们跨越到七十年代,在一九七一年诞生了世界上第一个商业微处理器英特尔四零零四。 图中这颗金色的芯片就是四零零四,它的面积很小,采用了十微米的制造工艺,内部晶体管两千两百五十个,主屏最高七百四十 k, 赫兹自长是四位, 那么跟今天相比,他的各项指标都显得非常落后了。现代的微处理器制造工艺已经达到了十纳米这个量级,晶体管数量甚至可以达到数十亿,而主屏也提高了几千倍 字长,现在常用的是六十四位或者三十二位。但是如果跟冯诺一曼所处的时代相比,四零零四已经拥有了非常不错的性能, 实际上四零零四拥有于恩尼亚可相当的性能。那四零零四是用来做什么的呢?其实他最初的目的并不是用来制造计算机的, 这就是四零零四最初的产品,大家看是什么?其实他就是一个计算器,和我们现在经常拿在手上用, 用的是同一个类型,那么当时正是应日本一家计算器的生产厂商的要求,英特尔才设计了四零零四。那我们把这台机器打开看一看, 这是这台机器的主板,我们把一个局部放大,中间这款金色的芯片自然就是四零零四, 他旁边这一块芯片是四零零幺,那么是一块只读的存储器,它里面存放的一些指令,但是只能读不能写,他的特点是断电以后内容不会丢失。 四零零四左边这块是四零零二,是一块随机存储器,它的特点在于可以很方便的进行读和写, 但是断电以后内容就会丢失。那么四零零三呢?是一位寄存器的芯片,那么实际用来负责进行输入和输出。 那我们可以看到四零零四之所以要叫四零零四,其实他还有一帮兄弟,从四零零幺、四零零二到四零零三,那么他们和四零零四一起呢,构成了一个完整的芯片组, 这个芯片的组合被称为 mcs, 那这张照片是这个芯片组的另一种实现, 同样也连接了这个计算器的键盘和打印机的输出。虽然这只是一个计算器,还算不上一台计算机,但他和 缝到一慢结构有着简洁明了的对应关系。首先,四零零四作为微处理器或者叫 cpu, 其实包含了运算器和控制器的功能, 四零零二对应的存储器,而键盘通过一片四零零三进行连接,构成了输入设备, 另一片四零零三连接的打印机构成了输出设备。在这里我们就可以看到,这个计算器其实非常简洁明了的对应了冯诺伊曼结构。 至于四零零幺,他并不属于我们现在要说的冯诺伊曼结构的五大组成部分,但是在冯诺伊曼结构当中也有他的一席之地, 这一点我们以后再说, 好回来看冯诺伊曼结构的要点。那冯诺伊曼结构中规定了计算机的五大组成, 第一部分,运算器简称 ca, 这是英文中央算术运算的缩写。 第二部分,控制器简称 cc, 这是中央控制的缩写, 存储器简称 m, 输入设备简称 i, 输出设备简称欧。这五大部分连接形成一体,就构成了冯诺伊曼结构的计算机。 那么冯诺伊曼结构除了说明计算机应该由这五大部分组成之外,还指出计算机的数据和程序均以二进制代码的形式,不加区别的存放在存储器中,存放位置有存储器的地址指定。 第三,计算机在工作时能够自动的从存储机中取出指令加以执行。当然这份报告中描述内容还有很多,我们先来看这几点,其实第二点和第三点,其核心内容就是我们所说的存储程序的概念, 那我们就围绕着运算器、控制器和存储器这一部分,先来看一看存储程序到底指的是什么。运算器、控制器和存储器是缝到 一慢结构的核心,如果要与现代计算机进行对照的话,运算器和控制器应该对应于现代计算机中的 cpu, 而存储器则对于现代计算机当中的主存储器,我们又常称之为主存或者内存。 cpu 和主存储器之间一般通过系统总线进行连接, 我们以个人计算机为例,在这块个人计算机的主板上会有 cpu 芯片, 主存通过主板上的系统总线进行连接。 首先我们来看组成是如何组织的,我们要关注两个名词,一个是地址,一个是内容。 地址是指每个存储单元对应的序号,一般是从零开始,零一二三逐个编制,在这里我们是用二进制进行表示的, 而内容是指存储单元中存放的信息。在现代计算机当中,一般一个存储单元就是一个字结,也就是八个二进之位。 组成的地址和内容的关系我们再来解释一下,就好比有这么一个货架,这个货架有四层,那我们为每一格进行一个编号,那么编为第零格、第一格、第二格、第三格,这些编号就相当于组成的地址, 而货架上存放的物品就是组成的内容,组成中存放的就是我们计算机 当中所需要使用的程序和数据,那么存储程序的概念又是如何体现的呢?我们一起来看。 如果把冯诺一曼结构的计算机比作一个餐馆的话,其中的 cpu 就好比是厨房储存,好比是餐馆当中的仓库, 在 cpu 当中,大厨自然就是控制器,运算器呢,就好比是厨具,你给了他不同的原料,经过运算以后就可以得到相应的结果。 那么在仓库当中就放满着我们刚才所说过的那样的货架,有很多,而且货架是 被连续编号的,第一个货架编了零一二三,第二个是四五六七啊,后面我们隐约还能看到有很多的货架,那么这些货架上放的是什么呢?我们可以看到这里有一些像一张一张纸一样的东西, 他就是这个餐馆厨师会要用的任务单,上面会写着让你这个厨师接下来该做些什么事。一张任务单上写着一条指令啊,可能是让你炒一个菜,也可能让你从库房搬一个东西,这都有可能。 对计算机来说,这就是一条一条的指令,若干条的指令就可以组合成一个程序,把这个程序存放在存储器当中,这就是存储程序的一个很重要的概念。后面这些蔬菜这样就餐馆的原料了,就相当于计算机当中的数据, 这里就体现出了逢动应办结构当中所说的将程序和数据不加区分的存放在存储期当中, 那么不是防盗一般结构又是什么样的呢?就好比这个餐馆里的库房里存放的全是原料,就是这些蔬菜原料。没有这些任务单,厨师的任务呢,是通过别的方式发布给厨师的,比如说要通过餐馆的经理 直接把任务单送到厨师这来,送一张任务单,厨师就完成一项任务,这就是艾尼亚克的工作方式。 那大家觉得这样有什么不好呢?这似乎更自然一些,我们现实生活中也是这样的,哪有把厨师要做的任务单跟这些蔬菜放在一起的,对吧?前提在于现实的生活中这样的运转可能没有问题。 餐馆的经理给厨师下达这个任务单的速度也挺快。送来一张任务单,厨师做一盘菜,过一会又送来一张任务单,厨师再做一盘菜的衔接是非常合适的。对于计算机来说,他的要点在于 cpu 运转的很快,即使恩尼亚克那个时候的速度也是相当快的, 而外部人们能给他下指令的速度太慢了。我们想象一下,这个餐馆如果开在火星,我们一次已经把他做菜所需要的原料运到了火星这个餐馆的仓库里了。 但是厨师要做的事情呢?确实有我们地球上的这个经理一张一张任务单送过去的。我们现在到火星送一张任务单过去,可能要花一年的时间。厨师收到这张任务单以后,很快就从仓库里取来了蔬菜,然后做了一盘菜,可能就花十分钟的时间,然后他怎么办呢?只能坐在那接着等第二张任务单,因为他不知道 下面该做什么了。再等一年,再收到一张任务单,再花十分钟做一盘菜,这样的效率大家看到是非常低的,而这正好就是艾尼亚克的工作方式。 现在我们就能明白了冯诺伊曼结果中存储程序的概念。计算机所需要的程序和数据通过输入设备进入了存储器, 控制器发出地址给存储器,获得程序当中的对应的指令,还可以得到相应的数据。 控制器发命令给运算器,指挥运算器及对数据进行相应的运算,运算器可能会返回一些运算的状态,比如说适合正确完成等等,最后还会将运算的结 存放到存储器中,最后还需要通过输出设备将结果输出到计算机外部的某些存储戒指上,这样才能完成整个计算的过程。 现在我们已经知道了冯诺伊曼结构中最重要的部分,那这个结构又是如何运转的呢?下一节我们将通过一个小故事来了解这一点。
现在的计算机属于冯诺伊曼体系结构,这套体系是由数学家约翰冯诺伊曼提出的。该体系结构指出计算机制造的三个基本原则,一、采用。二、进制逻辑。二、程序存储执行。三、计算机由五个部分组成。 今天就来说一下计算机的五大组成部分,分别是运算器、控制器、存储器、输入设备以及输出设备。运算器是计算机中执行各种算数和逻辑运算操作的部件。 控制器是计算机的指挥中心,指挥计算机的各个部件按照指令的功能要求协调工作。运算器和控制器和称为中央处理器,简称 cpu。 存储器可分为内存储器和外存储器。内存储器又分为指读存储器和随机存取存储器。 常见的外存储器有硬盘、光盘、 u 盘等,而中央处理器和存储器合成为主机。然后就是输入设备和输出设备,常见的输入设备有键盘、鼠标、摄像头、扫描仪等, 而显示器、打印机、音响等都属于输出设备。点个赞吧!
如果你想超过百分之五十的计算机科班同学,先把计算机捣乱看三遍,然后 c 语言教材看三遍,最后习题代码上机撸一遍。如果你想超过百分之八十的计算机科班同学,先找一本计算机全国联考大纲,然后按照里面的知识点 计算机讨论、计算机组成原理、计算机网络操作系统、数据结构、 c 语言离散数学。想做到以上内容,你至少要两年起步。