軟件(英語:software)是一系列按照特定順序組織的電腦數據和指令,是電腦中的非有形部分。電腦中的有形部分稱為硬件,由電腦的外殼及各零件及電路所組成。電腦軟件需有硬件才能運作,反之亦然,軟件和硬件都無法在不互相配合的情形下進行實際的運作。
一般來說,計算機軟件劃分為編程語言、系統軟件、應用軟件和介于這兩者之間的中間件。其中系統軟件為計算機使用提供最基本的功能,但是并不針對某一特定應用領域。而應用軟件則恰好相反,不同的應用軟件根據用戶和所服務的領域提供不同的功能。
軟件包括所有在電腦運行的程序,和其架構無關,例如可執行文件、庫及腳本語言都屬于軟件。軟件不分架構,有其共通的特性,在運行后可以讓硬件運行依設計時要求的機能。軟件存儲在存儲器中,軟件不是可以碰觸到的實體,可以碰觸到的都只是存儲軟件的零件(存儲器)或是介質(光盤或磁片等)。
軟件的特點:
1、無形的,沒有物理形態,只能通過運行狀況來了解功能、特性和質量。
2、軟件滲透了大量的腦力勞動,人的邏輯思維、智能活動和技術水平是軟件產品的關鍵。
3、軟件不會像硬件一樣老化磨損,但存在缺陷維護和技術更新。
4、軟件的開發和運行必須依賴于特定的計算機系統環境,對于硬件有依賴性,為了減少依賴,開發中提出了軟件的可移植性。
5、軟件具有可復用性,軟件開發出來很容易被復制,從而形成多個副本。