首页 >
计算机科学
✍ dations ◷ 2024-11-05 16:34:32 #计算机科学
计算机科学(英语:computer science,有时缩写为CS)是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现(英语:implementation)与应用的实用技术的学科。 它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;有些强调特定结果的计算,比如计算机图形学;而有些是探讨计算问题的性质,比如计算复杂性理论;还有一些领域专注于怎样实现计算,比如编程语言理论是研究描述计算的方法,而程序设计是应用特定的编程语言解决特定的计算问题,人机交互则是专注于怎样使计算机和计算变得有用、好用,以及随时随地为人所用。有时公众会误以为计算机科学就是解决计算机问题的事业(比如信息技术),或者只是与使用计算机的经验有关,如玩游戏、上网或者文字处理。其实计算机科学所关注的,不仅仅是去理解实现类似游戏、浏览器这些软件的程序的性质,更要通过现有的知识创造新的程序或者改进已有的程序。尽管计算机科学(computer science)的名字里包含计算机这几个字,但实际上计算机科学相当数量的领域都不涉及计算机本身的研究。因此,一些新的名字被提议出来。某些重点大学的院系倾向于术语计算科学(computing science),以精确强调两者之间的不同。丹麦科学家Peter Naur建议使用术语"datalogy",以反映这一事实,即科学学科是围绕着数据和数据处理,而不一定要涉及计算机。第一个使用这个术语的科学机构是哥本哈根大学Datalogy学院,该学院成立于1969年,Peter Naur便是第一任教授。这个术语主要被用于北欧国家。同时,在计算技术发展初期,《ACM通讯》建议了一些针对计算领域从业人员的术语:turingineer,turologist,flow-charts-man,applied meta-mathematician及applied epistemologist。 三个月后在同样的期刊上,comptologist被提出,第二年又变成了hypologist。 术语computics也曾经被提议过。在欧洲大陆,起源于信息(information)和数学或者自动(automatic)的名字比起源于计算机或者计算(computation)更常见,如informatique(法语),Informatik(德语),informatika(斯拉夫语族)。著名计算机科学家艾兹赫尔·戴克斯特拉曾经指出:“计算机科学并不只是关于计算机,就像天文学并不只是关于望远镜一样。”("Computer science is no more about computers than astronomy is about telescopes.")设计、部署计算机和计算机系统通常被认为是非计算机科学学科的领域。例如,研究计算机硬件被看作是计算机工程的一部分,而对于商业计算机系统的研究和部署被称为信息技术或者信息系统。然而,现如今也越来越多地融合了各类计算机相关学科的思想。计算机科学研究也经常与其它学科交叉,比如数学、工程学、认知科学和经济学等。计算机科学被认为比其它科学学科与数学的联系更加密切,一些观察者说计算就是一门数学科学。 早期计算机科学受数学研究成果的影响很大,如库尔特·哥德尔、艾伦·图灵、路莎·彼得(英语:Rózsa Péter),阿隆佐·邱奇等数学家的研究,这两个领域在某些学科,例如数理逻辑、范畴论、域理论和代数,也不断有有益的思想交流。早期计算机科学创建的基础得追溯到最近电子计算机的发明。那些计算固定数值任务的机器,比如算盘,自古希腊时期即已存在,而用于加快计算的算法更是在算盘等古老的计算仪器发明之前就已被广泛使用。Wilhelm Schickard在1623年设计了世界上第一台机械计算器,但没有完成它的建造。布莱兹·帕斯卡在1642年设计并且建造了世界上第一台可以工作的机械计算器Pascaline。1673年,莱布尼兹开始了步进计算器(英语:Stepped reckoner)的建造工作并于1694年竣工,他也因为记录了二进制系统而被认为是第一个计算机科学家和信息理论家。埃达·洛夫莱斯协助查尔斯·巴贝奇在维多利亚时代设计了差分机。1900年左右,打孔机问世。然而以上这些机器都局限在只能完成单个任务,或者充其量是所有可能任务的子集。到了20世纪40年代,随着更新更强大的计算机器(如ABC计算机、电子数值积分计算机)被发明,术语“计算机”开始用于指代那些机器而不是它们的祖先。计算机的概念变得更加清晰,它不仅仅用于数学运算,总的来说计算机科学的领域也扩展到了对于计算的研究。20世纪50年代至20世纪60年代早期,计算机科学开始被确立为不同种类的学术学科。 世界上第一个计算机科学学位点由普渡大学在1962年设立。随着实用计算机的出现,很多计算的应用都以它们自己的方式逐渐转变成了研究的不同领域。虽然最初很多人并不相信计算机可能成为科学研究的领域,但是随后的50年里也逐渐被学术界认可。IBM公司是那段时期计算机科学革命的参与者之一。在那段探索时期,IBM(International Business Machines的缩写)发布的IBM 704以及之后的IBM 709计算机被广泛使用。“不过,使用IBM电脑工作仍然是一件很沮丧的事情。如果你弄错了一条指令中的一个字母,程序将会崩溃,而你也得从头再来。”20世纪50年代后期,计算机科学学科还在发展阶段,这种问题在当时是一件很常见的事情。随着时间的推移,计算机科学技术在可用性和有效性上都有显著提升。现代社会见证了计算机从仅仅由专业人士使用到被广大用户接受的重大转变。最初,计算机非常昂贵,要有效利用它们,某种程度上必须得由专业的计算机操作员来完成。然而,随着计算机变得普及和低廉,已经几乎不需要专人的协助,虽然某些时候援助依旧存在。虽然计算机科学被认定为一门正规学科的历史很短暂,但它对科学和社会做出了许多根本性的贡献ー事实上,计算机科学与电子学一样,是信息时代的奠基科学,也是信息革命的驱动力,被视为继工业革命(公元1750-1850年)和新石器革命(公元前8000-5000年)之后人类技术进步的第三次重大飞跃。这些贡献包括:Peter Wegner(英语:Peter Wegner)提出计算机科学可以分成三个领域:数学、工程学、科学。Amnon H. Eden提议了三种范式应用于计算机科学的各个领域:作为一个学科,计算机科学涵盖了从算法的理论研究和计算的极限,到如何通过硬件和软件实现计算系统。 CSAB(以前被叫做Computing Sciences Accreditation Board),由Association for Computing Machinery(ACM)和IEEE计算机协会(英语:IEEE Computer Society)(IEEE-CS)的代表组成,确立了计算机科学学科的4个主要领域:计算理论,算法与数据结构,编程方法与编程语言,以及计算机组成与架构。CSAB还确立了其它一些重要领域,如软件工程,人工智能,计算机网络与通信,数据库系统,并行计算,分布式计算,人机交互,计算机图形学,操作系统,以及数值和符号计算。广义的理论计算机科学包括经典的计算理论和其它专注于更抽象、逻辑与数学方面的计算。算法指定义良好的计算过程,它取一个或一组值作为输入,经过一系列定义好的计算过程,得到一个或一组输出。算法是计算机科学研究的一个重要领域,也是许多其他计算机科学技术的基础。算法主要包括数据结构、计算几何、图论等。除此之外,算法还包括许多杂项,如模式匹配、部分数论等。按照Peter J. Denning的说法,计算机科学的最根本问题是“什么能够被有效地自动化?”计算理论的研究就是专注于回答这个根本问题,关于什么能够被计算,去实施这些计算又需要用到多少资源。为了试图回答第一个问题,递归论检验在多种理论计算模型中哪个计算问题是可解的。而计算复杂性理论则被用于回答第二个问题,研究解决一个不同目的的计算问题的时间与空间消耗。著名的“P=NP?”问题,千禧年大奖难题之一,是计算理论的一个开放问题(英语:open problem)。信息论与信息量化相关,由克劳德·香农创建,用于寻找信号处理操作的根本极限,比如压缩数据和可靠的数据存储与通讯。编码理论是对编码以及它们适用的特定应用性质的研究。编码(code)被用于数据压缩,密码学,前向纠错,近期也被用于网络编码。研究编码的目的在于设计更高效、可靠的数据传输方法。编程语言理论是计算机科学的一个分支,主要处理编程语言的设计、实现、分析、描述和分类,以及它们的个体特性。它属于计算机科学学科,既受影响于也影响着数学、软件工程和语言学。它是公认的计算机科学分支,同时也是活跃的研究领域,研究成果被发表在众多学术期刊,计算机科学以及工程出版物。形式化方法是一种特别的基于数学的技术,用于软件和硬件系统的形式规范、开发以及验证。在软件和硬件设计方面,形式化方法的使用动机,如同其它工程学科,是通过适当的数学分析便有助于设计的可靠性和健壮性的期望。但是,使用形式化方法会带来很高的成本,意味着它们通常只用于高可靠性系统,这种系统中安全或保安(security)是最重要的。对于形式化方法的最佳形容是各种理论计算机科学基础种类的应用,特别是计算机逻辑演算,形式语言,自动机理论和形式语义学,此外还有类型系统、代数数据类型,以及软件和硬件规范和验证中的一些问题。计算机系统结构,或者数字计算机组织,是一个计算机系统的概念设计和根本运作结构。它主要侧重于CPU的内部执行和内存访问地址。这个领域经常涉及计算机工程和电子工程学科,选择和互连硬件组件以创造满足功能、性能和成本目标的计算机。操作系统是管理电脑硬体与软体资源的电脑程序,同时也是电脑系统的核心与基石。作业系统需要处理如管理与配置记忆体、决定系统资源供需的优先次序、控制输入与输出设备、操作网路与管理文件系统等基本事务。作业系统也提供一个让用户与各电脑设备互动的操作接口。并发性(concurrency)是系统的一种性质,这类系统可以同时执行多个可能互相交互的计算。一些数学模型,如Petri网、进程演算和PRAM模型,被创建以用于通用并发计算。分布式系统将并发性的思想扩展到了多台由网络连接的计算机。同一分布式系统中的计算机拥有自己的私有内存,它们之间经常交换信息以达到一个共同的目的。计算机网络是管理遍及全球的计算机连接成的网络的计算机科学分支。计算机安全是计算机技术的一个分支,其目标包括保护信息免受未经授权的访问、中断和修改,同时为系统的预期用户保持系统的可访问性和可用性。密码学是对于隐藏(加密)和破译(解密)信息的实践与研究。现代密码学主要跟计算机科学相关,很多加密和解密算法都是基于它们的计算复杂性。数据库是为了更容易地组织、存储和检索大量数据。数据库由数据库管理系统管理,通过数据模型和查询语言来存储、创建、维护和搜索数据。计算机图形学是对于数字视觉内容的研究,涉及图像数据的合成和操作。它跟计算机科学的许多其它领域密切相关,包括计算机视觉、图像处理、计算几何与可视化,同时也被大量运用在特效和电子游戏。科学计算(或者计算科学)是关注构建数学模型和量化分析技术的研究领域,同时通过计算机分析和解决科学问题。在实际使用中,它通常是计算机模拟和计算等形式在各个科学学科问题中的应用。多媒体技术是指通过计算机对文字、数据、图形、图像、动画、声音等多种媒体信息进行综合处理和管理,使用户可以通过多种感官与计算机进行实时信息交互的技术,又称为计算机多媒体技术。这个计算机科学分支旨在创造可以解决计算问题,以及像动物和人类一样思考与交流的人造系统。无论是在理论还是应用上,都要求研究者在多个学科领域具备细致的、综合的专长,比如应用数学,逻辑,符号学,电机工程学,精神哲学,神经生理学和社会智力,用于推动智能研究领域,或者被应用到其它需要计算理解与建模的学科领域,如金融或是物理科学。人工智能领域开始变得正式源于Alan Turing这位人工智能先驱提出了图灵试验,以回答这样一个终极问题:“计算机能够思考吗?”软件工程是对于设计、实现和修改软件的研究,以确保软件的高质量、适中的价格、可维护性,以及能够快速构建。它是一个系统的软件设计方法,涉及工程实践到软件的应用。计算机科学和软件工程的关系是一个有争议的话题,随后关于什么是“软件工程”,计算机科学又该如何定义的争论使得情况更加混乱。David Parnas从其它工程和科学学科之间的关系得到启示,宣称计算机科学的主要重点总的来说是研究计算的性质,而软件工程的主要重点是具体的计算设计,以达到实用的目的,这样便构成了两个独立但又互补的学科。一些教授计算机科学的大学主要进行计算和算法推理的研究。其中包括计算理论、算法分析、形式化方法、并行理论、数据库、计算机图形学以及系统分析等。通常也教授程序设计,但仅仅将它看作是支持计算机科学其它领域的介质,而不是高级研究的重心。其它一些学院、大学、中学以及职业培训的计算机科学课程则主要侧重于训练高级编程,而不是算法和计算理论。这些课程着重教授那些对于软件工业很重要的技能。像这样的计算机编程过程通常被叫做软件工程。然而,尽管计算机科学专业日益推动着美国经济,但是计算机科学教育依然不存在大多数美国K-12课程中。2010年10月由ACM和计算机科学教师协会(CSTA)共同发表了一篇名为“Running on Empty: The Failure to Teach K-12 Computer Science in the Digital Age”的报告,文中揭示了仅有14个州通过了有意义的高中计算机科学教育标准。同时,仅有9个州将高中计算机科学课程算作毕业要求的核心学科。配合“Running on Empty”这篇文章,一个新的无党派宣传联盟:Computing in the Core(CinC)被创建,以影响联邦和政府政策,比如Computer Science Education Act要求政府拨款以制定计划完善计算机科学教育及支持计算机科学教师。在中国,“计算机科学”或“计算机科学与技术”是工科(一级门类)下的二级专业。一般可细分为三级专业:
相关
- 利巴韦林利巴韦林(英语:Ribavirin,俗称病毒唑),是一种抗病毒药,属合成核苷类药,1970年由ICN制药公司Joseph T. Witkowski合成。对许多DNA和RNA病毒有抑制作用,其机理尚不清楚。美国食品药物
- 博特氏病博特氏病(英语:Pott disease 或 英语:Pott's disease)是一种发生在椎骨(肺部以外)的结核菌感染。结核病能影响数种肺部以外的组织,包括脊椎,这是一种结核菌引起的椎间关节炎。此病是
- 原发性醛固酮增多症原发性高醛固酮症(Primary aldosteronism),又称康氏症(Conn's syndrome),是肾上腺生产过量醛固酮而造成肾素水平下降而导致的一种疾病,通常症状不严重。大多数人会引起高血压,导致视
- 沙门氏菌感染症沙门氏菌感染症(英语:Salmonellosis),又称沙门氏杆菌病,由沙门氏菌属细菌感染所造成的疾病通称。在感染沙门氏菌之后的12至72小时内,患者通常会出现腹泻,发烧,呕吐与腹痛的症状。这
- 盘菌亚门盘菌亚门是子囊菌门的一亚门。属于大型子囊菌类,且包含了几乎所有可以裸眼观见成熟个体的子囊菌类,(例外: Neolecta 属于外囊菌亚门)。此类真菌无性生殖时是经由细胞分裂而不是经
- 双鞭毛生物无根虫门 Apusozoa 泛植物 Archaeplastida 有孔虫界 Rhizaria 囊泡藻界 Chromalveolata双鞭毛生物是其真核细胞具有两个鞭毛的一种生物,是真核生物的两大类群之一。双鞭毛生
- 分体病毒科分体病毒属 Partitivirus α隐藏病毒属Alphacryptovirus β隐藏病毒属 Betacryptovirus分体病毒科(Partitiviridae)
- 淀粉样物质淀粉样物质(英语:amyloid)是一种不可溶的纤维性蛋白质,“淀粉样物质”,港澳台称为“类淀粉蛋白”。在器官中不正常的堆积,会造成类淀粉沉积症(amyloidosis)。在许多神经性疾病,如阿兹
- 血脑屏障脑血管障壁(英语:blood–brain barrier ,BBB),也称为血脑屏障或血脑障壁,指在血管和脑之间有一种选择性地阻止某些物质由血液进入大脑的“屏障”。19世纪末,保罗·埃尔利希在一个实
- 毒蝇鹅膏菌毒蝇伞(学名:Amanita muscaria)又称毒蝇鹅膏菌,为一种含神经性毒害的担子菌门真菌,分类上为鹅膏菌科鹅膏菌属的物种。毒蝇伞的生长环境遍及北半球温带和极地地区,且也无意间拓展到