首页 >
电脑软件
✍ dations ◷ 2024-11-05 19:38:12 #电脑软件
软件(英语:software)是一系列按照特定顺序组织的电脑数据和指令,是电脑中的非有形部分。电脑中的有形部分称为硬件,由电脑的外壳及各零件及电路所组成。电脑软件需有硬件才能运作,反之亦然,软件和硬件都无法在不互相配合的情形下进行实际的运作。一般来说,计算机软件划分为编程语言、系统软件、应用软件和介于这两者之间的中间件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。软件包括所有在电脑运行的程序,和其架构无关,例如可执行文件、库及脚本语言都属于软件。软件不分架构,有其共通的特性,在运行后可以让硬件运行依设计时要求的机能。软件存储在存储器中,软件不是可以碰触到的实体,可以碰触到的都只是存储软件的零件(存储器)或是介质(光盘或磁片等)。软件并不一定只包括可以在计算机上运行的计算机程序,有些定义中,与计算机程序相关的文档,一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。以最低端的角度来看,可执行文件中包括了针对特定微处理器(一般会是CPU)的机器代码,机器代码包括了一连串二进制的数值,使处理器从当前的状态变换到下一个状态。例如指令可能会修改电脑内一特定位置中的数值,其效果是用户无法直接观测到的,指令也可能让屏幕上显示特定数据,这种状态变换是用户可以看到的。处理器会依照顺序处理收到的指令,不过处理器的处理也可能受到中断,或是因为流程控制指令而改变其要处理的指令。机器代码是许多二进制的数值,不方便工程师阅读及开发程序,因此有汇编语言,将机器代码转换为人可以看懂的助忆码。不过现在多半的软件是用高级语言撰写,比较类似自然语言,对人类而言比机器代码或汇编语言要简单,方便人类使用。高级语言一般会用直译或编译的方式,将软件的源代码转换为机器代码。源代码是指以编程语言所撰写的一系列人类可阅读的电脑指令,以实现出软件的行为和功能。软件的分类方式有很多种,可以依软件的目的分为以下几种:系统软件负责管理计算机系统中各种独立的硬件,使得它们可以协调工作,提供基本的功能,并为正在运行的应用软件提供平台。系统软件使得计算机用户和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。而各个硬件工作的细节则由驱动程序处理。一般来说,系统软件包括操作系统(例如BSD、DOS、Linux、macOS、iOS、OS/2、QNX、Unix、Windows等)和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,操作系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。较常见的有恶意软件是发展到危害和破坏计算机的计算机软件,因此,恶意软件是不受欢迎的。恶意软件与计算机相关的犯罪相关系,尽管一些恶意程序可能被设计为用于恶作剧。用户常会看到一些程序设计者不会注意的事物。使用现代通用型电脑(相对于嵌入式系统、模拟电脑或超级电脑)的用户常会用以下三层的软件架构来进行不同的任务:系统平台、应用程序及用户软件。软件在加载到电脑的数据存贮器(例如硬盘或存储器)后,电脑就可以运行该软件。“运行”指的是将指令集由软件移到电脑硬件中,硬件会处理指令集对应的机器代码。每一个指令都会让电脑运行特定的动作,包括搬移数据、运行运算或是改变控制流程。数据搬移一般会由存储器的一个位置移到另一个位置,有时数据搬移会用到中央处理器中允许较快速数据处理的寄存器。大量的数据搬移会用去不少的系统资源,因此有时会用“指针”来处理数据。运行运算的范围很广,简单的可以包括将某位置的数据加一,复杂的可能包括许多数据及对应的处理。软件的运行多半是一个指令接一个指令的循序进行,但有时会需要改变软件中指令运行的顺序,例如有可以使某一段程序运行数次的循环,或是依特定条件运行两段程序中的一段的分支指令,甚至是可以运行子程序,运行完成后再回到原来程序,而有些语言也支持无条件的跳跃指令。软件可以以许多不同的方式运作,包括可执行文件、源代码、脚本及电脑配置(英语:computer configuration)。软件的质量有一定的重要性,尤其在像Microsoft Office、Microsoft Windows 及Linux等商用软件或系统软件更是如此。若软件无法正确运行,可能会删除用户工作的成果,使电脑死机或是出现其他无预期的情形,这类情形称为程序错误,俗称bug。软件也会受到软件退化(英语:software aging)的影响,也就是因为许多未发现的程序错误造成的性能退化。借由软件测试可以找出并消除许多的程序错误,不过软件测试很少可以完全消除程序错误。很多大型的软件公司,例如微软、Novell及太阳微系统等,会有专门的软件测试部门,其主要工作就是测试软件。软件可以用单元测试、回归测试及其他方式进行测试。测试可能用人工进行,若是大型的程序,更常见的是用电脑自动测试。像NASA就针对其操作系统及其通信程序有特别严谨的测试流程。不同的软件一般都有对应的软件授权,软件的用户必须在同意所使用软件的许可证的情况下才能够合法的使用软件。从另一方面来讲,特定软件的许可条款也不能够与法律相抵触。依据许可方式的不同,大致可将软件区分为几类:有些国家可以申请软件专利,有些国家不行,而是用著作权的观点保护软件。不过在软件产业中,软件专利是个争议性高的议题,各方人士有不同的立场。软件专利争议(英语:Software patent debate)的主要争议点是在软件专利中,受保护不得复制的部分是其算法还是其用到的技术。软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程,其中可能可能包括研究、新的开发工作、修改、复用、重新设计(再工程)、维护,或者任何最终获得软件产品的其他活动。软件开发过程是指软件从起始到完成过程中如何进行计划、控制和监控的模型。有以下不同的几种:软件开发工具是指软件开发人员用来创建,调试,维护,或以其他方式支持的软件程序或应用程序的形式。软件由一种或多种编程语言所写成。现在存在有很多种编程语言,并且每种都具有至少一种编写的方式,其中包括它自己的一套编程工具。这些工具包含相对独立自足的程序,如编译器,调试器,解释器,链接器和文本编辑器,可以结合共同完成一个任务,很像一个人可以使用多个手握工具来固定一个物理对象。这套工具也有可能是一个集成开发环境(IDE ) ,它结合了许多这种工具或它们的全部功能。无论是通过调用程序员等有关人士的工具,或通过以一种新的方式重新实现它们的功能,IDE可以做到这一点。几乎所有的编程语言为编写提供了使用单独的工具,而不是一个IDE,因为有些程序员由于各种原因不喜欢使用IDE,或是因为IDE通常需要更长的时间才能发展形成一个可接受的标准,而不是一个个人工具。事实上,最初,新的编程语言通常不会有提供他们的IDE 。软件产业是由许多软件公司及程序设计者所组成的产业,其性质较类似服务业。由于其产业特性,毛利率较其他产业要高。软件产业的获利相当高,像微软的创始人比尔·盖茨就因为销售Microsoft Windows及Microsoft Office而数次成为美国首富。不过随着时代的变化,软件产业的分工及专业化也越来越细。例如电子游戏产业及办公室软件都属于软件产业,而两者就有不少的差异。有许多非营利的软件组织,例如自由软件基金会、GNU计划及Mozilla基金会。像万维网联盟(W3C)及互联网工程任务组(IETF)等组织发展许多软件标准,因此不同的软件可以借由这些标准互相沟通,这种标准包括例如XML、HTML、HTTP及FTP等。其他著名的软件公司有Google、Novell、SAP、Symantec、Adobe Systems、Corel,不过其中也有许多小公司有一些创新的产品。
相关
- T4噬菌体T4噬菌体是噬菌体的一个品系,属于T-系噬菌体,为烈性噬菌体。具有典型的蝌蚪状外形:六角形的头部和可收缩的长的尾部。头部的蛋白质外壳内含有折叠的DNA分子;尾部的蛋白质外壳为一
- 共价半径共价半径定义为由共价键结合的两个原子核之间距离的一半,单位通常使用皮米(pm)或埃(Å)。He、Ne、Ar等原子无共价半径数据,因至今未合成其任何共价化合物。同周期元素的单键共
- 己糖己糖(英语:Hexose),又称为六碳糖,是含有6个碳原子的单糖,化学式为C6H12O6. 1位含有醛基的6碳糖称为己醛糖, 2位含有酮基的己糖称为己酮糖。己糖六个碳原子中有五个碳原子连上了羟基
- 天文学古希腊天文学是指古典时期用希腊语记录的天文学,涵盖古典希腊时期、希腊化时期、希腊罗马时期、古典时代晚期等时期的天文学。它不局限于地理上的希腊或种族上的希腊人,因为在
- 索尔·阿伦·克里普克索尔·阿伦·克里普克(英语:Saul Aaron Kripke,/ˈkrɪpki/,音“克里普基”,1940年11月13日-),美国逻辑学家和哲学家,模态逻辑语义学创始人之一,指称因果-历史论(英语:Causal-historical
- 肋间肌肋间肌即连接相邻两肋骨骨弓的肌肉。在呼吸过程中,每对肋骨间的肋间肌收缩,使肋骨向外并向上摇动。肋间肌与横膈一起运作,以将空气吸入肺中。如果做激烈的运动,则颈部和腹部的肌
- 苯甲腈苯甲腈是具有分子式C6H5CN的芳香化合物,简写为PhCN。苯甲腈是一种无色,有甜杏仁味的液体。它可以通过苯甲酰胺脱水或者通过氰化钠和溴苯反应制备。苯甲腈是一种有用的溶剂,可以
- Hsub4/subTiOsub4/sub偏钛酸(Metatitanic acid),别名钛酸,分子式H2TiO3。白色粉末,不溶于水、无机酸和碱(新沉淀的偏钛酸除外)。由硫酸氧钛水解,然后水洗、过滤、烘干而制得。
- HyperCardHyperCard是一套为苹果Mac和Apple IIGS电脑开发的应用程序和编程工具。在万维网出现之前,它是最成功的超媒体系统之一。HyperCard融合了数据库功能和一套图形化、可扩展、可
- 三裂动物三叶动物门(学名:Trilobozoa),又名三裂动物门,是一个已经完全灭绝的动物门,在分类上属辐射对称动物,身体呈特殊的三重辐射对称结构。三叶动物生存的年代非常久远,其化石仅出现于寒武