书籍作者:[英] 丹尼尔·希利斯(W. | ISBN:9787557687755 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:9854 |
创建日期:2021-02-14 | 发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
● 虽然计算机技术及应用以及编程技术都取得了巨大进步,对社会产生的影响也远远超出了预言家的预期,但计算机背后的工作原理,即本书所阐述的关于计算机的概念,仍没有改变。本书聚焦计算机背后不曾改变的基本原理,是每一个想要了解计算机,或从事与计算机相关工作的读者都不能错过的一本经典之作。
● 《丹尼尔·希利斯讲计算机》深入浅出地阐述了计算机科学中许多基本而重要的概念,包括布尔逻辑、有限自动机、编程语言、图灵机的普遍性、信息论、算法、并行计算、量子计算、神经网络、机器学习乃至自组织系统。全书既不失深度,又妙趣横生,帮你了解计算机运行背后的奥秘。
丹尼尔·希利斯
● 著名计算机科学家、发明家、企业家,麻省理工学院媒体实验室客座教授。曾就读于麻省理工学院,在马文·明斯基的指导下研究人工智能。
● 他还创立了思维机器公司(Thinking Machines Corporation),建立了一支由科学家、工程师和设计师组成的团队,成员包括诺贝尔奖得主悉尼·布伦纳、著名物理学家理查德·费曼等,他们共同致力于打造超级并行计算机。
● 除了设计公司的主要产品外,希利斯还与其他用户密切合作,将其产品应用在天体物理学、飞机设计、金融分析、遗传学等领域。
● 畅销全球,累计被翻译成十多种语言,计算机领域的经典之作!
● 世界上运行z快的计算机的设计者丹尼尔·希利斯,为你揭示计算机运行背后永恒不变的基本原理!
● “科学大师书系”经典再现。中国科学院院士、复旦大学教授金力,科技创新研究者、清华大学教授陈劲,世界著名哲学家、《直觉泵和其他思考工具》作者丹尼尔·丹尼特重磅推荐!
● 湛庐文化出品。
计算机背后不曾改变的基本原理
本书初版问世很久之后,我的出版商惊讶地发现:它在当下仍然很受欢迎。这也是我有机会为本书写再版前言的原因。本书已被翻译为十几种语言,至今仍有众多读者。自本书问世以来,计算机技术及应用发生了天翻地覆的变化。不过本书并不着眼于计算机的具体技术及应用,而是关注计算机背后不曾改变的基本原理,这也是本书能持续热卖的关键所在。
我必须承认,令我感到诧异的不是在数字革命之初就已存在的那些关于计算机科学的原理如今依然很重要,而是迄今为止,几乎没有新的原理补充进来。10 多年过去了,虽然计算机技术及应用以及编程技术都取得了巨大进步,对社会产生的影响也远远超出了预言家的预期,但计算机背后的工作原理,即本书所阐述的关于计算机的概念,仍没有改变。我本来想利用再版的机会增添一些新内容,但令我感到吃惊的是,并无新的基本原理可供补充。
在目前的版本中,我选择性地删除了一些无须再费笔墨解释的概念。不过,这并非意味着这些内容是错误的。例如,在一个每天都享受云并行计算服务的读者看来,并行计算方面的内容并无新意。真正令人费解的是,为何20 世纪有如此多的专家都坚信,并行计算机永远不会被投入使用。此外,如今的你们可能会对本书中有关人工智能的观点有所抵触,因为目前你们与智能机器相处得十分融洽。事实上,20 世纪时许多人对智能计算机的概念感到惶恐不安,比如,当计算机第一次击败人类国际象棋冠军时,许多人感到很沮丧。然而,过了不到20 年,当计算机在一项流行的益智电视节目中再次击败人类冠军时,更多人开始为计算机鼓劲加油。从那时起,人们普遍将计算机视为助手而非威胁。
除了修订拼写错误之外,我尽可能地保持了本书初版的原汁原味,不去刻意提高文字的感性程度,实际上,感性是一种不断变化的浮动目标。与其紧跟必将过时的当下潮流,还不如让作品定格在某一时刻更为有趣。同时,本书写成于计算机科学发展历程中的一个特殊时期,虽然那时计算机已经显示出了足以改变我们生活的潜力,但这一切很大程度上还未实现。那时的计算机非常简单,以至于我对自己设计的计算机的每个晶体管和所编写的每行代码都了如指掌。不过,正如本书最后一章预期的那样,我们现在到达了一个临界点,即计算机系统的复杂度已经超出了任何人所能完全理解和掌握的程度。
关于未来的发展,本书提出了两个可能的方向。第一个是量子计算,正如书中所述,它具有巨大的潜力,但目前并无可行的实现方式。当我写下这句话时,现实情况仍是如此。从理论和技术方面来说,量子计算取得了巨大突破,但它们中的任何一个的计算速度都比不上传统计算机。正如本书初版所述,量子计算仍是“一个值得关注的领域”。本书预测的第二个可能方向是,计算机能像生物进化过程那样实现自我设计。目前,这个方向已经显现出了隐约的曙光,不过在很大程度上,它只是一个未实现的可能方案。目前,我们还缺乏相关理论来说明这个过程如何才能成为现实。我对未来发现这些新原理持乐观态度,期待能够在本书的后续版本中继续讨论。
[前言]
石头中的魔术
在一块石头上,我蚀刻了一系列几何图案,在外行看来,这些图案显得神秘而又复杂,但我清楚地知道,只要布局正确,这些图案就会赋予这块石头一种特殊的能力,即对人类从未说过的一种咒语做出回应。如果我用这种语言提问,石头便会应答:这是一个我用符咒创造的世界,一个在石头图案中想象的世界。
如果我在几百年前的老家新英格兰说出自己从事的职业,可能会被当作巫师送上火刑柱。实际上,我的工作和巫术没有任何关系,我从事的是计算机设计和编程,而上文提到的石头是硅晶片,符咒是软件程序。虽然蚀刻在芯片上的几何图案和指示计算机工作的程序看起来复杂且神秘,但根据一些基本的生成原理,我们很容易将其解释清楚。
虽然计算机是人类有史以来最复杂的人造物,但从基本原理上来说,它们又十分简单,仅有数十人的团队就能设计并制造出包含数十亿个零部件的各类计算机。如果将其中一台计算机的线路图在纸上画出来,那么所用的纸张便能塞满一座大型公共图书馆,没有人会有耐心将其浏览一遍。幸运的是,计算机的设计具有规律性,没有必要将线路图看一遍。计算机是由不同层次的部件构建起来的,而每一层次的部件都会被重复多次。只要理解了这些层次结构,你就能读懂计算机。
还有一个使计算机易于理解的原理,那就是其各部件之间交互作用的本质。这些交互作用很简单,而且定义明确,通常具有单向性,可以准确地排列成一系列因果关系,这使计算机内部的运行原理比汽车发动机或者收音机的运行原理更容易理解。虽然相比于汽车和收音机,计算机拥有更多零部件,但这些部件协同工作的方式非常简单。计算机更多依据的是概念,而非技术。
这些概念与组成计算机的电子元件没有任何关系。现代计算机由晶体管和电路组成,不过,根据同样的原理,计算机也可以由阀门和管道,或者棍棒和绳索搭建起来。这些原理是计算机能够进行计算的根本所在。计算机最引人称道的一点是,其本质远胜于技术,而本书就旨在介绍计算机的本质。
我多么希望在刚开始学习计算机这门学科时就能读到这样一本书。大多数计算机类书籍不是介绍计算机的使用方法,便是介绍具体的创造技术,比如只读存储器(ROM)、随机存储器(RAM)、磁盘驱动器等。这本书讨论的重点是“概念”,而且会介绍计算机科学领域的大多数重要概念,包括布尔逻辑、有限状态机、编程语言、编译程序和解释程序、图灵准则、信息论、算法及其复杂度、启发式方法、不可计算的函数、并行计算、量子计算、神经网络、机器学习和自组织系统等。对计算机感兴趣的读者可能已经听说过其中的许多概念,但对于非计算机专业出身的人来说,很难明白这些概念是如何结合在一起的。本书将会介绍这些关联—从类似开关的闭合等简单的物理过程开始,一直深入到自组织并行计算机所呈现出来的学习和自适应能力。
计算机的本质基于几条基本原则。第一条原则是功能抽象原理(functional abstraction),它奠定了前文提到的因果关系层次结构。计算机的结构就是这一原理的应用范例,即许多层次结构能够被不断重复。计算机之所以易于理解,是因为你可以专注于某一层次结构发生的情况,而不必担心较低层次结构上发生的细节。功能抽象原理是使概念与技术脱离的关键。
第二条原则是通用计算机原理(universal computer),即所有的计算机都属于同一种类型,更确切地说,所有类型的计算机在能做和不能做哪些事上是相似的。我们也可以这样说,一台通用计算机能够模拟所有类型的计算机,无论其组成材料是晶体管、棍棒、绳索,还是神经元。这是一个非常重要的假设,它表明,制造一台能像大脑一样思考的计算机只是一个进行正确编程的问题,我将在后面详细解释这一点。
从某种意义上来说,第三条原则是第一条原则的对立面,我将在最后一章展开详述。也许存在一种全新的计算机设计和编程方式,它并不基于标准的工程设计方式。这一设想令人感到无比兴奋,因为当系统过于复杂时,常规的系统设计方式将不再有效。实际上,第一条原则会导致系统带有一定程度的脆弱性和低效性。这个缺点与信息处理器的基础性缺陷没有关系,而是层次设计方式的一个缺陷。那么,如果我们采用一种与生物进化相似的设计过程,情况会如何呢?在这个设计过程中,系统行为源自很多简单交互作用的累积,而非“自上而下”的控制。通过这种进化过程设计出来的计算机可能具有生物体的某些健壮性和适应性。至少,这是一种希望。我们还未完全参透这一设计方式,它也可能会被证明行不通。这是目前我研究的一个课题。
前 言 石头中的魔术- 001
01基础知识- 007
布尔逻辑 010
二进制位和逻辑块 021
液压计算机 025
万能工匠—积木 029
不必担忧那些非同小可的差异 031
02通用构件- 033
逻辑功能 035
有限状态机 047
03编程- 059
与计算机对话 063
建立连接关系 077
翻译语言 086
层次结构 087
04图灵机的通用性- 089
图灵机 092
计算能力等级 094
随机数 097
可计算性 099
量子计算 103
05算法和启发式方法- 111
算法的保证性 114
解决问题的万能方法 121
适应度地形 127
06存储:信息和密码- 131
压缩 136
加密 144
查错 146
07速度:并行计算机- 153
并行性 157
08能自我学习和进化的计算机- 173
训练计算机 179
神经网络 182
自组织系统 189
09超越工程- 193
大脑 197
模块化的问题 201
模拟进化 203
进化出会思维的机器 207
致 谢
购物方便快捷,快递给力!
2021-01-15 12:58:33