软件查看源代码讨论查看历史
软件(英语:software)是一系列按照特定顺序组织的电脑数据和指令,是电脑中的非有形部分。电脑中的有形部分称为硬件,由电脑的外壳及各零件及电路所组成。电脑软件需有硬件才能运作,反之亦然,软件和硬件都无法在不互相配合的情形下进行实际的运作。
一般来说,计算机软件划分为编程语言、系统软件、应用软件和介于这两者之间的中间件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。
软件包括所有在电脑运行的程序,和其架构无关,例如可执行文件、库及脚本语言都属于软件。软件不分架构,有其共通的特性,在运行后可以让硬件运行依设计时要求的机能。软件存储在存储器中,软件不是可以碰触到的实体,可以碰触到的都只是存储软件的零件(存储器)或是介质(光盘或磁片等)。
软件并不一定只包括可以在计算机上运行的计算机程序,有些定义中,与计算机程序相关的文档,一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。
编程语言
以最低端的角度来看,可执行文件中包括了针对特定微处理器(一般会是CPU)的机器代码,机器代码包括了一连串二进制的数值,使处理器从目前的状态变换到下一个状态。例如指令可能会修改电脑内一特定位置中的数值,其效果是用户无法直接观测到的,指令也可能让屏幕上显示特定数据,这种状态变换是用户可以看到的。处理器会依照顺序处理收到的指令,不过处理器的处理也可能受到中断,或是因为流程控制指令而改变其要处理的指令。
机器代码是许多二进制的数值,不方便工程师阅读及开发程序,因此有汇编语言,将机器代码转换为人可以看懂的助忆码。不过现在多半的软件是用高级语言[1]撰写,比较类似自然语言,对人类而言比机器代码或汇编语言要简单,方便人类使用[1]。高级语言一般会用直译或编译的方式,将软件的源代码转换为机器代码。
源代码是指以编程语言所撰写的一系列人类可阅读的电脑指令,以实现出软件的行为和功能。
应用软件
应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程式,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程式的集合,比如微软的Office软件。也可以是一个由众多独立程式组成的庞大的软件系统,比如数据库管理系统。
较常见的有
- 文书处理软体如Office、GNOME Office、 KOffice、LibreOffice、Google Docs、WPS Office
- 关联式资料库如Oracle Database数据库、SQL Server数据库
- 电脑辅助设计如CATIA、AutoCAD、FreeCAD
- 电脑程式设计[2]如C/C++、组合语言、BASIC 、 Swift、JavaScript、Java
- P2P软体如BitTorrent、 µTorrent 、Foxy、比特精灵、Vuze、 Free Download Manager
- 影像处理软体如Photoshop、CorelDRAW、Corel painter、GIMP、MAYA、Softimage、3ds Max、Blender、xsi、lightwave、Cinema 4D、Houdini、Krita
- 动态图形和视觉特效如After Effects、shake
- 网页浏览软体如Internet Explorer、Edge、Firefox、Chrome、Safari、Opera、Konqueror
- 网路通讯软体如Line、ICQ、Windows Live Messenger、UUcall、Skype、Yahoo! Messenger、QQ、AOL Instant Messenger
- 媒体播放器如MPC-HC、MPlayer、RealPlayer、GOM、VLC、WMP、暴风影音、风雷影音、Winamp、Foobar2000
- 下载管理软件如Free Download Manager、IDM
- 电子邮件如Outlook.com、Windows Live Mail、Outlook Express、Foxmail、ThunderBird、Dreammail、KMail
- 资讯安全软体如ESET、360安全卫士、德国小红伞、卡巴斯基、PC-cillin、诺顿防毒、BitDefender、瑞星杀毒、金山毒霸
- 虚拟机器如VMware、VirtualBox、Microsoft Virtual PC、Bochs
- 输入法软件如新酷音输入法、谷歌拼音输入法
- 实时控制系统
- 教育软体
视频
软件 相关视频
参考文献
- ↑ 高级语言分类,CSDN博客,2017-05-20
- ↑ P2P BITTORRENT, 软体兄弟