Loading AI tools
根据指令对数据进行处理的机器 来自维基百科,自由的百科全书
电脑(Computer)亦称电子计算机,是利用模拟或者数码电子技术,根据一系列指令指示并且自动执行任意算术或逻辑操作串行的装置。通用电脑因有能遵循被称为“程序”的一般操作集的能力而使得它们能够执行极其广泛的任务。[2]
![]() |
电脑被用作各种工业和娱乐装置的控制系统。这包括简单的特定用途装置(如微波炉和遥控器)、工业装置(如工业机器人和集成电路),及通用装置(如个人电脑和智能电话之类的移动设备)等。[3]尽管电脑种类繁多,但根据图灵机理论,一部具有着基本功能的电脑,应当能够完成任何其它电脑能做的事情。[4]因此,理论上从智能电话到超级计算机都应该可以完成同样的作业(不考虑时间和存储因素)。由于科技的飞速进步,下一代电脑总是在性能上能够显著地超过其前一代,这一现象有时被称作“摩尔定律”。[5]通过互联网,电脑互相连接,极大地提高了资讯交换速度,反过来推动了科技的发展。在21世纪的现在,电脑的应用已经涉及到方方面面,各行各业了。[6]
自古以来,简单的手动装置——就像算盘——帮助人们进行计算。在工业革命初期,各式各样机械的出现,初衷都是为了自动完成冗长而乏味的任务,例如织机的编织图案。更复杂的机器在20世纪初出现,通过模拟电路进行复杂特定的计算。第一台数码电脑出现于第二次世界大战期间。自那时以来,电脑的速度,功耗和多功能性则不断增加。在现代,机械计算机的应用已经完全被电脑所取代。
电脑在组成上形式不一。依然有大量体积庞大的巨型电脑为特别的科学计算或面向大型组织的事务处理需求服务。比较小的、为个人应用而设计的称为微型电脑(Personal Computer,PC),在中国大陆简称为“微机”。今天在日常使用“电脑”一词时通常也是指此,不过现在电脑最为普遍的应用形式却是嵌入式,嵌入式电脑通常相对简单、体积小,并被用来控制其它装置——无论是飞机、工业机器人还是数码相机[7]。
同电脑相关的技术研究叫电脑科学,而“电脑技术”指的是将计算机科学的成果应用于工程实践所派生的诸多技术性和经验性成果的总合。“电脑技术”与“电脑科学”是两个相关而又不同的概念,它们的不同在于前者偏重于实践而后者偏重于理论。至于由数据为核心的研究则称为资讯科技。
传统上,现代电脑包含至少一个处理单元(通常是中央处理器(CPU))和某种形式的存储器。处理器件执行算术和逻辑运算,并且排序和控制单元可以响应于存储的资讯改变操作的顺序。外围装置包括输入装置(键盘、滑鼠、操纵杆等)、输出装置(显示器屏幕、打印机等)以及执行两种功能(例如触摸屏)的输入/输出装置。外围装置允许从外部来源检索资讯,并使操作结果得以保存和检索。
本来,电脑的英文原词“computer”是指从事数据计算的人。而他们往往都需要借助某些机械计算装置或模拟电脑。
这些早期计算装置的祖先包括有算盘,以及可以追溯到公元前87年的被古希腊人用于计算行星移动的安提基特拉机械。随着中世纪末期欧洲数学与工程学的再次繁荣,1623年德国博学家Wilhelm Schickard率先研制出了欧洲第一部计算装置,这是一个能进行六位以内数加减法,并能通过铃声输出答案的“计算钟”。使用转动齿轮来进行操作。
1642年法国数学家布莱士·帕斯卡在英国数学家威廉·奥特雷德所制作的“计算尺”的基础上,将其加以改进,使能进行八位计算。还卖出了许多制品,成为当时一种时髦的商品。
1801年,法国人约瑟夫·玛丽·雅卡尔对织布机的设计进行改进,使用一系列打孔的纸卡片来作为编织复杂图案的程序。尽管这种被称作“雅卡尔织布机”的机器并不被认为是一部真正的电脑,但是其可编程性质使之被视为现代电脑发展过程中重要的一步。
查尔斯·巴贝奇于1820年构想和设计了第一部完全可程序化电脑。但由于技术条件、经费限制,以及无法忍耐对设计不停的修补,这部电脑在他有生之年始终未能问世。约到19世纪晚期,许多后来被证明对电脑科学有着重大意义的技术相继出现,包括打孔卡片以及真空管。德裔美籍统计学家赫尔曼·何乐礼设计了一部制表用的机器,其中便应用打孔卡片来进行大规模自动数据处理。
在20世纪前半叶,为了迎合科学计算的需要,许多专门用途的、复杂度不断增长的模拟电脑被研制出来。这些电脑都是用它们所针对的特定问题的机械或电子模型作为计算基础。1930-1940年代,电脑的性能逐渐强大并且通用性得到提升,现代电脑的关键特色被不断地加入进来。
1936年,艾伦·图灵提出了图灵机。
1937年,年仅21岁的麻省理工学院研究生克劳德·香农发表了论文《继电器和开关电路的符号分析》,文中首次提及数码电子技术的应用。他向人们展示了如何使用开关来实现逻辑和数学运算。此后,他通过研究万尼瓦尔·布什的微分模拟器进一步巩固了他的想法。这是一个标志着二进制电子电路设计和逻辑门应用开始的重要时刻,而这些关键思想诞生的先驱,应当包括:阿尔蒙·斯特罗格,他为一个含有逻辑门电路的装置申请了专利;尼古拉·特斯拉,他早在1898年就曾申请含有逻辑门的电路装置;李·德富雷斯特,于1907年他用真空管代替了继电器。
沿着这样一条上下求索的漫漫长途去定义所谓的“第一部电脑”可谓相当困难。1941年5月12日,德国工程师康拉德·楚泽完成了他的图灵完全机电一体电脑“Z3”,这是第一部具有自动二进制数学计算特色以及可行的程序化功能的电脑,但还不是“电子”电脑。此外,其他值得注意的成就主要有:
1941年夏天诞生的阿塔纳索夫-贝瑞电脑是世界上第一部电脑,它使用了真空管计算器,二进制数值,可复用内存;在英国于1943年被展示的神秘的巨像电脑(Colossus computer),尽管程序化能力极为有限,但是它使人们确信使用真空管既值得信赖,又能实现电气化的再编程;哈佛大学的哈佛一型;以及基于二进制的ENIAC,全名为电子数值积分计算器,这是第一部通用意图的电脑,但由于其结构设计不够弹性化,导致对它的每一次再编程都要重新连接电子线路。
1940年代的第二次世界大战中,为训练轰炸机飞行员,美国海军曾向麻省理工学院探询,是否能够开发出一款可以控制飞行模拟器的电脑。军方当初的设想只是希望经由该电脑将飞行员模拟操作产生的数据即时反映到仪表盘上。和以前的训练系统林克训练机不同,军方计划系统能尽可能真实地根据空气动力学模型进行模拟,以使其能适用于各种不同类型的飞机。于是麻省理工创造了旋风工程,其制造出了世界上第一台能够即时处理资料的旋风电脑,并发明了磁芯存储装置。这为个人电脑的发展做出了历史性的贡献。
开发埃尼阿克的小组针对其缺陷又进一步改善了设计,并最终呈现出今天我们所熟知的冯·诺伊曼结构(程序存储体系结构)。这个体系是当今所有电脑的基础。 20世纪40年代中晚期,大批基于此一体系的电脑开始研制,其中以英国最早。尽管第一部研制完成并投入运转的是小规模实验机(Small-Scale Experimental Machine,SSEM),但真正被开发出来的实用机很可能是延迟存储电子自动计算器(EDSAC)。
在整个1950年代,真空管电脑居于统治地位。1958年9月12日在后来英特尔的创始人罗伯特·诺伊斯的领导下,发明了集成电路。
不久英特尔又推出了微处理器。1959年到1964年间设计的电脑一般称为第二代电脑。
到了1960年代,晶体管电脑将其取而代之。晶体管体积更小,速度更快,价格更加低廉,性能更加可靠,这使得它们可以商品化生产。
1964年到1972年的电脑一般被称为第三代电脑。大量使用集成电路,典型的机型是IBM360系列。
到了1970年代,集成电路技术的引入大大地降低了电脑生产成本,电脑也从此开始走向千家万户。1972年以后的电脑习惯上被称为第四代电脑。基于大规模积体电路,及后来的超大规模积体电路。Intel 4004是美国英特尔公司 (Intel) 推出的第1款微处理器,也是全球第一款微处理器;1971年11月15日发布。1972年4月1日,英特尔推出8008微处理器。1976年,史蒂夫·乔布斯和斯蒂夫·沃兹尼亚克创办苹果电脑公司。并推出其Apple I电脑。1977年5月Apple II型电脑发布。1979年6月1日,英特尔发布了8位的8088微处理器。
1982年,微电脑开始普及,大量进入学校和家庭。1982年1月康懋达64电脑发布,价格595美元。
1982年2月Intel 80286发布。时脉提高到20MHz,并增加了保护模式,可存取640KB存储器。支持1MB以上的虚拟内存。每秒执行270万条指令,集成了134000个晶体管。
1990年11月,微软发布第一代MPC(Multimedia PC,多媒体个人电脑标准):处理器至少为80286/12 MHz(后来增加到80386SX/16 MHz),有光碟机,传输率不少于150 KB/sec。
1994年10月10日英特尔发布75MHz奔腾处理器。1995年11月1日,Pentium Pro发布。主频可达200MHz,每秒钟完成4.4亿条指令,集成了550万个晶体管。1997年1月8日英特尔发布Pentium MMX,对游戏和多媒体功能进行了增强。
此后电脑的变化日新月异,1965年发表的摩尔定律不断被认证,预测在2030年代以前依然适用。
尽管电脑技术自20世纪40年代第一部电子通用电脑诞生以来以来有了令人目眩的快速发展,但是今天电脑仍然基本上采用的是存储程序结构,即冯·诺伊曼结构。这个结构实现了实用化的通用电脑。
存储程序结构将一部电脑描述成四个主要部分:算术逻辑单元、控制电路、存储器及输入输出装置。这些部件通过一组一组的排线连接(特别地,当一组线被用于多种不同意图的数据传输时又被称为总线),并且由一个时钟来驱动(当然某些其他事件也可能驱动控制电路)。
概念上讲,一部电脑的存储器可以被视为一组“细胞”单元。每一个“细胞”都有一个编号,称为地址;又都可以存储一个较小的定长资讯。这个资讯既可以是指令(告诉电脑去做什么),也可以是数据(指令的处理对象)。原则上,每一个“细胞”都是可以存储二者之任一的。
算术逻辑单元(ALU)可以被称作电脑的大脑。它能做两类运算: 第一类是算术运算,比如对两个数码进行加减法。算术运算部件的功能在ALU中是十分有限的,事实上, 一些ALU根本不支持电路级的乘法和除法运算(理由是用户只能通过编程进行乘除法运算)。第二类是比较运算,即给定两个数, ALU对其进行比较以确定哪个更大一些。[8]
输入输出系统是电脑从外部世界接收资讯和向外部世界反馈运算结果的手段。对于一部标准的个人电脑,输入装置主要有键盘和滑鼠,输出装置则是显示器、打印机以及其他许多后文将要讨论的可连接到电脑上的I/O装置。
控制系统将以上电脑各部分联络起来。它的功能是从存储器和输入输出装置中读取指令和数据,对指令进行解码, 并向ALU交付符合指令要求的正确输入,告知ALU对这些数据做哪些运算并将结果数据返回到何处。控制系统中一个重要组件就是一个用来保持跟踪当前指令所在地址的计数器。 通常这个计数器随着指令的执行而累加,但有时如果指令指示进行跳转则不依此规则。
20世纪80年代以来ALU和控制单元(二者合称中央处理器)逐渐被集成到一块集成电路上,称作微处理器。 这类电脑的工作模式十分直观:在一个时钟周期内,电脑先从存储器中获取指令和数据,然后执行指令,存储数据,再获取下一条指令。这个过程被反复执行,直至得到一个终止指令。
由控制器解释,运算器执行的指令集是一个精心定义的数目十分有限的简单指令集合。一般可以分为四类:1)、数据移动 (如:将一个数值从存储单元A拷贝到存储单元B)2)、数逻运算(如:计算存储单元A与存储单元B之和,结果返回存储单元C)3)、 条件验证(如:如果存储单元A内数值为100,则下一条指令地址为存储单元F)4)、指令串行改易(如:下一条指令地址为存储单元F)
指令如同数据一样在电脑内部是以二进制来表示的。比如说,10110000就是一条Intel x86系列微处理器的拷贝指令代码。 某一个电脑所支持的指令集就是该电脑的机器语言。因此,使用流行的机器语言将会使既成软件在一部新电脑上运行得更加容易。所以对于那些机型商业化软件开发的人来说,它们通常只会关注一种或几种不同的机器语言。
更加强大的小型电脑,大型电脑和伺服器可能会与上述电脑有所不同。它们通常将任务分担给不同的CPU来执行。今天, 微处理器和多核个人电脑也在朝这个方向发展。[8]
超级计算机通常有着与基本的存储程序电脑显著区别的体系结构。它们通常有着数以千计的CPU, 不过这些设计似乎只对特定任务有用。在各种电脑中,还有一些微控制器采用令程序和数据分离的哈佛架构(Harvard architecture)。
以上所说这一些概念性设计的物理实现是多种多样的。如同我们前述所及,一部存储程序式电脑既可以是巴比奇的机械式的, 也可以是基于数码电子的。但是,数码电路能通过诸如继电器之类的电子控制开关来实现使用2进制数的算术和逻辑运算。 香农的论文正是向我们展示了如何排列继电器来组成能够实现简单布尔运算的逻辑门。其他一些学者很快指出使用真空管可以代替继电器电路。 真空管最初被用作无线电电路中的放大器,之后便开始被越来越多地用作数码电子电路中的快速开关。当电子管的一个针脚被通电后,电流就可以在另外两端间自由通过。
通过逻辑门的排列组合我们可以设计完成很多复杂的任务。举例而言,加法器就是其中之一。 该器件在电子领域实现了两个数相加并将结果保存下来—在电脑科学中这样一个通过一组运算来实现某个特定意图的方法被称做一个算法。 最终,人们通过数量可观的逻辑门电路组装成功了完整的ALU和控制器。说它数量可观,只需看一下CSIRAC这部可能是最小的实用化电子管电脑。 该机含有2000个电子管,其中还有不少是双用器件,也即是说总计合有2000到4000个逻辑器件。
真空管对于制造规模庞大的门电路明显力不从心。昂贵,不稳(尤其是数量多时),臃肿,能耗高,并且速度也不够快—尽管远超机械开关电路。 这一切导致20世纪60年代它们被晶体管取代。后者体积更小,易于操作,可靠性高,更省能耗,同时成本也更低。
20世纪60年代后,晶体管开始逐渐为将大量晶体管、其他各种电器器件和连接导线安置在一片硅板上的集成电路所取代。 70年代,ALU和控制器作为组成CPU的两大部分,开始被集成到一块晶片上,并称为“微处理器”。沿着集成电路的发展史,可以看到一片晶片上所集成器件的数量有了飞速增长。第一块集成电路只不过包含几十个部件,而到了2015年,一块Intel Core i7处理器上的晶体管数目高达十九亿之巨。
无论是电子管,晶体管还是集成电路,它们都可以通过使用一种触发器设计机制来用作存储程序体系结构中的“存储”部件。 而事实上触发器的确被用作小规模的超高速存储。但是,几乎没有任何电脑设计使用触发器来进行大规模数据存储。 最早的电脑是使用Williams电子管向一个电视屏或若干条水银延迟线(声波通过这种线时的走行速度极为缓慢足够被认为是“存储”在了上面) 发射电子束然后再来读取的方式来存储数据的。当然,这些尽管有效却不怎么优雅的方法最终还是被磁性存储取而代之。比如说磁芯存储器, 代表资讯的电流可在其中的铁质材料内制造恒久的弱磁场,当这个磁场再被读出时就实现了数据恢复。动态随机存储器亦被发明出来。它是一个包含大量电容的集成电路,而这些电容器件正是负责存储数据电荷—电荷的强度则被定义为数据的值。
输入输出装置(I/O)是对将外部世界资讯发送给电脑的装置和将处理结果返回给外部世界的装置的总称。 这些返回结果可能是作为用户能够视觉上体验的,或是作为该电脑所控制的其他装置的输入:对于一部机器人,控制电脑的输出基本上就是这部机器人本身,如做出各种行为。
第一代电脑的输入输出装置种类非常有限。通常的输入用装置是打孔卡片的读卡机,用来将指令和数据导入内存;而用于存储结果的输出装置则一般是磁带。随着科技的进步,输入输出装置的丰富性得到提高。以个人电脑为例:键盘和滑鼠是用户向电脑直接输入资讯的主要工具,而显示器、打印机、扩音器、耳机则返回处理结果。此外还有许多输入装置可以接受其他不同种类的资讯,如数码相机可以输入图像。在输入输出装置中,有两类很值得注意:第一类是二级存储装置,如硬盘,光碟或其他速度缓慢但拥有很高容量的装置。第二个是电脑网络访问装置,通过他们而实现的电脑间直接数据传送极大地提升了电脑的价值。今天,国际互联网成就了数以千万计的电脑彼此间传送各种类型的数据。
简单说,电脑程序就是电脑执行指令的一个串行。它既可以只是几条执行某个简单任务的指令,也可能是可能要操作巨大数据量的复杂指令队列。许多电脑程序包含有百万计的指令,而 其中很多指令可能被反复执行。在2005年,一部典型的个人电脑可以每秒执行大约30亿条指令。电脑通常并不会执行一些很复杂的指令来获得额外的机能,更多地它们是在按照程序员的排列来运行那些较简单但为数众多的短指令。
一般情况下,程序员们是不会直接用机器语言来为电脑写入指令的。那么做的结果只能是费时费力、效率低下而且漏洞百出。 所以,程序员一般通过“高级”一些的语言来写程序,然后再由某些特别的电脑程序,如解释器或编译器将之翻译成机器语言。 一些编程语言看起来很接近机器语言,如汇编程序,被认为是低级语言。而另一些语言,如即如抽象原则的Prolog,则完全无视电脑实际运行的操作细节,可谓是高级语言。对于一项特定任务,应该根据其事务特点,程序员技能,可用工具和客户需求来选择相应的语言,其中又以客户需求最为重要(美国和中国军队的工程项目通常被要求使用Ada语言)。
电脑软件是与电脑程序并不相等的另一个词汇。电脑软件一个较为包容性较强的技术术语,它包含了用于完成任务的各种程序以及所有相关材料。举例说,一个视频游戏不但只包含程序本身,也包括图片、声音以及其他创造虚拟游戏环境的数据内容。在零售市场,在一部电脑上的某个应用程式只是一个面向大量用户的软件的一个副本。这里老生常谈的例子当然还是微软的office软件组,它包括一系列互相关联的、面向一般办公需求的程序。
利用那些极其简单的机器语言指令来实现无数功能强大的应用软件意味着其编程规模注定不小。Windows XP这个操作系统程序包含的C++高级语言原始码达到了4000万行。当然这还不是最大的。如此庞大的软件规模也显示了管理在开发过程中的重要性。实际编程时,程序会被细分到每一个程序员都可以在一个可接受的时长内完成的规模。
即便如此,软件开发的过程仍然进程缓慢,不可预见且遗漏多多。应运而生的软件工程学就重点面向如何加快作业进度和提高效率与质量。
在电脑诞生后不久,人们发现某些特定作业在许多不同的程序中都要被实施,比如说计算某些标准数学函数。出于效率考量,这些程序的标准版本就被收集到一个“库”中以供各程序调用。许多任务经常要去额外处理种类繁多的输入输出接口,这时,用于连接的库就能派上用场。
20世纪60年代,随着电脑工业化普及,电脑越来越多地被用作一个组织内不同作业的处理。很快,能够自动安排作业时序和执行的特殊软件出现了。这些既控制硬件又负责作业时序安排的软件被称为“操作系统”。一个早期操作系统的例子是IBM的OS/360。
在不断地完善中,操作系统又引入了时间共享机制——并发。这使得多个不同用户可以“同时”地使用机器执行他们自己的程序,看起来就像是每个人都有一部自己的电脑。为此,操作系统需要向每个用户提供一部“虚拟机”来分离各个不同的程序。由于需要操作系统控制的装置也在不断增加,其中之一便是硬盘。因之,操作系统又引入了文件管理和目录管理(文件夹),大大简化了这类永久储存性装置的应用。此外,操作系统也负责安全控制,确保用户只能访问那些已获得允许的文件。
当然,到目前为止操作系统发展历程中最后一个重要步骤就是为程序提供标准图形用户界面。 尽管没有什么技术原因表明操作系统必须得提供这些界面,但操作系统供应商们总是希望并鼓励那些运行在其系统上的软件能够在外观和行为特征上与操作系统保持一致或相似。
除了以上这些核心功能,操作系统还封装了一系列其他常用工具。其中一些虽然对电脑管理并无重大意义,但是于用户而言很是有用。比如,苹果公司的Mac OS X就包含视频剪辑应用程式。
一些用于更小规模的电脑的操作系统可能没用如此众多的功能。早期的微型电脑由于记忆体和处理能力有限而不会提供额外功能,而嵌入式电脑则使用特定化了的操作系统或者干脆没有,它们往往通过应用程式直接代理操作系统的某些功能。
起初,体积庞大而价格昂贵的数码电脑主要是用做执行科学计算,特别是军用课题。如ENIAC最早就是被用作火炮弹计算和设计氢弹时计算断面中子密度的(如今许多超级计算机仍然在模拟核试验方面发挥着巨大作用)。澳大利亚设计的首部存储程序电脑CSIRAC负责对水电工程中的集水地带的降雨情形进行评估。还有一些被用于解密,比如英国的“巨像”可编程电脑。除去这些早年的科学或军工应用,电脑在其他领域的推广亦十分迅速。
从一开始,存储程序电脑就与商业问题的解决息息相关。早在IBM的第一部商用电脑诞生之前,英国约瑟·里昂公司就设计制造了里昂一号以进行资产管理或迎合其他商业用途。由于持续的体积与成本控制,电脑开始向更小型的组织内普及。加之20世纪70年代微处理器的发明,廉价电脑成为了现实。80年代,个人电脑全面流行,电子文档写作与印刷,计算预算和其他重复性的报表作业越来越多地开始依赖电脑。
随着电脑便宜起来,创作性的艺术工作也开始使用它们。人们利用合成器,电脑图形和动画来创作和修改声音,图像,视频。视频游戏的产业化也说明了电脑在娱乐方面也开创了新的历史。
电脑小型化以来,机械装置的控制也开始仰仗电脑的支持。其实,正是当年为了建造足够小的嵌入式电脑来控制阿波罗1号才刺激了集成电路技术的跃进。今天想要找一部不被电脑控制的有源机械装置要比找一部哪怕是部分电脑控制的装置要难得多。可能最著名的电脑控制装置要非机器人莫属,这些机器有着或多或少人类的外表和并具备人类行为的某一子集。在批量生产中,工业机器人已是寻常之物。不过,完全的拟人机器人还只是停留在科幻小说或实验室之中。
机器人技术实质上是人工智慧(AI人工智慧)领域中的物理表达环节。所谓人工智慧(AI人工智慧)是一个定义模糊的概念但是可以肯定的是这门学科试图令电脑拥有目前它们还没有但作为人类却固有的能力。数年以来,不断有许多新方法被开发出来以允许电脑做那些之前被认为只有人才能做的事情。比如读书、下棋。然而,到目前为止,在研制具有人类的一般“整体性”智慧的电脑方面,进展仍十分缓慢。
20世纪50年代以来电脑开始用作协调来自不同地方之资讯的工具,美国军方的贤者系统(SAGE)就是这方面第一个大规模系统。之后“军刀”等一系列特殊用途的商业系统也不断涌现出来。
70年代后,美国各大院校的电脑工程师开始使用电信技术把他们的电脑连接起来。由于这方面的工作得到了ARPA的赞助,其电脑网络也就被称为ARPANET。此后,用于ARPA网的技术快速扩散和进化,这个网络也冲破大学和军队的范围最终形成了今天的国际互联网。网络的出现导致了对电脑属性和边界的再定义。太阳微系统公司的约翰·盖吉和比尔·乔伊就指出:“网络即是电脑”。电脑操作系统和应用程式纷纷向能访问诸如网内其它电脑等网络资源的方向发展。最初这些网络装置仅限于为高端科学工作者所使用,但90年代后随着电邮和万维网技术的扩散,以及以太网和ADSL等网络连接技术的廉价化,互联网络已变得无所不在。今日入网的电脑总数,何止以千万计;无线互联技术的普及,使得互联网在移动计算环境中亦如影随形。比如在笔记本电脑上广泛使用的Wi-Fi技术就是无线上网的代表性应用。
90年代之后,在电话调制解调器MODEM 技术成熟后,由窄带的电话拨接,升级成为宽频数据,这代表网络新时代来临,由慢跑的速度改变而成开车的速度,也同时改变电脑用户习惯,更大大普及网络连络传讯的方式,如即时通或SKYPE等等,以往只能文字传讯提升至影音传输;而云端、大数据时代造就了各种新类型行业,如网络商店、网络电商、网络拍卖、网络销售、网络游戏、网络设计及架设,以及越来越普遍性的云端数据数据库或备份库,正在时时优化及改变现有人类的生活。
自问世以来数码电脑在速度和能力上有了可观的提升,迄今仍有不少课题显得超出了当前电脑的能力所及。 对于其中一部分课题,传统电脑是无论如何也不可能实现的,因为找到一个解决方法的时间还赶不上问题规模的扩展速度。因此,科学家开始将目光转向生物计算技术和量子理论来解决这一类问题。比如,人们计划用生物性的处理来解决特定问题(DNA计算)。由于细胞分裂的指数级增长方式,DNA计算系统很有可能具备解决同等规模问题的能力。当然,这样一个系统直接受限于可控制的DNA总量。
量子电脑,是利用了量子物理世界的超常特性,一旦能够造出量子电脑,那么它在速度上的提升将令一般传统电脑难以望其项背。[9]
如今, 人们正在积极研究用许多有前途的新型技术制造电脑,例如光学电脑、DNA 电脑、神经电脑和量子电脑。 大多数电脑都是通用的,能够计算任何可计算的函数,并且仅受其内存容量和运行速度的限制。 然而,不同的电脑设计可以为特定问题提供非常不同的性能; 例如,量子电脑可能会很快破解一些现代加密算法(通过量子分解)。
在当今世界,几乎所有专业都与电脑息息相关。但是,只有某些特定职业和学科才会深入研究电脑本身的制造、编程和使用技术,用来诠释电脑学科内不同研究领域的各个学术名词的涵义不断发生变化,同时新学科也层出不穷。
许多学科都与其他学科相互交织。如地理资讯系统专家就是利用电脑技术来管理地理资讯。
全球有三个较大规模的致力于电脑科学的组织:英国电脑学会;美国电脑协会(ACM);美国电机电子工程师协会。