单从技术史的角度看计算机的发展史,似乎那么多形成条件是偶合的,不免惊叹于它的奇妙,但如果从产品的角度梳理它的原理又觉得理所当然。
一、图灵机的概念
作为产品首先得有它的"idea",构想它的人是图灵,他提出了“图灵机”的概念,图灵机通常被认为是现代通用计算机的原型。图灵的基本思想是用机器来模拟数学运算,他把这样的过程看作下列两种简单的动作:
1.在纸上写上或擦除某个符号;2.把注意力从纸的一个位置移动到另一个位置;
而在每个阶段,人要决定下一步的动作,依赖于:
(a) 此人当前所关注的纸上某个位置的符号和(b) 此人当前思维的状态。
根据这种模拟思想,图灵构造出一台假想的机器:
这个机器有一个有穷控制器,一条输入带和一个带头,带被分成许多单元,带头在每个时刻扫视带上的一个单元。该带有一个最左单元,向右则无限。带的每个单元正好可容纳有穷个带符号中的一个。开始时,最左边n个单元(n≥0,是一有穷数)放着输入,它是取自带符集的一个字符串,其余无穷多单元放空自符。空自符是特殊带符号,但不是输入符号。基本模型可图示如下:
在一个动作中,图灵机根据带头扫视的符号和有穷控制器的状态,执行如下操作:①改变状态。②在被扫视的带单元上打印一个符号,以代替原有的符号。③将带头向左或向右移动一个单元。
在每一时刻,机器所处状态,带子上已写符号的所有格子以及机器当前扫视的格子位置,统称为机器的格局。图灵机从初始格局出发,按程序一步步把初始格局改造为格局的序列。此过程可能无限制继续下去,也可能遇到指令表中没有列出的状态、符号组合或进入结束状态而停机。在结束状态下停机所达到的格局是最终格局,此最终格局就包含机器的计算结果。
这个思想构造有三个关键点:模拟、符号和自动化,缺任何一个都与图灵的构想南辕北辙。如果没有模拟我们甚至可以将一个简单的物理过程表述成类似图灵机的形式,比如把一块石头受风从坡上滚落理解成某个时刻根据自己当前的状态和外部的某个状态输入改变自己的状态并且输出改变外部的状态,然后进入下一个时刻;如果没有符号呢?我们可以把人从事的任何机械过程都当作一种模拟,比如人看到石头对其他物体的破坏作用而模仿它的过程对其他物体进行机械性的敲击活动;如果不是自动化呢?那就是失去了制造它的意义了。所以说图灵机本质上是模仿人的大脑所进行的语言活动,使之成为一种由人运用的万用工具。人的语言可以干什么?(a)可以认识世界,通过少数感觉器官;(b)可以思考、传播,也就是说在头脑里面重新构造,在不同个体之间复制;(c)可以指导行动,通过少数运动器官;
当然,人脑的原理至今仍未研究清楚。图灵机起先被设想用来数学运算,数学也是语言符号的一种,说到这就得追根溯源了,简单来说就是古埃及和苏美尔人创造了文字,其中包含基本的数学符号和经验公式,古希腊人继承了他们的很多知识,有些古希腊学者不明所以对数学问题尤其热忱(我估计是一种宗教追求,或者对有信仰的人来说的真理追求,出于当时多神教的混乱局面,古希腊有识之士期望找到一种统一,可惜大众不买账,从他们判了苏格拉底死刑到后来又选择了基督教可以看出),从泰勒斯、毕达哥拉斯一脉相承着,发展出物理学、逻辑学等严谨性科学,也包括形而上学、神学等气质性大于严谨性的学说,这一精神和知识又被后来的西方人继承了,走的相当远,但万变不离其宗,也就是努力的用简洁的符号量化和公理化世间的万事万物,其中主要的研究着手是人思维中的某些切面-抽象自觉,为了追求完美,还设想只存于人脑的对象,比如几何图形,数学就是这种形式上最严谨的语言,显然比古埃及和苏美人口语化表述高明得多。后来莱布尼茨创立了二进制(1679年),布尔创立了数理逻辑(1847年),是计算机的思想来源,这些理论一路发展,直至1937年图灵提出图灵机的概念,将游离于现实世界的抽象符号重新于与实体建立联系,接着香农提出逻辑电路(1937年),将数理逻辑和电学结合起来,让图灵机在物理上有了实现的可能,然后是冯·诺依曼提出存储程序原理(1946年),把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式储存,成为现代最常用的计算机体系结构。
图灵机需要什么构件呢?它需要输入和输出的设备,但这不是核心,所以留到后面讲。图灵机作为语言处理机器最核心的功能是对语言的处理,输入的状态1+自身的状态1=输出的状态2+自身的状态2,用数学的形式表述就是它需要一套符号、公理作为控制要素,数据作为状态要素,然后进行运算、存储,这些在香农的设想中由逻辑电路来完成。逻辑电路由门电路构成,而门电路又由开关电路构造,计算机的基础构件就是由一个个开关电路组成。毕达哥拉斯派以为物体是用数学之点排列出的形状,他们分类出不同的数,研究出不同的公式,直到碰到了令人难堪的无理数问题,实在解决不了只好把提这个问题的希伯索斯淹死在海里,计算机也有一个很著名的停机问题,其实跟无理数问题也是一脉相承,这个问题太深,还是先搞清楚计算机的基本原理再说,从开关电路说起。
二、计算机的基本原理
一个最简单的电路加上一个开关,它有两个状态:通和断,正好可以分别表示二进制中的单位:1和0,也叫做比特,开关电路有一些简单的串并联物理效应,中学物理都学过:串联电路需要开关都合上电流才通,并连电路只需要一个开关合上电流就通,用逻辑符号表示:
布尔代数和开关电路的对应关系这种表示方法叫做真值表,表征逻辑事件输入和输出之间全部可能状态,原则上可以设置任意复杂的真值表,然后根据真值表设计逻辑电路:
这个简单电路可以表示为:F=A·B+C1. 门电路
接着就可以做门电路了,门电路还需要另外一个构件——继电器,继电器利用电磁原理,有两个电路,第一个电路通电产生电磁使得第二个电路的开关吸合或吸开,第一个电路断电失磁第二个电路开关因弹簧或利用其他物理原理恢复之前状态。常用的门电路在逻辑功能上有与门、或门、非门、与非门、或非门、与或非门、异或门等几种。非门其实就是一个会吸开的继电器,其他门电路也是由继电器构成,常见的门电路示例:
2. 全加器和加法机
不能用门电路直接进行数学运算,因为有进位,比如在二进制中1+1=10,做运算需要用门电路构造基础运算器(加减乘除),拿最简单的加法来举例,做加法的基础零件是全加器,全加器实现两个二进制数相加,多个全加器的组合叫加法器,能实现多比特数相加,如图:
3个全加器组成的3比特加法机,结果输出4比特,如110+101=1011。 一个方盒表示一个全加器,单个全加器有三个输入A、B、Ci,两个输出Co、S。 三个输入分别表示两个加数在相同位上的数及它们前一位相加的进位数,两个输出分别表示三个输入相加得到的本位和进位数根据输入和输出的有无设计真值表,然后根据真值表用门电路制造全加器,如下图:
到这儿符号、公理、运算都有了,数据可以输入和输出,似乎只差个存储,但是不要忘了图灵机的核心能力之一是自动化,那么我们不仅需要存储还需要自动化的控制器。要制造控制器首先需要用门电路构造几个与全加器不同的零件,包括振荡器、触发器,再用振荡器、触发器构造更复杂的触发器、寄存器等等。
3. 振荡器和触发器
振荡器是把非门的输出分出一支作为它输入,这种自我反馈机制使得它的输入和输出电路按一定频率反复不断的通电-断电,它的另外一个输出分支也是交替变化,电流交替几乎是瞬间完成,然后维持一段时间的通电或断电状态,从电流波形状是方波,因为变化有一定频率,所以振荡器产生的方波是脉冲。
R-S触发器:触发器可以保存数据,也可以清除数据,前提是不管开关电路闭没闭上,电源得保持连通状态,所以它的存储是临时的。最简单的触发器叫R-S触发器,它的逻辑图如下:
很容易发现电流总是R=Q',S=Q,更关键的是如果R=S=0,Q、Q'会维持之前的状态,也就是具有存储功能;如果R=S=1,则Q、Q'归零。D触发器:对R-S触发器稍加改造,比如用一个电路和它的非门分别作为R、S输入,使得两个输入总是相反,Q‘端空置,还可以在两个输入线上都加与门由一根控制线控制,这个东西叫做带控制端的D触发器,一般就叫D触发器,D表示它能在CP=1的时候写入一个比特的数据(0或1),如图:
D触发器和它的符号边缘触发器:两个D触发器的Q端串联,它们的CP端同一个控制线及其非门控制,使得无论第一个触发器的D端输入了什么,只有在控制端接通(对应电流波形的上升沿)或断开(对应电流波形的下降沿)的瞬间数据才会保存,这个叫边缘触发器:
上升沿触发器及其符号,它与D触发器符号的不同之处在于CP端加了个小三角表示上升沿T触发器:将上升沿触发器的另一个输出Q ̅(即Q')反馈到它的输入D,那么CP端每一次接通,Q输出就会交替一次,这个叫T触发器(乒乓触发器、反复触发器),很多单键开关的家用电器如台灯就是这个原理:
4. 寄存器、计数器
循环位移寄存器:将多个上升沿触发器的输入输出串联成闭合电路,它们的CP端用一个振荡器控制,使得每一次脉冲前一个触发器的状态会转换到下一个触发器上,循环往复,走马灯就是这个原理:
5个输出的循环位移寄存器,图上5个灯泡随着振荡器的震荡按顺序循环点亮计数器:多个T触发器相接,前一个T触发器的Q ̅输出作为后一个T触发器的CP输入,那么每一次脉冲都会导致从前到后的T触发器系列的输出端状态按顺序发生翻转,它会产生二进制的效果,这个装置叫计数器,如图:
寄存器:将多个T触发器接续,用同一个控制端,它们的D、Q各自引出作为写和读,可以保存多比特二进制数,这个叫寄存器:
保存5比特的寄存器5. 传输门和存储器
传输门:传输门用一个开关控制多条线路的通断,原理上它也是继电器;
比特单元:边缘触发器加传输门用来制造存储器,存储器由比特单元和地址译码器构成,其中比特单元是只能保存一个比特的存储器,由一个上升沿触发器和传输门构成,而且只有一个出入口,也就是说同时只能有一个数据进或出:
单比特存储器,也叫比特单元 G是传输门,传输门未接通的时候只能写,传输门接通只能读存储器:跟寄存器一样,多个比特单元并列,用同一个W和R控制就可以保存多比特二进制数了,这在存储器中叫楼层,也是存储单元,而通常一个存储器有非常多的楼层,给他们按顺序编排,然后用一个地址译码器连接它,那么每个楼层对应一个地址,地址译码器作为一种控制器,也是根据真值表然后用门电路制造的,下图以有五个单元每个单元能保存5比特的存储器为例:
这个存储器用来干什么呢?跟我们日常用的“硬盘”概念不同,它不是单纯用来存储数据的,它是冯·诺依曼体系架构中的存储器,也就是把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式储存,执行一个程序连同它的数据我们叫做冯诺依曼任务,比如我们要计算:10+5+7+2+6,我们可以在存储器的顺序楼层写下这样的数:
上图中有两个数10001、10010分别表示装载、相加,这两个数在计算机意义上被称为操作码,而被相加的数如01010、00101等叫做操作数,操作码表示指示功能的指令,指示计算机执行一条任务,操作码在存储器中是精心布置的,存储器并不知道它有什么意义,但在控制器会用到它们。指令的数量有限,一台计算机内置的指令叫指令集,装载和相加未必是10001和10010,不同厂商生产的计算机控制器能识别什么操作码通常也不一样。
6. 全自动加法机
现在万事具备了,我们来构造全自动的加法电路,还是拿5位二进制加法机来示例,值得一说的就是现代计算机的运算构件不止五位,流行的有32位、64位:
5比特全自动加法机挨个解释下:
AC是计数器:因为冯诺依曼任务在存储器中顺序存储,所以计数器表示存储器地址,每启动一次地址自动加1。
AR是寄存器:寄存从AC发出的表示地址的二进制数,以便转交给存储器。
R-W存储器:R表示读取,因为此电路展示的是读取,所以W端缺省。
DR是寄存器:寄存从存储器读取出的某个地址的数据。
IR:指令寄存器,专门用来临时保存指令,指令来源于存储器。
EC:译码电路,专门翻译当前指令,由IR输入。它识别IR中取出的操作码,翻译成I-相加、I-装载、T-停机三个输出的状态。
GA是传输门:用来切断或连通从RR到GA传输的存储器数据。
RA是寄存器:用来存储从存储器中取出的数或经加法器相加反馈回来的数。
加法器:做加法运算,这里只是举例,当然也有其他运算器如减法器、乘法器、除法器。
TR是临时寄存器:用来暂存加法器输出的数。
GB是传输门:用来切断或连通TR向RA的反馈。
振荡器:完成反复开关当作指令步骤,它经过一个与门一个非门再与RR相接,使得它的脉冲上升沿时RR得到是下降沿。
RR是循环位移寄存器,它有8个输出端,对应于八个加法步骤。
译码器:译码器一种形式的输入转换翻译成另外一种形式的输出,具体形式根据电路需要的真值表设计。
- 其他空方盒都表示与门或非门(根据符号)。
- EC、译码器等作为控制单元,根据真值表来设计电路,这里不述赘言。
- 图中所有的I都表示电流,其中I-HLT、I-装载、I-相加、I-停机以及GB到RA的反馈线路中的电流是向左流动,其他线路中的电流向右流动。
- I-IR、I-AC、I-AR、I-DR、I-GA、I-RA、I-TR都经由一个与门,为方便表示,它们的与门从译码器获得的电流符号皆加一瞥表示,如I-IR的与门输入是I-IR'。
加法运算的步骤可详细拆分为:
RA上接入一个新的控制器然后再接到存储器上,可以将RA上最终的运算结果保存下来,有一个小小的问题:加法器相加得到的数超出存储单位能存储的位数怎么办?很简单,上图5比特加法机的加法器上其实有六根输出,被弃置的一根表示进位,把它接到一个D触发器上,再转接到新控制器再到存储器上,当然我们还得对控制器进行一番设计,数据存储到存储器中的两个相临地址(一般前一个地址表示进位,后一个地址写本位),当使得D触发器的输出=1时将,第一个地址写入一个1,第二个地址写其余位上的数,在作加法时,还得分别取数相加,当然,操作指令会有些不一样,电路就会更复杂一些,这里只给出它的简单示意图:
三、现代通用计算机
1. CPU和内存
到目前为止,一台图灵意义的计算机算是完成了,然而这样的计算机定然效率极低、功能单一,还需要对它进行升级改造,为此人类在半个多世纪时间发明了很多硬件和软件的技术,而且仍在非常快速的升级换代。硬件方面最基础的继电器先后被电子管和晶体管替代,晶体管由半导体制成,单向导电且可控,它的原理简单来说就是通过中间的栅极控制另两级电流的有无,并且栅极具有信号放大的作用:
用半导体做成的继电器-晶体管体积可以极小,省电、耐用,而晶体管振荡器可以以极高的频率震荡,极大的提升了计算机的运算效率。然后人们又发明了工业化流水线技术,将晶体管集成在本征硅上,现在的工艺据说能在一个指头大的芯片上集成几百亿个晶体管。而存储器除了用半导体集成电路来做外,还可以用电容来作为存储介质,流水线技术对大规模逻辑电路进行集成,现代计算机的控制器一般是这样的结构:
微代码ROM其实是只读寄存器,在出厂时已经制造好了的,它输出是存储器地址,而存储器存储的微代码(Microcode)就是计算机能执行的指令,它有助于将机器指令和底层电子器件分开,以使指令的设计和更改更加自由,如果计算机的设计发生改变,可以根据需要改变它的输出来修改它的功能,而不必拆掉所以零件重新组装。
控制器和运算器等一堆组件再集成一下,制成微处理器,用于微型机上,也就是我们买手机电脑配置中必见的CPU,它的基本组成部分有:寄存器堆、运算器、时序控制电路,以及数据和地址总线。将运算器中的存储器单独封装成内存(内存中除了存储器还包含其他元件),内存是处理器的原料和成品仓库。
研究者为了提高运算时效和数据传输效率又发明了CPU意义上的流水线技术、高速缓存技术、执行多任务的中断技术,以及还有为方便外接设备互相传输技术的直接内存存取和节约内存空间的虚拟内存技术等等,工程师们为了计算机提高效率、节省成本竭尽所能。
2. I/O设备和接口
CPU和内存只能暂存数据,所以需要外接静态的存储,也就是俗话说的磁盘或硬盘,最初的“磁盘”是纸带或卡片,数据保存于上面的孔,现在比较常用的有光盘、机械硬盘、固态硬盘,原理大抵都是电磁感应,有兴趣的可以自行 了解。计算机运算时将硬盘中的程序和数据读入到内存再运行。
一台标准家用计算机配置鼠标、键盘、显示器,还提供相机、手机、U盘等接口,这些统称为I/O设备,通过一些外接设备计算机实现了将物理过程转化成模拟信号(连续变化的电流)再转化成数字信号(用特殊的电路取模拟信号的阈值、量化为离散的二进制数),而输出过程与此相反。
如果每一个外接设备都出厂配置或提供单独插口显然不可能,因此在计算机核心和设备之间构造逻辑电路,构造一些外部的寄存器,在CPU或内存上增加指令,对于不同的设备用不同的指令,用统一的地址编码, 就像是协议——接收外部设备送来的信息或将信息发送给外部设备,这些逻辑电路-存储器就像一个个出口,称为I/O接口,其中一些寄存器叫端口。现在很多外接设备自带一部分接口,在上面有微处理器、存储器、转码/解码器、端口等等,比如显示器有显存、显卡,提高数据传输和运算的效率。
3. 操作系统和软件
有了外接设备计算机能实现的功能就不止是数学运算了,虽然计实现所有功能实质上都是二进制运算,更准确的表达是逻辑电路堆上的电流流动,但我们对不同的二进制可以制定标准赋予其不同的意义,比如ASCII(美国信息交换标准代码)就是为常用的256个字符制定的一种方便不同计算机和设备之间传输数据的二进制编码标准,有传输控制代码,比如00001010表示换行;也有定义常用字符,比如00110000表示十进制数48,或者字符-按键“0”,键盘就遵循这个标准,敲一个键向计算机传入的是一个ASCII二进制码。那计算机怎么理解这些特殊意义呢?这就需要编好的软件程序来转化,以十进制计算125+66为例:
1. 首先计算机拿到用户按下的1、2、5三个键对于的ASCII码,如按键"1"对应00110001。
2. 00110001又对应十进制49,所以计算机让它与48的二进制相减,拿到了用二进制表示的十进制1。
3. 2和5的操作相同。
4. 然后计算机把这三个数字(二进制)合并一下,也就是1·100+2·10+5,得到125的的二进制数。
5. 按下"+"键,得到ASCII码为00101011,计算机转译它为相加指令,执行相加动作。
6. 再按下6、6,按照类似上面的步骤,最终得到结果191。
让人类理解计算机的运行结果同样是通过软件转化输出到I/O设备上,比如显示器,现在常用的液晶显示器运用液晶在电压下改变排列方向而改变旋光性的原理,用电光源、三个带原色滤镜的液晶旋光元件构成一个像素,几百万个像素点的色彩明暗构成一副图,软件将计算机二进制用专门用于解析显示器图像的图形处理器(GPU)解析成表示每一个像素元件的电流强弱有无的信号,从而在屏幕上显示图形。
那么计算机程序是怎么回事呢?这就得说到操作系统。现代计算机除了CPU的控制器中写死了的指令,在出厂时还会配置内存(RAM)、只读存储器(ROM)作为基础程序存储器,以及硬盘、键盘、显示器等外接设备,在硬盘默认安装操作系统,操作系统作为一种程序,避免了计算机像流水一般的静默运行,它管理计算机系统的硬件、软件及数据资源,控制程序运行,提供人机界面,让用户通过I/O设备的操作来调用计算机的程序、数据,使得硬盘上的软件和数据文件像菜单一样等着人去操作。计算机从启动到进入操作系统大概是这么一个过程(以机械硬盘为例):
- CPU通过地址总线直接访问ROM和RAM,ROM用于固化一些指令,在计算机启动时首先访问,这些指令集一般称为基本输入/输出系统BIOS。固化的指令又很多,主要有初始化:检测一下计算机的各个部件(比如中央处理器自己的一些内部零件);有访问一些外部设备的指令,也就是设备驱动程序,不过它包含的只是少量常用设备,比如键盘、打印机、显示器、硬盘。计算机启动先挨个访问这些指令,用于检测计算机的各个基本硬件电路,整个过程又叫做POST(加电自检,或者叫上电自检)。
- 自检完后进行系统初始的布置,接着它运行操作系统的部分:读取硬盘0面0磁道第一个扇区的内容进内存,然后用一个跳转指令进行内存中执行这些数据。
- 硬盘0面0磁道第一个扇区称为主引导扇区,有512字节,包含446字节的启动指令和数据,后面64字节时分区表,最后2字节必须时01010101和10101010,表示主引导区时有效的,这两个二进制数称为“花码”。分区表之名当前硬盘分成几个部分,总共允许4各主分区,每个分区的资料有16字节,指明分区的起始位置、大小、类型以及是否为活动分区。原则上类型是一个二进制数,表明该分区由哪种操作系统负责管理,因为每次只能启动一个操作系统;活动分区的意思时可以启动或应该被启动的,4各主分区中只允许一个活动分区。
- ROM中读取和检测完主引导扇区指令之后时一个跳转指令,跳转到内存接着执行主引导扇区读到内存中的指令。主引导扇区的启动指令时分析读入内存的分区表,取得活动分区,然后算出该分区起始位置,从活动分区读入操作系统写在那的引导代码,把它读入内存接着执行。如此一环接一环,从主引导扇区开始操作系统把自己读入内存并开始执行的过程称为“自举”。
硬盘上有两种东西,一种是软件程序,合适的时候被CPU执行;另一种本质上不是处理器可以识别的指令,而是软件处理的材料,比如文档、音乐文件等。软件用意是提高计算机任务的编写效率和复用性,我们在操作系统上编写程序,当然不会是直接用二进制码编写,所以程序员门定义了许多适用于计算机又易被人理解和编写的语法,设计编译器软件能将用此语法写出的文件编译成机器二进制指令,用某种程序设计语言编写程序就叫编程,编好的程序文件运行时由相应的编译器解释成二进制指令然后运行。最接近机器码的编程语言是汇编,特定的汇编语言和特定的机器语言指令集是一一对应的,而较高级的如C#,更接近于人的日常语言,不同的设计语言适用于不同的环境。
就这样,计算机和人之间经过硬件、软件多层的转义实现相互理解,从而让计算机完成人交予的任务。
四、哪种形式的人工智能最为可能?
现在回过头来看,计算机实现的其实是数学解决问题的一种方式,作为来源于抽象直觉的知识,人并不能直接的认识到“真实”,即便如我现在进行的活动:敲打着键盘,看到一朵花,它在我认识中就是直觉,很难说清楚它到底是什么,只能说它是我先天生理和过去所有经验的一个抽象,从这个意义上讲只要认识了直觉,就相当于认识了世界,因此对于世间一切事物,只要人能识别它的某些特征,就能用数学来描述,进而在计算机上模拟它,今年谷歌搞出的大新闻——用深度学习原理开发的名为“阿尔法狗”的围棋程序战胜人类顶级棋手就是一个例证。那么很自然的有此疑问产生:人工智能会实现吗?
对于计算机而已,一切都是数据,或者是电子脉冲,而对于神经系统中一切都是动作电位。人和计算机似乎是相似的,但不全然如此,神经获取电位需要细胞外离子,神经之间传递电位需要化学递质,而整个神经系统液体环境受激素的调节,往大了说,整个人体系统还受微生物的调节,脑与神经系统内存在几千种物质,比较熟知的如多巴胺,作为一种作用于细胞传送脉冲过程的神经传导物质,它影响人的情绪、思维,还有5-羟色胺,它也是一种兴奋性神经递质,在脑中的缺失会导致人的抑郁。这些化学、物理乃至生物因子直接或间接的改变神经细胞的细胞透性、受体分子、物质浓度,从而影响动作电位的产生、传递,对人脑而言从输入、运算再到输出每一个细微的环节都受到各种因素的影响,数据早已面目全非,而这些物质的水平,可能取决于一餐饭、一件事,也可能由长久的生活习惯导致,人的系统特质从卵子受精开始就受基因和环境的影响不断的改变,无法量化,往久远了说,某些物质的作用可能从单细胞原始生物进化开始就写入基因,而人经过数十亿年之进化,这些看起来很混乱复杂的硬件、软件,但却能有效的维持内部环境和适应外部环境,难以用自动化来解释,有特别需求时总会通过创造来体现它的能力。
计算机当然能实现智能,而且远远的超越人类,关键在于如何定义智能,从人的意义上讲计算机要实现人类的智能要走很长很长的路,有什么特别的意义需要它持续的走这条路吗?这个可能性很容易被其他可能替代。当然只要计算机有的潜能人就会用它实现各种需求,或许有人制造出能全天候模拟某种“常人”的产品,一些人把这种拟人当作真人携手共度一生;也会有其他需求,有些需求出于坏的目的,可能会导致新闻出现这样的大标题:“人类正在被人工智能取代”、“人工智能即将消灭人类!”。
如果冲突在即,利用计算机提升自身能力的人类和利用计算机替代自身的人类哪一方会取得胜利?我认为这样的事情不会大范围的发生,因为计算机展现了另外一种更强大的能力,那就是作为一种自然法则意义上的智能,人类已经逐渐脱离原始自然界的法则,进入新的法则,这个法则由于互联网的发展初见端倪,它同时定义了人类整体和计算机的行为,我们人类很可能就在这智能自然界中与它相互适应,继续进化。
- 最后推荐一本书:李忠:《穿越计算机的迷雾》,这本书讲计算机的原理和发展历史,由浅入深,读来有趣,我看了这本书才写这篇文章,本文使用的大部分配图取自于它,已征得作者的同意。
网友评论