徽标
联盟百科
通讯
下载应用,请到 Google Play
新! 在您的Android™设备上下载联盟百科!
自由
比浏览器更快的访问!
 

基本的電腦科學主題列表

指数 基本的電腦科學主題列表

電腦科學是資訊及理論基礎的研究以及電子計算機領域中的執行及應用,電腦科學中一個有名的主題分類系統是,它是由美國電腦協會所設計的,再電腦科學中一個基本的主題列表包括:.

75 关系: 博弈论可计算性理论子程序學科列表字符串宣告式編程对象 (计算机科学)密码学不變量中央处理器串列 (抽象資料型別)并发计算人机交互形式化方法信息信息檢索分布式计算函數程式語言图灵机图论神经生理学種系發生學程序员程序设计程式語言理論算法类型论編譯器编码理论编程语言编程范型生物信息学面向对象程序设计計算神經科學計算複雜性理論计算计算化学计算物理学计算机协会计算机安全计算机图形学计算机科学计算机系统结构计算机视觉认知科学資料類型软件工程软件测试迭代闭包...邏輯編程错误检测与纠正量子计算机自動機理論電子計算機電腦記憶體蛋白质折叠逆向工程Λ演算Prolog抽象化控制论控制流程正则表达式指令式編程有限狀態自動機操作系统数理逻辑数组数论数据库数据结构数据挖掘整数數值分析 扩展索引 (25 更多) »

博弈论

賽局理論(game theory),又譯為对策论,或者--,经济学的一个分支,1944年馮·諾伊曼與奧斯卡·摩根斯特恩合著《博弈論與經濟行為》,標誌著現代系統博弈理論的的初步形成,因此他被稱為「博弈論之父」。博弈論被認為是20世紀經濟學最偉大的成果之一。目前在生物学、经济学、国际关系、计算机科学、政治学、军事战略和其他很多学科都有广泛的应用。主要研究公式化了的激励结构(游戏或者博弈)间的相互作用。是研究具有斗争或竞争性质现象的数学理论和方法。也是運籌學的一个重要学科。.

新!!: 基本的電腦科學主題列表和博弈论 · 查看更多 »

可计算性理论

在计算机科学中,可计算性理论(Computability theory)作为计算理论的一个分支,研究在不同的计算模型下哪些算法问题能够被解决。相对应的,计算理论的另一块主要内容,计算复杂性理论考虑一个问题怎样才能被有效的解决。.

新!!: 基本的電腦科學主題列表和可计算性理论 · 查看更多 »

子程序

在计算机科学中,子程式(Unterprogramm, Subroutine, procedure, function, routine, method, subprogram, callable unit),是一個大型程式中的某部份程式碼,由一个或多个语句块组成。它負責完成某項特定--,而且相較於其他程式碼,具備相對的獨立性。 一般会有输入参数并有--,提供对过程的封装和细节的隐藏。这些代码通常被整合为软件库。 函数在-zh:程序導向;zh-tw:程序導向;zh-cn:面向过程-的语言中已经出现。是结构(Struct)和-zh:類別;zh-tw:類別;zh-cn:类-(Class)的前身。本身就是对具有相关性语句的归类和对某过程的抽象。.

新!!: 基本的電腦科學主題列表和子程序 · 查看更多 »

學科列表

這是一個學科的列表。學科是在大學教學(教育)與研究的知識分科。學科是被發表研究和學術雜誌、學會和系所所定義及承認的。 領域通常有子領域或分科,而其之間的分界是隨便且模糊的。 在中世紀的歐洲,大學裡只有四個學系:神學、醫學、法學和藝術,而最後一個的地位稍微低於另外三個的地位。在中世紀至十九世紀晚期的大學世俗化過程中,傳統的課程開始增輔進了非古典的語言及文學、物理、化學、生物和工程等學科,現今的學科起源便源自於此。到了二十世紀初期,教育學、社會學及心理學也開始出現在大學的課程裡了。 以下簡表展示出各大類科目,以及各大類科目中的主要科目。 "*"記號表示此一領域的學術地位是有爭議的。注意有些學科的分類也是有爭議的,如人類學和語言學究竟屬於社會科學亦或是人文學科,以及计算机技术是工程学科亦或是形式科学。.

新!!: 基本的電腦科學主題列表和學科列表 · 查看更多 »

字符串

字符串(String),是由零个或多个字符组成的有限序列。一般记为s.

新!!: 基本的電腦科學主題列表和字符串 · 查看更多 »

宣告式編程

宣告式編程(Declarative programming)是一種编程范式,与指令式編程相對立。它描述目標的性質,讓電腦明白目標,而非流程。声明式编程不用告诉电脑问题领域,从而避免随之而来的副作用。而指令式编程则需要用算法来明确的指出每一步该怎么做。 声明式编程通常被看做是形式逻辑的理论,把计算看做推导。声明式编程因大幅简化了并行计算的编写难度,自2009起备受关注。 声明式语言包括数据库查询语言(SQL,XQuery),正则表达式,逻辑编程,函数式编程和组态管理系统。 宣告式編程透過函數、推論規則或项重写(term-rewriting)規則,來描述變數之間的關係。它的語言執行器(編譯器或解释器)採用了一個固定的算法,以從這些關係產生結果。 宣告式編程語言通常用作解決人工智能和約束滿足問題。.

新!!: 基本的電腦科學主題列表和宣告式編程 · 查看更多 »

对象 (计算机科学)

在計算機科學中,对象(object),--,是一個記憶體位址,其中擁有值,這個位址可能有標識符指向此處。物件可以是一個變數,一個資料結構,或是一個函式。是面向对象(Object Oriented)中的术语,既表示客观世界问题空间(Namespace)中的某个具体的事物,又表示软件系统解空间中的基本元素。 在软件系统中,对象具有唯一的标识符,对象包括属性(Properties)和方法(Methods),属性就是需要记忆的信息,方法就是对象能够提供的服务。在面向对象(Object Oriented)的软件中,对象(Object)是某一个类(Class)的实例(Instance)。 http://www.iicm.org.tw/term/ https://web.archive.org/web/20110410015410/http://ccts.cs.cuhk.edu.hk/ Category:面向对象的程序设计.

新!!: 基本的電腦科學主題列表和对象 (计算机科学) · 查看更多 »

密码学

密碼學(Cryptography)可分为古典密码学和现代密码学。在西欧語文中,密码学一词源於希臘語kryptós“隱藏的”,和gráphein“書寫”。古典密码学主要关注信息的保密书写和传递,以及与其相对应的破译方法。而现代密码学不只关注信息保密问题,还同时涉及信息完整性验证(消息验证码)、信息发布的不可抵赖性(数字签名)、以及在分布式计算中产生的来源于内部和外部的攻击的所有信息安全问题。古典密码学与现代密码学的重要区别在于,古典密码学的编码和破译通常依赖于设计者和敌手的创造力与技巧,作为一种实用性艺术存在,并没有对于密码学原件的清晰定义。而现代密码学则起源于20世纪末出现的大量相关理论,这些理论使得现代密码学成为了一种可以系统而严格地学习的科学。 密码学是数学和计算机科学的分支,同时其原理大量涉及信息论。著名的密碼學者罗纳德·李维斯特解釋道:「密碼學是關於如何在敵人存在的環境中通訊」,自工程學的角度,這相當于密碼學與純數學的差异。密碼學的发展促進了计算机科学,特別是在於電腦與網路安全所使用的技術,如存取控制與資訊的機密性。密碼學已被應用在日常生活:包括自动柜员机的晶片卡、電腦使用者存取密碼、電子商務等等。.

新!!: 基本的電腦科學主題列表和密码学 · 查看更多 »

不變量

假若,在某種變換下,一個系統的某物理量保持不變,則稱此物理量為不變量(invariant)。例如,在伽利略變換下,時間是個不變量;在勞侖茲變換下,光速、靜質量、電荷量等等,都是不變量。這類變換表達出不同觀察者的參考系之間的關係。例如,在火車站台的查票員的參考系,與在移動中的火車內的乘客的參考系,這兩個參考系之間的關係。 假若,在某種變換下,一個系統的某物理性質保持不變,則稱此物理性質為不變性(invariance)。例如,在內積空間內,對於任意旋轉,向量的內積保持不變,稱此性質為旋轉不變性。 根據諾特定理,對於一種變換,每一種不變性代表一條基本的守恆定律。例如,對於平移變換的不變性導致動量守恆定律,對於的不變性導致能量守恆定律。 在現代理論物理裏,不變性是很重要的概念。許多理論是由對稱性與不變性表達。 在張量數學裏,協變性與反變性是不變性的數學性質的推廣。在電磁學和相對論裏,時常會應用到這些概念。.

新!!: 基本的電腦科學主題列表和不變量 · 查看更多 »

中央处理器

中央处理器 (Central Processing Unit,缩写:CPU),是计算机的主要设备之一,功能主要是解释计算机指令以及处理计算机软件中的数据。计算机的可编程性主要是指对中央处理器的编程。中央处理器、内部存储器和输入/输出设备是现代电脑的三大核心部件。1970年代以前,中央处理器由多个独立单元构成,后来发展出由集成电路制造的中央处理器,這些高度收縮的元件就是所謂的微处理器,其中分出的中央处理器最為复杂的电路可以做成单一微小功能强大的单元。 中央处理器廣義上指一系列可以执行复杂的计算机程序的逻辑机器。这个空泛的定义很容易地将在“CPU”这个名称被普遍使用之前的早期计算机也包括在内。无论如何,至少从1960年代早期开始,这个名称及其缩写已开始在电子计算机产业中得到广泛应用。尽管与早期相比,“中央处理器”在物理形态、设计制造和具体任务的执行上有了极大的发展,但是其基本的操作原理一直没有改变。 早期的中央处理器通常是为大型及特定应用的计算机而定制。但是,这种昂贵的为特定应用定制CPU的方法很大程度上已经让位于开发便宜、标准化、适用于一个或多个目的的处理器类。这个标准化趋势始于由单个晶体管组成的大型机和微机年代,随着集成电路的出现而加速。IC使得更为复杂的中央处理器可以在很小的空间中设计和制造(在微米的數量级)。中央处理器的标准化和小型化都使得这一类数字设备和電子零件在现代生活中的出现频率远远超过有限应用专用的计算机。现代微处理器出现在包括从汽车到手机到儿童玩具在内的各种物品中。.

新!!: 基本的電腦科學主題列表和中央处理器 · 查看更多 »

串列 (抽象資料型別)

在計算機科學中,串列(list)或序列(sequence),是一種抽象数据类型,一種有限的有序值的集合,其中每个值可以出现多次。列表的一个实例是在計算機中用來表現出數學上有限--的概念;列表的无限类似是流。列表是容器的一个基本例子,因为它们包含其他值。在串列中的每個值(value),稱為項目(item)、條目(entry)或元素(element);如果相同的值出现多次,每一次出现都认为是分立的一个项目。列表和数组区别在列表只允许顺序访问,而数组允许随机访问。 在数据结构中,也使用這個名稱,表示實作出串列的数据結構,尤指链表(linked list)。 所谓静态列表结构只允许对值的审查和枚举。一个可变对象或动态列表在其生存周期内允许条目被插入、替换或删除。 许多编程语言支持列表数据类型,针对列表和列表运算有特定的语法和逻辑。通常可以通过写入序列中的元素来建立列表。元素用逗号、分号或空格分开,位于一对括号(如圆括号 '()', 方括号, '', 花括号 '', 以及尖括号 '')内部。.

新!!: 基本的電腦科學主題列表和串列 (抽象資料型別) · 查看更多 »

并发计算

并发计算(Concurrent computing,或譯為並行處理、共時計算),是一種程式計算的形式,在系統中,至少有兩個以上的計算在同時運作,計算結果可能同時發生。用來實作並行系統(Concurrent system)的程式語言與各種演算法,統稱為並行計算。 並行程式通常被設計為互動式的運算過程,因為它的運算過程是不確定的,在設計上的難度較高。設計並行程式最大的挑戰,在於確保不同運算執行步驟間的互動或是通訊,能以正確的順序進行,同時,也要確保在不同執行步驟間共享的資源,能夠正確被存取。在這個領域的先驅人物有艾兹赫尔·戴克斯特拉、東尼·霍爾與泊·派克·漢森等人。.

新!!: 基本的電腦科學主題列表和并发计算 · 查看更多 »

人机交互

人机互动(human–computer interaction,缩写:HCI,或 human–machine interaction,缩写:HMI),是一門研究系统與用户之間的互動關係的學問。系统可以是各种各样的机器,也可以是计算机化的系统和软件。人机交互界面通常是指用户可见的部分。用户通过人机交互界面与系统交流,並進行操作。小如收音機的播放按鍵,大至飛機上的儀表板、或是發電廠的控制室。 人机交互界面的设计要包含用户对系统的理解(即心智模型),那是为了系统的可用性或者用户友好性。.

新!!: 基本的電腦科學主題列表和人机交互 · 查看更多 »

形式化方法

形式化方法,中文也稱形式方法、正規方法。在计算机科学和软件工程领域,形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和強健性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。.

新!!: 基本的電腦科學主題列表和形式化方法 · 查看更多 »

信息

信息(英語:Information),又稱情報,是一个严谨的科学术语,其定义不统一,是由它的极端复杂性决定的,獲取信息的主要方法為六何法。信息的表现形式多不胜数:声音、图片、温度、体积、颜色……信息的类別也不计其数:电子信息、财经信息、天气信息、生物信息……。 在熱力學中,信息是指任何會影響系統的熱力學狀態的事件。 信息可以減少不確定性。事件的不確定性是以其發生機率來量測,發生機率越高,不確定性越低,事件的不確定性越高,越需要額外的信息減少其不確定性。位元是典型的,但也可以使用像納特之類的單位,例如投擲一個公正的硬幣,其信息為log2(2/1).

新!!: 基本的電腦科學主題列表和信息 · 查看更多 »

信息檢索

資訊檢索(Information Retrieval)是从信息资源集合获得与信息需求相关的信息资源的活动。搜索可以基于全文或其他基于内容的索引。 自动信息检索系统用于减少所谓的“資訊超載”。许多大學和公共图书馆使用IR系统提供图书、期刊和其他文件的访问。Web搜索引擎是最可见的IR应用程序。.

新!!: 基本的電腦科學主題列表和信息檢索 · 查看更多 »

分布式计算

在計算機科學中,分布式计算(Distributed computing),又譯為--。這個研究領域,主要研究分散式系統(Distributed system)如何進行計算。分散式系統是一組電腦,透過網路相互连接傳遞訊息與通訊後并协调它们的行为而形成的系統。组件之间彼此进行交互以实现一个共同的目标。把需要进行大量计算的工程数据分割成小块,由多台计算机分别计算,再上传运算结果後,將結果统一合并得出数据结论的科学。分布式系统的例子来自有所不同的面向服务的架构,大型多人線上遊戲,对等网络应用。 目前常见的分布式计算项目通常使用世界各地上千万志愿者计算机的闲置计算能力,通过互联网进行数据传输(志愿计算)。如分析计算蛋白质的内部结构和相关药物的Folding@home项目,該项目結構庞大,需要惊人的计算量,由一台电脑计算是不可能完成的。虽然现在有了计算能力超强的超级計算機,但這些設備造價高昂,而一些科研机构的经费却又十分有限,藉助分佈式計算可以花費較小的成本來達到目標。.

新!!: 基本的電腦科學主題列表和分布式计算 · 查看更多 »

函數程式語言

函數式編程(functional programming)或称函数程序设计,又稱泛函編程,是一種編程典範,它將電腦運算視為數學上的函數計算,並且避免使用程序状态以及易变物件。函數程式語言最重要的基礎是λ演算(lambda calculus)。而且λ演算的函數可以接受函數當作輸入(引數)和輸出(傳出值)。 比起指令式編程,函數式編程更加強調程序执行的结果而非执行的过程,倡导利用若干简单的执行单元让计算结果不断渐进,逐层推导复杂的运算,而不是设计一个复杂的执行过程。.

新!!: 基本的電腦科學主題列表和函數程式語言 · 查看更多 »

图灵机

图灵机(),又称确定型图灵机,是英国数学家艾倫·图灵于1936年提出的一种抽象计算模型,其更抽象的意义为一种数学逻辑机,可以看作等价于任何有限逻辑数学过程的终极强大逻辑机器。.

新!!: 基本的電腦科學主題列表和图灵机 · 查看更多 »

图论

图论(Graph theory)是组合数学的一个分支,和其他数学分支,如群论、矩阵论、拓扑学有着密切关系。图是图论的主要研究对象。图是由若干给定的顶点及连接两顶点的边所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系。顶点用于代表事物,连接两顶点的边则用于表示两个事物间具有这种关系。 图论起源于著名的柯尼斯堡七桥问题。该问题于1736年被欧拉解决,因此普遍认为欧拉是图论的创始人。 图论的研究对象相当于一维的单纯复形。.

新!!: 基本的電腦科學主題列表和图论 · 查看更多 »

神经生理学

经生理学简称“神经生理”,是神经科学的一个分支,研究神经系统(包括周围神经系统,脊椎和脑)的功能机理。神经生理学同时也是生理学的一个分支,专门着眼于神经系统。 由于研究对象可以在分子、细胞、网络、系统等几个不同层次上讨论,神经生理学研究的对象由微观到宏观、由基本到综合包括以下这些方面.

新!!: 基本的電腦科學主題列表和神经生理学 · 查看更多 »

種系發生學

#重定向 系统发生学.

新!!: 基本的電腦科學主題列表和種系發生學 · 查看更多 »

程序员

| image.

新!!: 基本的電腦科學主題列表和程序员 · 查看更多 »

程序设计

电脑程序设计(Computer programming),或稱程式設計(programming),是给出解决特定问题程序的过程,軟體開發過程中的重要步驟。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应包括分析、设计、编碼、测试、除错等不同阶段。 在计算机技术发展的早期,軟體開發主要就是程序设计。但随着技术的发展,软件系统越来越复杂,逐渐分化出许多专用的软件系统,如操作系统、数据库系统、应用服务器,而且这些专用的软件系统愈来愈成为普遍的系統環境的一部分。这种情况下軟體開發的内容越来越丰富,不再只是纯粹的程序设计,还包括数据库设计、用户界面设计、通信协议设计和复杂的系统配置过程。 专业的程序设计人员被称为程序员。某种意思上,程序设计的出现甚至早于电子计算机的出现。英国著名诗人拜伦的女儿愛達·勒芙蕾絲曾设计了巴贝奇分析机上計算伯努利數的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的突破性創新,愛達·勒芙蕾絲被称为世界上第一位程序员。 任何设计工作都是在各种条件限制和相互矛盾的需求之间寻求一种平衡。這種觀點反映在程式設計上,就是硬體儲存空間與程式執行時間的限制。 空間方面,在计算机技术发展的早期,由于机器资源比较昂贵,如何縮小儲存空間往往是设计关心的首要重點;而随着硬件技术的飞速发展,電腦上資料儲存媒體的價格降低,空間不再是考慮的第一要點,一些較耗時的運算也漸漸發展出以空間換取時間的模式。 時間方面,在早期,如何加強程式效率、縮短程式執行時間是程式設計師的共同目標;而在硬體效能進步、效率差距縮小,软件规模與複雜度卻日益增加的現在,程序的结构、可维护性、重複使用性、彈性等因素更顯得重要。在多人合作的程式設計專案裡,程式設計師們會加上各種註解以協助其他參與者理解程式碼,,但卻因能達到較好的溝通並提高程式碼的可維護性,而成為目前的主流。 然而,隨著智慧型手機等攜帶裝置的興起,執行時間的縮短與儲存空間的有效運用再次成為焦點,形成與主機伺服器類型應用程式不同的重點考慮方向。.

新!!: 基本的電腦科學主題列表和程序设计 · 查看更多 »

程式語言理論

程式語言理論(Programming language theory,簡稱PLT),是電腦科學的一個旁支,專門研究程式語言的設計,實作,分析和歸類。 Category:電腦科學.

新!!: 基本的電腦科學主題列表和程式語言理論 · 查看更多 »

算法

-- 算法(algorithm),在數學(算學)和電腦科學之中,為任何良定义的具體計算步驟的一个序列,常用於計算、和自動推理。精確而言,算法是一個表示爲有限長列表的。算法應包含清晰定義的指令用於計算函數。 算法中的指令描述的是一個計算,當其時能從一個初始狀態和初始輸入(可能爲空)開始,經過一系列有限而清晰定義的狀態最終產生輸出並停止於一個終態。一個狀態到另一個狀態的轉移不一定是確定的。隨機化算法在内的一些算法,包含了一些隨機輸入。 形式化算法的概念部分源自尝试解决希尔伯特提出的判定问题,並在其后尝试定义或者中成形。这些尝试包括库尔特·哥德尔、雅克·埃尔布朗和斯蒂芬·科尔·克莱尼分别于1930年、1934年和1935年提出的遞歸函數,阿隆佐·邱奇於1936年提出的λ演算,1936年的Formulation 1和艾倫·圖靈1937年提出的圖靈機。即使在當前,依然常有直覺想法難以定義爲形式化算法的情況。.

新!!: 基本的電腦科學主題列表和算法 · 查看更多 »

类型论

在最广泛的层面上,类型论是关注把实体分类到叫做类型的搜集中的数学和逻辑分支。在这种意义上,它与类型的形而上学概念有关。现代类型论在部分上是响应罗素悖论而发明的,并在伯特兰·罗素和阿弗烈·诺夫·怀海德的《数学原理》中起到重要作用。 在计算机科学分支中的编程语言理论中,类型论提供了设计分析和研究类型系统的形式基础。实际上,很多计算机科学家使用术语“类型论”来称呼对编程语言的类型语言的形式研究,尽管有些人把它限制于对更加抽象的形式化如有类型lambda演算的研究。.

新!!: 基本的電腦科學主題列表和类型论 · 查看更多 »

編譯器

编译器(compiler),是一種電腦程式,它會將用某種程式語言寫成的原始碼(原始語言),轉換成另一種程式語言(目標語言)。 它主要的目的是將便于人编写、阅读、维护的高级计算机语言所寫作的原始碼程式,翻译为计算机能解读、运行的低阶机器语言的程序,也就是執行檔。编译器将原始程序(source program)作为输入,翻译产生使用目标语言(target language)的等价程序。源代码一般为高阶语言(High-level language),如Pascal、C、C++、C# 、Java等,而目标语言则是汇编语言或目标机器的目标代码(Object code),有时也称作机器代码(Machine code)。 一个现代编译器的主要工作流程如下: 源代码(source code)→ 预处理器(preprocessor)→ 编译器(compiler)→ 汇编程序(assembler)→ 目标代码(object code)→ 链接器(Linker)→ 執行檔(executables), 最後打包好的檔案就可以給電腦去判讀執行了。.

新!!: 基本的電腦科學主題列表和編譯器 · 查看更多 »

编码理论

编码理论(Coding theory)是研究编码的性质以及它们在具体应用中的性能的理论。编码用于数据压缩、加密、,最近也用于网络编码中。不同学科(如信息论、電機工程學、数学以及计算机科学)都研究编码是为了设计出高效、可靠的数据传输方法。这通常需要去除冗余并校正(或检测)数据传输中的错误。 编码共分四类:.

新!!: 基本的電腦科學主題列表和编码理论 · 查看更多 »

编程语言

编程语言(programming language),是用来定义计算机程序的形式語言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。 最早的编程语言是在電腦發明之前產生的,當時是用來控制及自動演奏鋼琴的動作。在電腦領域已發明了上千不同的编程語言,而且每年仍有新的编程語言誕生。很多编程語言需要用指令方式說明計算的程序,而有些编程語言則屬於宣告式編程,說明需要的結果,而不說明如何計算。 编程语言的描述一般可以分為及語義。語法是說明編程語言中,哪些符號或文字的組合方式是正確的,語義則是對於編程的解釋。有些語言是用規格文件定義,例如C語言的規格文件也是ISO標準中一部份,2011年後的版本為ISO/IEC 9899:2011,而其他55語言(像Perl)有一份主要的文件,視為是。.

新!!: 基本的電腦科學主題列表和编程语言 · 查看更多 »

编程范型

编--程范型、编--程范式或程式--設計法(Programming paradigm),(範即模範、典範之意,範式即模式、方法),是一类典型的编程风格,是指从事软件工程的一类典型的风格(可以对照方法学)。如:函數式編程、程序編程、面向对象编程、指令式编程等等為不同的编程范型。 编程范型提供了(同时决定了)程序员对程序执行的看法。例如,在面向对象编程中,程序员认为程序是一系列相互作用的对象,而在函数式编程中一个程序会被看作是一个无状态的函数计算的序列。 正如软件工程中不同的群体会提倡不同的「方法学」一样,不同的编程语言也会提倡不同的「编程范型」。一些语言是专门为某个特定的范型设计的(如Smalltalk和Java支持面向对象编程,而Haskell和Scheme则支持函数式编程),同时还有另一些语言支持多种范型(如Ruby、Common Lisp、Python和Oz)。 很多编程范型已经被熟知他们禁止使用哪些技术,同时允许使用哪些。例如,纯粹的函数式编程不允许有副作用;结构化编程不允许使用goto。可能是因为这个原因,新的范型常常被那些习惯于较早的风格的人认为是教条主义或过分严格。然而,这样避免某些技术反而更加证明了关于程序正确性——或仅仅是理解它的行为——的法则,而不用限制程序语言的一般性。 编程范型和编程语言之间的关系可能十分复杂,由于一个编程语言可以支持多种范型。例如,C++设计时,支持过程化编程、面向对象编程以及泛型编程。然而,设计师和程序员们要考虑如何使用这些范型元素来构建一个程序。一个人可以用C++写出一个完全过程化的程序,另一个人也可以用C++写出一个纯粹的面向对象程序,甚至还有人可以写出杂揉了两种范型的程序。.

新!!: 基本的電腦科學主題列表和编程范型 · 查看更多 »

生物信息学

生物信息學(bioinformatics)利用应用数学、信息学、统计学和计算机科学的方法研究生物学的问题。生物信息学的研究材料和结果就是各种各样的生物学数据,其研究工具是计算机,研究方法包括对生物学数据的搜索(收集和筛选)、处理(编辑、整理、管理和显示)及利用(计算、模拟)。目前主要的研究方向有:序列比对、序列組裝、基因识别、基因重组、蛋白质结构预测、基因表达、蛋白质反应的预测,以及建立进化模型。 生物学技术往往生成大量的嘈杂数据。与数据挖掘类似,生物信息学利用数学工具从大量数据中提取有用的生物学信息。生物信息学所要处理的典型问题包括:重新組裝在霰弹枪定序法测序过程中被打散的DNA序列,从蛋白质的氨基酸序列预测蛋白质结构,利用mRNA微阵列或质谱仪的数据检验基因调控的假说。 某些人将计算生物学作为生物信息学的同义词处理;但是另外一些人认为计算生物学和生物信息学应当被当作不同的条目处理,因为生物信息学更侧重於生物学领域中计算方法的使用和发展,而计算生物学强调应用信息学技术对生物学领域中的假说进行检验,并尝试发展新的理论。 生物信息学可以定义为对分子生物学中两类信息流的研究:.

新!!: 基本的電腦科學主題列表和生物信息学 · 查看更多 »

面向对象程序设计

面向对象程序设计(Object-oriented programming,缩写:OOP)是種具有物件概念的程式編程典範,同时也是一种程序开发的抽象方针。它可能包含資料、、程式碼與方法。对象則指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性,物件裡的程序可以訪問及經常修改物件相關連的資料。在物件導向程式編程裡,電腦程式會被設計成彼此相關的物件。 面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。目前已经被证实的是,面向对象程序设计推广了程序的灵活性和可维护性,并且在大型项目设计中广为应用。此外,支持者声称面向对象程序设计要比以往的做法更加便于学习,因为它能够让人们更简单地设计并维护程序,使得程序更加便于分析、设计、理解。反对者在某些领域对此予以否认。 当我们提到面向对象的时候,它不仅指一种程序设计方法。它更多意义上是一种程序开发方式。在这一方面,我们必须了解更多关于面向对象系统分析和面向对象设计(Object Oriented Design,简称OOD)方面的知识。許多流行的程式語言是物件導向的,它們的風格就是會透由物件來創出實例。 重要的物件導向程式語言包含Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby 與 PHP等。.

新!!: 基本的電腦科學主題列表和面向对象程序设计 · 查看更多 »

計算神經科學

計算神經科學(Computational neuroscience)為一種跨領域科學,包含神經科學、認知科學、資訊工程、電腦科學、物理學及數學。 這個詞首次出現於1985年,由於加州卡莫市主辦的會議中提出。其後出現的類似名詞包含神经模型、脑理论及神经网络。後來相關的解釋定義皆收錄於麻省理工學院出版(1990)之《計算神經科學》(Computational Neuroscience )一書內。有關此領域的研究最早可追溯自艾倫·勞埃德·霍奇金與安德魯·赫胥黎、大衛·休伯爾與托斯坦·威澤爾,以及大衛·馬爾等人。以及艾倫·勞埃德·霍奇金與安德魯·赫胥黎發明,首次成功的將動作電位數值化。大衛·休伯爾及托斯坦·威澤爾則發現主要視覺皮質區(primary visual cortex),此區負責處理由虹膜傳來的第一手訊息,將接收區與彙整區做出整理(大衛·休伯爾與托斯坦·威澤爾, 1962)。.

新!!: 基本的電腦科學主題列表和計算神經科學 · 查看更多 »

計算複雜性理論

计算复杂性理论(Computational complexity theory)是理论计算机科学和数学的一个分支,它致力于将可计算问题根据它们本身的复杂性分类,以及将这些类别联系起来。一个可计算问题被认为是一个原则上可以用计算机解决的问题,亦即这个问题可以用一系列机械的数学步骤解决,例如算法。 如果一个问题的求解需要相当多的资源(无论用什么算法),则被认为是难解的。计算复杂性理论通过引入数学计算模型来研究这些问题以及定量计算解决问题所需的资源(时间和空间),从而将资源的确定方法正式化了。其他复杂性测度同样被运用,比如通信量(应用于通信复杂性),电路中门的数量(应用于电路复杂性)以及中央处理器的数量(应用于并行计算)。计算复杂性理论的一个作用就是确定一个能或不能被计算机求解的问题的所具有的实际限制。 在理论计算机科学领域,与此相关的概念有算法分析和可计算性理论。两者之间一个关键的区别是前者致力于分析用一个确定的算法来求解一个问题所需的资源量,而后者则是在更广泛意义上研究用所有可能的算法来解决相同问题。更精确地说,它尝试将问题分成能或不能在现有的适当受限的资源条件下解决这两类。相应地,在现有资源条件下的限制正是区分计算复杂性理论和可计算性理论的一个重要指标:后者关心的是何种问题原则上可以用算法解决。.

新!!: 基本的電腦科學主題列表和計算複雜性理論 · 查看更多 »

计算

計算(Calculation)是一種將「單一或多個的輸入值」轉換為「單一或多個的結果」的一種思考過程。 計算的定義有許多種使用方式,有相當精確的定義,例如使用各種算法進行的「算术」,也有較為抽象的定義,例如在一場競爭中「策略的計算」或是「計算」兩人之間關係的成功機率。 將7乘以8(7x8)就是一種簡單的算術。 利用布莱克-斯科尔斯模型(Black-Scholes Model)來算出財務評估中的公平價格(fair price)就是一種複雜的算術。 從投票意向計算評估出的選舉結果(民意調查)也包含了某種算術,但是提供的結果是「各種可能性的範圍」而不是單一的正確答案。.

新!!: 基本的電腦科學主題列表和计算 · 查看更多 »

计算化学

计算化学(computational chemistry)是理论化学的一个分支,主要目的是利用有效的数学近似以及电脑程序计算分子的性质,例如总能量、偶极矩、四极矩、振动频率、反应活性等,并用以解释一些具体的化学问题。计算化学这个名词有时也用来表示计算机科学与化学的交叉学科。.

新!!: 基本的電腦科學主題列表和计算化学 · 查看更多 »

计算物理学

計算物理學()是研究如何使用數值方法分析可以量化的物理学問題的学科。 历史上,计算物理学是计算机的第一项应用;目前计算物理学被视为计算科学的分支。 计算物理有时也被视为理论物理的分支学科或子问题,但也有人认为计算物理与理论物理与实验物理联系紧密,又相对独立,是物理学第三大分支《计算物理学》 刘金远等 科学出版社 ISBN 978-7-03-034793-0。.

新!!: 基本的電腦科學主題列表和计算物理学 · 查看更多 »

计算机协会

计算机协会(Association for Computing Machinery,简称ACM)是一个世界性的计算机从业员专业组织,创立于1947年,是世界上第一个科学性及教育性计算机学会,亦是現時全球最大的電腦相關學會。ACM每年都出版大量電腦科学的专门期刊,并就每项专业设有兴趣小组。兴趣小组每年亦会在全世界(但主要在美国)举办世界性讲座及会谈,以供各会员分享他们的研究成果。近年ACM积极开拓网上学习的渠道,以供会员在工作之余或家中提升自己的专业技能。截止20世纪末,ACM在全球拥有75,000个以上的成员,包括遍及学术界、工业、研究和政府领域的学生和计算机专业人员。成员的最高荣誉是会士(Fellow)。 ACM通过它的35个特别兴趣组(Special Interest Group,SIG)提供特殊的技术信息和服务。这些特别兴趣组集中于计算机学科的多种专业,如计算机系统结构专业组(computer architecture,SIGARCH)和计算机图形与互动技术专业组(computer graphics and interactive techniques,SIGGRAPH)。这些特别兴趣组中有不少是跨学科的,适合计算机行业以外的人员。例如有不少艺术家参与到图形互动小组中。 ACM通过支持全球700个以上的专业和学生组织,为当地和地区团体提供服务。其中约有20%不在美国境内。这些组织为专业人士提供服务,搜集信息,准备讲座,组织研讨会和竞赛。 ACM主要成员刊物是Communications of the ACM,刊有一些广泛兴趣的文章,并对每月不同的热点问题展开讨论。ACM也出版了不少获得业内认可的期刊,这些期刊覆盖了计算机领域相当广泛的领域。 ACM主办了8个主要奖项,来表彰计算机领域的技术和专业成就。最高奖项为图灵奖(Turing Award),常被形容为计算机领域的诺贝尔奖。.

新!!: 基本的電腦科學主題列表和计算机协会 · 查看更多 »

计算机安全

计算机安全(computer security)是计算机与网络领域的信息安全(information security)的一个分支。其目的是在保证信息和财产可被受权用户正常获取和使用的情况下,保护此信息和财产不受偷窃,污染,自然灾害等的损坏。计算机系统安全是指一系列包含敏感和有价值的信息和服务的进程和机制,不被未得到授权和不被信任的个人,团体或事件公开,修改或损坏。由于它的目的在于防止不需要的行为发生而非使得某些行为发生,其策略和方法常常与其他大多数的计算机技术不同。.

新!!: 基本的電腦科學主題列表和计算机安全 · 查看更多 »

计算机图形学

计算机图形学(computer graphics,縮寫为CG)是研究计算机在硬件和软件的帮助下创建计算机图形的科学学科,是计算机科学的一個分支領域,主要關注數位合成與操作視覺的圖形內容。雖然這個詞通常被認為是指三維圖形,事實上同時包括了二維圖形以及影像處理。.

新!!: 基本的電腦科學主題列表和计算机图形学 · 查看更多 »

计算机科学

计算机科学用于解决信息与计算的理论基础,以及实现和应用它们的实用技术。 计算机科学(computer science,有时缩写为CS)是系统性研究信息与计算的理论基础以及它们在计算机系统中如何与应用的实用技术的学科。 它通常被形容为对那些创造、描述以及转换信息的算法处理的系统研究。计算机科学包含很多分支领域;有些强调特定结果的计算,比如计算机图形学;而有些是探討计算问题的性质,比如计算复杂性理论;还有一些领域專注于怎样实现计算,比如程式語言理論是研究描述计算的方法,而程式设计是应用特定的程式語言解决特定的计算问题,人机交互则是專注于怎样使计算机和计算变得有用、好用,以及随时随地为人所用。 有时公众会误以为计算机科学就是解决计算机问题的事业(比如信息技术),或者只是与使用计算机的经验有关,如玩游戏、上网或者文字处理。其实计算机科学所关注的,不仅仅是去理解实现类似游戏、浏览器这些软件的程序的性质,更要通过现有的知识创造新的程序或者改进已有的程序。 尽管计算机科学(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(斯拉夫语族)。 著名计算机科学家Edsger Dijkstra曾经指出:“计算机科学并不只是关于计算机,就像天文学并不只是关于望远镜一样。”("Computer science is no more about computers than astronomy is about telescopes.")设计、部署计算机和计算机系统通常被认为是非计算机科学学科的领域。例如,研究计算机硬件被看作是计算机工程的一部分,而对于商业计算机系统的研究和部署被称为信息技术或者信息系统。然而,现如今也越来越多地融合了各类计算机相关学科的思想。计算机科学研究也经常与其它学科交叉,比如心理学,认知科学,语言学,数学,物理学,统计学和经济学。 计算机科学被认为比其它科学学科与数学的联系更加密切,一些观察者说计算就是一门数学科学。 早期计算机科学受数学研究成果的影响很大,如Kurt Gödel和Alan Turing,这两个领域在某些学科,例如数理逻辑、范畴论、域理论和代数,也不断有有益的思想交流。.

新!!: 基本的電腦科學主題列表和计算机科学 · 查看更多 »

计算机系统结构

計算機系統結構(computer architecture、電腦系统架構),抽象来說計算機系统架構是一个系统在其所处环境中最高层次的概念;它确定一台電腦硬體和軟體之间的連結。具體地說電腦系统架構'指的是電腦系統設計的觀念與架構,描述電腦在實做的設計原则。它确定一部電腦的:.

新!!: 基本的電腦科學主題列表和计算机系统结构 · 查看更多 »

计算机视觉

计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和计算机代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图像处理,用计算机处理成为更适合人眼观察或传送给仪器检测的图像。 作为一門科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取「信息」的人工智能系统。这里所指的信息指香农定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。 作为一个工程学科,计算机视觉寻求基于相关理论与模型来建立计算机视觉系统。这类系统的组成部分包括:.

新!!: 基本的電腦科學主題列表和计算机视觉 · 查看更多 »

认知科学

認知科學(Cognitive Science),是一門研究訊息如何在大腦中形成以及轉錄過程的跨領域學科。它研究何为认知,认知有何用途以及它如何工作,研究信息如何表现为感觉、语言、注意、推理和情感。其研究領域包括心理學、哲學、人工智能、神經科學、學習、語言學、人類學、社會學和教育學。它跨越相當多層次的分析,從低層次的學習和決策機制,到高層次的邏輯和策劃能力,以及腦部神經電路。「認知科學」這個詞是在1973年評注一部關於當時人工智慧最新研究的著作時創造的。同10年內,《認知科學期刊》和相繼於美國加州成立。认知科学的基本要义是:理解思维的最好途径,是认识脑中的代表性结构,以及这些结构中发生的计算性过程。.

新!!: 基本的電腦科學主題列表和认知科学 · 查看更多 »

資料類型

在程式設計的型別系統中,数据类型(Data type)是用來約束数据的解釋。在程式語言中,常見的数据类型包括--(如:整數、浮點數或字元)、多元組、記錄單元、代數資料型別、抽象数据类型、參考型別、类以及函式型別。資料型別描述了數值的表示法、解釋和結構,並以演算法操作,或是物件在記憶體中的儲存區,或者其它儲存裝置。.

新!!: 基本的電腦科學主題列表和資料類型 · 查看更多 »

软件工程

软件工程(quote) 1968年秋季,NATO(北約)的科技委員會召集了近50名一流的編程人員、計算機科學家和工業界巨頭,討論和制定擺脫“軟體危機”的對策。在那次會議上第一次提出了軟體工程(software engineering)這個概念,研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。其后的几十年里,各种有关软件工程的技术、思想、方法和概念不断被提出,软件工程逐步发展为一门独立的科学。 1993年,电气电子工程师学会(IEEE)给出了一个更加综合的定义:"将系统化的、规范的、可度量的方法用于软件的开发、运行和维护的过程,即将工程化应用于软件开发中"。此后,IEEE多次给出软件工程的定义。 在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,提高人们的工作效率,同时提升了生活质量。 软件工程师是对应用软件创造软件的人们的统称,软件工程师按照所处的领域不同可以分为系统分析师、系统架构师、软件设计师、程序员、测试工程师、界面与交互设计师等等。各种软件工程师人们俗称程序员。.

新!!: 基本的電腦科學主題列表和软件工程 · 查看更多 »

软件测试

軟體測試(software testing),描述一種用來促進鑑定軟體的正確性、完整性、安全性和品質的過程。據此,您可能會想,軟體測試永遠不可能完整的確立任意電腦軟體的正確性。然而,在可計算理論(計算機科學的一個支派)一個簡單的數學證明推斷出下列結果:不可能完全解決所謂「當機」,指任意電腦程式是否會進入無窮迴圈,或者罷工並產生輸出問題。換句話說,軟體測試是一種實際輸出與預期輸出間的稽核或者比較過程。 软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量軟體品質,并对其是否能满足设计要求进行评估的过程。 軟體測試有許多方法,但對複雜的產品執行有效測試不僅僅是研究過程,更是創造並嚴格遵守某些呆板步驟的大事。測試的其中一個定義:為了評估而質疑產品的過程;這裡的“質疑”是測試員試著對產品做的事,而產品以測試者腳本行為反應作為回答。雖然大部分測試的智力過程不外乎回顧、檢查,然而「測試」這個词意味著產品動態分析──讓產品流暢運行。程式品質可能,而且通常會,隨系統不同而有差異;不過某些公認特性是共通的:可靠性、穩定性、輕便性、易於維護、以及實用性。請參照至ISO標準ISO 9126有更詳盡的說明。.

新!!: 基本的電腦科學主題列表和软件测试 · 查看更多 »

迭代

迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。每一次对过程的重复被称为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。.

新!!: 基本的電腦科學主題列表和迭代 · 查看更多 »

闭包

闭包可以指:.

新!!: 基本的電腦科學主題列表和闭包 · 查看更多 »

邏輯編程

邏輯編程(逻辑程--序设计)是種編程典範,它設定答案須符合的規則來解決問題,而非設定步驟來解決問題。過程是 不同的方法,可以看Inductive logic programming。 邏輯編程的要點是將正規的邏輯風格帶入電腦程式設計之中。數學家和哲學家發現邏輯是有效的理論分析工具。很多問題可以自然地表示成一個理論。說需要解答一個問題,通常與解答一個新的假設是否跟現在的理論無衝突等價。邏輯提供了一個證明問題是真還是假的方法。建立證明的方法是人所皆知的,故邏輯是解答問題的可靠方法。邏輯編程系統則自動化了這個程序。人工智能在邏輯編程的發展中發揮了重要的影響。 猴子和香蕉問題是邏輯編程社群的著名問題。電腦須自行找出令猴子接觸香蕉的可行方法,取代程式設計師指定猴子接觸香蕉的路徑和方法。 邏輯編程建立了描述一個問題裏的世界的邏輯模型。邏輯編程的目標是對它的模型建立新的陳述。世界上知識不斷澎漲。傳統來說,我們會將一個問題陳述成單一的假設。邏輯編程的程式透過證明這個假設在模型裏是否為真來解決問題。 一些經常用到邏輯編程工具的範疇:.

新!!: 基本的電腦科學主題列表和邏輯編程 · 查看更多 »

错误检测与纠正

在计算机科学和通信的信息论和编码理论应用中,错误检测和纠正(error detection and correction)或错误控制(error control)是在不可靠的通信信道上可靠地传送数字数据的技术。许多通信信道会经受信道噪声,因此可能在源至接收器的传输期间引入错误。错误检测技术能够检测这样的错误,而错误纠正能在不少情况下重建原始数据。.

新!!: 基本的電腦科學主題列表和错误检测与纠正 · 查看更多 »

量子计算机

量子计算机(quantum computer)是一种使用量子邏輯進行通用計算的設備。不同於电子计算机(或稱傳統電腦),量子計算用來存儲數據的對象是量子比特,它使用量子演算法來進行數據操作。马约拉纳费米子反粒子就是自己本身的属性,或许是令量子计算机的制造变成现实的一个关键。.

新!!: 基本的電腦科學主題列表和量子计算机 · 查看更多 »

自動機理論

在理论计算机科学中,自动机理论是对抽象机和它们能解决的问题的研究。自动机理论密切关联于形式语言理论,因为自动机经常按它们所能识别的形式语言类来分类。.

新!!: 基本的電腦科學主題列表和自動機理論 · 查看更多 »

電子計算機

--,亦稱--,计算机是一种利用数字电子技术,根据一系列指令指示其自动执行任意算术或逻辑操作序列的设备。计算机遵循被称为“程序”的一般操作集的能力使他们能够执行极其广泛的任务。 计算机被用作各种工业和消费设备的控制系统。这包括简单的特定用途设备(如微波炉和遥控器)、工业设备(如工业机器人和计算机辅助设计),以及通用设备(如个人电脑和智能手机之类的移动设备)等。尽管计算机种类繁多,但根据图灵机理论,一部具有最基本功能的计算机,应当能够完成任何其它计算机能做的事情。因此,理论上从智能手机到超级计算机都应该可以完成同样的作业(不考虑时间和存储因素)。由于科技的飞速进步,下一代计算机总是在性能上能够显著地超过其前一代,这一现象有时被称作“摩尔定律”。通过互联网,计算机互相连接,极大地提高了信息交换速度,反过来推动了科技的发展。在21世纪的现在,计算机的应用已经涉及到方方面面,各行各业了。 自古以来,简单的手动设备——就像算盘——帮助人们进行计算。在工业革命初期,各式各样的机械的出现,其初衷都是为了自动完成冗长而乏味的任务,例如织机的编织图案。更复杂的机器在20世纪初出现,通过模拟电路进行复杂特定的计算。第一台数字电子计算机出现于二战期间。自那时以来,电脑的速度,功耗和多功能性不断增加。在现代,机械计算--机的应用已经完全被电子计算机所取代。 计算机在组成上形式不一,早期计算机的体积足有一间房屋的大小,而今天某些嵌入式计算机可能比一副扑克牌还小。当然,即使在今天依然有大量体积庞大的巨型计算机为特别的科学计算或面向大型组织的事务处理需求服务。比较小的,为个人应用而设计的称为微型计算机(Personal Computer,PC),在中國地區简称為「微机」。我們今天在日常使用“计算机”一词时通常也是指此,不过现在计算机最为普遍的应用形式却是嵌入式,嵌入式计算机通常相对简单、体积小,并被用来控制其它设备——无论是飞机、工业机器人还是数码相机。 同计算机相关的技术研究叫计算--机科学,而「计算机技术」指的是将计算--机科学的成果应用于工程实践所派生的诸多技术性和经验性成果的总合。「计算机技术」与「计算机科学」是两个相关而又不同的概念,它们的不同在于前者偏重于实践而后者偏重于理论。至於由数据为核心的研究則称為信息技术。 传统上,现代计算机包括至少一个处理单元(通常是中央处理器(CPU))和某种形式的存储器。处理元件执行算术和逻辑运算,并且排序和控制单元可以响应于存储的信息改变操作的顺序。外围设备包括输入设备(键盘,鼠标,操纵杆等)、输出设备(显示器屏幕,打印机等)以及执行两种功能(例如触摸屏)的输入/输出设备。外围设备允许从外部来源检索信息,并使操作结果得以保存和检索。.

新!!: 基本的電腦科學主題列表和電子計算機 · 查看更多 »

電腦記憶體

電腦記憶體(Computer memory)是一種利用半導體技術制成的儲存資料的電子裝置。其電子電路中的資料以二進位方式儲存,記憶體的每一個儲存單元稱做記憶元。 電腦記憶體可分为内部存储器(简称内存或主存)和外部存储器,其中内存是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速率快。内存是电脑中的主要部件,它是相对于外存而言的。我们平常使用的程序,如Windows操作系统、打字软件、游戏软件等,一般都是安装在硬盘等外存上的,但仅此是不能使用其功能的,必须把它们调入内存中运行,才能真正使用其功能,我们平时输入一段文字,或玩一个游戏,其实都是在内存中进行的。就好比在一个书房里,存放书籍的书架和书柜相当于电脑的外存,而我们工作的办公桌就是内存。通常我们把要永久保存的、大量的数据存储在外存上,而把一些临时的或少量的数据和程序放在内存上,当然内存的好坏会直接影响电脑的运行速度。.

新!!: 基本的電腦科學主題列表和電腦記憶體 · 查看更多 »

蛋白质折叠

蛋白质折叠(Protein folding)是蛋白质获得其功能性结构和构象的过程。通过这一物理过程,蛋白质从无规则卷曲折叠成特定的功能性三维结构。在从mRNA序列翻译成线性的氨基酸链时,蛋白质都是以去折叠多肽或无规则卷曲的形式存在。 蛋白質的基本單位為胺基酸,而蛋白質的一級結構指的就是其胺基酸序列,蛋白質會由所含胺基酸残基的親水性、疏水性、帶正電、帶負電……等等特性通过残基间的相互作用而摺疊成一立體的三级結構。 根据克里斯琴·B·安芬森(1972年的諾貝爾化學獎得主)的研究,蛋白質可由加熱或置於某些化學環境而变性,三级结构解体;而當環境回復到原本的狀態時,蛋白質可於不到一秒的時間折疊至原先的立體結構,不論試驗幾次,蛋白質都僅此一種立體結構,於是Anfinsen提出一個結論:蛋白质分子的一级结构决定其立體结构。 安芬森的研究结果非常重要,因為蛋白質的功能取決於其立體結構,而目前根据已知某基因序列可翻译获得对应蛋白质的胺基酸序列,既蛋白質的一級結構;如果從蛋白質的一級結構就能知道立體結構,那麼即可直接從基因推测其编码蛋白质所對應的生物学功能。虽然蛋白質可在短時間中從一級結構摺疊至立體結構,研究者卻無法在短時間中從胺基酸序列計算出蛋白质結構,甚至无法得到准确的三维结构。因此,研究蛋白质折叠的过程,可以说是破译“第二遗传密码”——折叠密码(folding code)的过程。 目前蛋白质的再折叠依然遵从先使用胍或脲变性,然后逐渐降低胍或者脲的浓度,也就是逐渐降低对蛋白质天然“回缩”能力的干扰。使其自然回到天然的最低能量状态。只是这个过程无法很好的控制肽链与肽链之间和肽链内部形成错误折叠的干扰。.

新!!: 基本的電腦科學主題列表和蛋白质折叠 · 查看更多 »

逆向工程

逆向工程,又称反向工程,是一种技术过程,即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能性能规格等设计要素,以制作出功能相近,但又不完全一样的产品。逆向工程源于商业及军事领域中的硬件分析。其主要目的是,在無法轻易获得必要的生产信息下,直接从成品的分析,推导产品的设计原理。 逆向工程可能会被误认为是对知识产权的严重侵害,但是在实际应用上,反而可能会保护知识产权所有者。例如在集成电路领域,如果怀疑某公司侵犯知识产权,可以用逆向工程技术来寻找证据。.

新!!: 基本的電腦科學主題列表和逆向工程 · 查看更多 »

Λ演算

λ演算(英語:lambda calculus,λ-calculus)是一套從數學邏輯中發展,以變數綁定和替換的規則,來研究函式如何抽象化定義、函式如何被應用以及遞迴的形式系統。它由數學家阿隆佐·邱奇在20世紀30年代首次發表。Lambda演算作為一種廣泛用途的計算模型,可以清晰地定義什麼是一個可計算函式,而任何可計算函式都能以這種形式表達和求值,它能模擬單一磁帶图灵机的計算過程;儘管如此,Lambda演算強調的是變換規則的運用,而非實現它們的具體機器。 Lambda演算可比擬是最根本的編程語言,它包括了一條變換規則(變數替換)和一條將函式抽象化定義的方式。因此普遍公認是一種更接近軟體而非硬體的方式。對函數式編程語言造成很大影響,比如Lisp、ML语言和Haskell语言。在1936年邱奇利用λ演算給出了對於判定性問題(Entscheidungsproblem)的否定:關於兩個lambda運算式是否等價的命題,無法由一個「通用的演算法」判斷,這是不可判定效能夠證明的頭一個問題,甚至還在停机问题之先。 Lambda演算包括了建構lambda項,和對lambda項執行歸約的操作。在最簡單的lambda演算中,只使用以下的規則來建構lambda項: 產生了諸如:(λx.λy.(λz.(λx.zx)(λy.zy))(x y)的表達式。如果表達式是明確而沒有歧義的,則括號可以省略。對於某些應用,其中可能包括了邏輯和數學的常量以及相關操作。 本文讨论的是邱奇的“无类型lambda演算”,此后,已经研究出来了一些有类型lambda演算。.

新!!: 基本的電腦科學主題列表和Λ演算 · 查看更多 »

Prolog

Prolog(Programming in Logic的缩写)是一种逻辑编程语言。它建立在逻辑学的理论基础之上, 最初被运用于自然语言等研究领域。现在它已广泛的应用在人工智能的研究中,它可以用来建造专家系统、自然语言理解、智能知识库等。.

新!!: 基本的電腦科學主題列表和Prolog · 查看更多 »

抽象化

抽象化(Abstraction)是指以縮減一個概念或是一個現象的資訊含量來將其廣義化(Generalization)的過程,主要是為了只保存和一特定目的有關的資訊。例如,將一個皮製的足球抽象化成一個球,只保留一般球的屬性和行為等資訊。相似地,亦可以將快樂抽象化成一種情緒,以減少其在情緒中所含的資訊量。.

新!!: 基本的電腦科學主題列表和抽象化 · 查看更多 »

控制论

控制论是一门跨学科研究, 它用于研究控制系统的结构,局限和发展。在21世纪,控制论的定义变得更加宽泛,主要用于指代“对任何使用科学技术的系统的控制”。由于这一定义过于宽泛,许多相关人士不再使用“控制论”一词。 控制论与对系统的研究有关,如自动化系统、物理系统、生物系统、认知系统、以及社会系统等等。控制论可被应用于研究包含信令回路的系统。信令回路在这里指,当一个系统的运作改变了它所在的环境,而这些改变又反过来反馈于系统上,并导致系统本身的变化。这种循环最初被称为“循环影响”关系。.

新!!: 基本的電腦科學主題列表和控制论 · 查看更多 »

控制流程

控制流程(也稱為流程控制)是電腦運算領域的用語,意指在程式執行時,個別的指令(或是陳述、子程序)執行或求值的順序。不論是在宣告式程式語言或是函數程式語言中,都有類似的概念。 在宣告式的程式語言中,流程控制指令是指會改變程式執行順序的指令,可能是執行不同位置的指令,或是在二段(或多段)程式中選擇一個執行。 不同的程式語言所提供的流程控制指令也會隨之不同,但一般可以分為以下四種:.

新!!: 基本的電腦科學主題列表和控制流程 · 查看更多 »

正则表达式

正则表达式(Regular Expression,在代码中常简写为regex、regexp或RE),又称--、正規表示法、正規運算式、規則運算式、常規表示法,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器裡,正則表达式通常被用来检索、替换那些符合某个模式的文本。 许多程序设计语言都支持利用正則表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正則表达式引擎。正則表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成regex,单数有regexp、regex,复数有regexps、regexes、regexen。.

新!!: 基本的電腦科學主題列表和正则表达式 · 查看更多 »

指令式編程

指令式編程(Imperative programming),是一種描述電腦所需作出的行為的編程典範。幾乎所有電腦的硬體工作都是指令式的;幾乎所有電腦的硬體都是設計來執行機器碼,使用指令式的風格來寫的。較高階的指令式編程語言使用變數和更複雜的語句,但仍依從相同的典範。菜譜和行動清單,雖非電腦程式,但與指令式編程有相似的風格:每步都是指令,有形的世界控制情況。因為指令式編程的基礎觀念,不但概念上比較熟悉,而且較容易具體表現於硬體,所以大部分的編程語言都是指令式的。 大部分的高级语言都支援四種基本的語句:.

新!!: 基本的電腦科學主題列表和指令式編程 · 查看更多 »

有限狀態自動機

#重定向 有限状态机.

新!!: 基本的電腦科學主題列表和有限狀態自動機 · 查看更多 »

操作系统

操作系统(operating system,縮寫作 OS)是管理计算机硬件與软件資源的计算机程序,同时也是计算机系统的核心与基石。操作系统需要处理如管理與配置内存、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作网络與管理文件系统等基本事務。操作系统也提供一個讓使用者與系統互動的操作界面。 操作系统的型態非常多樣,不同機器安裝的操作系统可從簡單到複雜,可從行動電話的嵌入式系统到超級電腦的大型作業系統。許多操作系统製造者對它涵盖范畴的定义也不尽一致,例如有些操作系统整合了图形用户界面,而有些僅使用命令行界面,而將图形用户界面視為一種非必要的應用程式。 操作系统理论在计算机科学中,為歷史悠久的分支;。.

新!!: 基本的電腦科學主題列表和操作系统 · 查看更多 »

数理逻辑

数理逻辑是数学的一个分支,其研究对象是对证明和计算这两个直观概念进行符号化以后的形式系统。数理逻辑是数学基础的一个不可缺少的组成部分。 数理逻辑的研究范围是逻辑中可被数学模式化的部分。以前称为符号逻辑(相对于哲学逻辑),又称元数学,后者的使用现已局限于证明论的某些方面。.

新!!: 基本的電腦科學主題列表和数理逻辑 · 查看更多 »

数组

在計算機科學中,陣列資料結構(array data structure),簡稱数组(Array),是由相同类型的元素(element)的集合所組成的資料結構,分配一块连续的内存来存储。利用元素的索引(index)可以计算出该元素對應的儲存地址。 最簡單的資料結構類型是一維陣列。例如,索引為0到9的32位元整數陣列,可作為在記憶體位址2000,2004,2008,...2036中,儲存10個變量,因此索引為i的元素即在記憶體中的2000+4×i位址。陣列第一個元素的記憶體位址稱為第一位址或基礎位址。 二维数组,对应于數學上的矩陣概念,可表示為二維矩形格。例如: a.

新!!: 基本的電腦科學主題列表和数组 · 查看更多 »

数论

數論是纯粹数学的分支之一,主要研究整数的性質。被譽為「最純」的數學領域。 正整数按乘法性质划分,可以分成質数,合数,1,質数產生了很多一般人也能理解而又懸而未解的問題,如哥德巴赫猜想,孿生質數猜想等,即。很多問題虽然形式上十分初等,事实上却要用到许多艰深的数学知识。这一领域的研究从某种意义上推动了数学的发展,催生了大量的新思想和新方法。數論除了研究整數及質數外,也研究一些由整數衍生的數(如有理數)或是一些廣義的整數(如代數整數)。 整数可以是方程式的解(丟番圖方程)。有些解析函數(像黎曼ζ函數)中包括了一些整數、質數的性質,透過這些函數也可以了解一些數論的問題。透過數論也可以建立實數和有理數之間的關係,並且用有理數來逼近實數(丟番圖逼近)。 數論早期稱為算術。到20世紀初,才開始使用數論的名稱,而算術一詞則表示「基本運算」,不過在20世紀的後半,有部份數學家仍會用「算術」一詞來表示數論。1952年時數學家Harold Davenport仍用「高等算術」一詞來表示數論,戈弗雷·哈羅德·哈代和愛德華·梅特蘭·賴特在1938年寫《數論介紹》簡介時曾提到「我們曾考慮過將書名改為《算術介紹》,某方面而言是更合適的書名,但也容易讓讀者誤會其中的內容」。 卡尔·弗里德里希·高斯曾說:「數學是科學的皇后,數論是數學的皇后。.

新!!: 基本的電腦科學主題列表和数论 · 查看更多 »

数据库

--,簡而言之可視為電子化的檔案櫃——儲存电子檔案的處所,使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作。 所謂「資料庫」係以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。.

新!!: 基本的電腦科學主題列表和数据库 · 查看更多 »

数据结构

在计算机科学中,数据结构(data structure)是计算机中存储、组织数据的方式。 数据结构意味着介面或封装:一个数据结构可被视为两个函数之间的介面,或者是由数据类型联合组成的存储内容的访问方法封装。 大多数数据结构都由数列、记录、可辨识联合、引用等基本类型构成。举例而言,可為空的引用(nullable reference)是引用与可辨识联合的结合体,而最简单的链式结构链表则是由记录与可空引用构成。 数据结构可透过程式语言所提供的数据类型、引用及其他操作加以实现。一个设计良好的数据结构,应该在尽可能使用较少的时间与空间资源的前提下,支援各種程式執行。 不同种类的数据结构适合不同种类的应用,部分資料結構甚至是為了解決特定問題而設計出來的。例如B树即為加快樹狀結構存取速度而設計的資料結構,常被應用在資料庫和檔案系統上。 正確的数据结构選擇可以提高演算法的效率(請參考)。在電腦程式设计的過程裡,选择适当的数据结构是一項重要工作。许多大型系统的編寫经验顯示,程式設計的困难程度与最终成果的质量与表现,取决于是否选择了最適合的数据结构。 系統架構的关键因素是数据结构而非算法的見解,导致了多种形式化的设计方法与编程语言的出现。绝大多数的语言都带有某种程度上的模块化思想,透过将数据结构的具体实现封装隐藏于使用者介面之后的方法,来让不同的应用程序能够安全地重用这些数据结构。C++、Java、Python等面向对象的编程语言可使用类 (计算机科学)来達到這個目的。 因为数据结构概念的普及,现代编程语言及其API中都包含了多种預設的数据结构,例如 C++ 标准模板库中的容器、Java集合框架以及微软的.NET Framework。.

新!!: 基本的電腦科學主題列表和数据结构 · 查看更多 »

数据挖掘

数据挖掘(data mining)是一个跨学科的计算机科学分支 它是用人工智能、机器学习、统计学和数据库的交叉方法在相對較大型的中发现模式的计算过程。数据挖掘过程的总体目标是从一个数据集中提取信息,并将其转换成可理解的结构,以进一步使用。除了原始分析步骤,它还涉及到数据库和数据管理方面、、模型与推断方面考量、兴趣度度量、复杂度的考虑,以及发现结构、可视化及在线更新等后处理。数据挖掘是“資料庫知識發現”(KDD)的分析步骤。数据挖掘:实用机器学习技术及Java实现》一书大部分是机器学习的内容。这本书最初只叫做“实用机器学习”,“数据挖掘”一词是后来为了营销才加入的。通常情况下,使用更为正式的术语,(大规模)数据分析和分析学,或者指出实际的研究方法(例如人工智能和机器学习)会更准确一些。 数据挖掘的实际工作是对大规模数据进行自动或半自动的分析,以提取过去未知的有价值的潜在信息,例如数据的分组(通过聚类分析)、数据的异常记录(通过异常检测)和数据之间的关系(通过关联式规则挖掘)。这通常涉及到数据库技术,例如。这些潜在信息可通过对输入数据处理之后的总结来呈现,之后可以用于进一步分析,比如机器学习和预测分析。举个例子,进行数据挖掘操作时可能要把数据分成多组,然后可以使用决策支持系统以获得更加精确的预测结果。不过数据收集、数据预处理、结果解释和撰写报告都不算数据挖掘的步骤,但是它们确实属于“資料庫知識發現”(KDD)过程,只不过是一些额外的环节。 类似词语“”、“数据捕鱼”和“数据探测”指用数据挖掘方法来采样(可能)过小以致无法可靠地统计推断出所发现任何模式的有效性的更大总体数据集的部分。不过这些方法可以建立新的假设来检验更大数据总体。.

新!!: 基本的電腦科學主題列表和数据挖掘 · 查看更多 »

整数

整数,是序列中所有的数的统称,包括负整数、零(0)与正整数。和自然數一樣,整數也是一個可數的無限集合。這個集合在数学上通常表示粗體Z或\mathbb,源于德语单词Zahlen(意为“数”)的首字母。 在代數數論中,這些屬於有理數的一般整數會被稱為有理整數,用以和高斯整數等的概念加以區分。.

新!!: 基本的電腦科學主題列表和整数 · 查看更多 »

數值分析

#重定向 数值分析.

新!!: 基本的電腦科學主題列表和數值分析 · 查看更多 »

传出传入
嘿!我们在Facebook上吧! »