- 大學計算機基礎教程(Windows 7+Office 2010)
- 郭向周 謝艦鋒 容會
- 9886字
- 2019-09-30 12:11:21
1.3.3 計算機軟件系統
計算機功能的強弱不僅取決于其硬件的優越性,也取決于軟件配備的豐富程度。計算機軟件系統一般由系統軟件、程序設計語言及應用軟件組成。
1.系統軟件
系統軟件是計算機系統必備的軟件,主要功能是管理、控制和維護計算機軟、硬件資源,由計算機廠商或軟件公司提供。系統軟件主要由操作系統、語言處理程序、數據庫系統、支持程序等組成。
1)操作系統
(1)操作系統的形成與發展。操作系統是計算機最基本、最重要、最核心的系統軟件。操作系統從無到有、從小到大,功能不斷增強,它是隨著計算機硬件技術和軟件技術的發展而逐步完善的。操作系統的形成過程大致經歷了手工操作、管理程序和操作系統3個階段。
(2)操作系統的概念。操作系統是直接控制和管理計算機硬件系統和軟件資源的程序集合。操作系統是計算機系統的總管,是用戶和計算機之間的接口,是用來對計算機的硬件和軟件資源進行管理,是系統軟件中最核心最重要的軟件。
引入操作系統基于兩個目的:一是方便用戶使用計算機,為用戶提供一個清晰、簡潔、易于操作的友好界面。二是要最大限度地使計算機系統中的CPU、內存、外圍設備、程序等各種硬件資源和信息資源得到充分和合理的利用。
關于操作系統可以從三個方面來理解:
①操作系統是計算機系統中最重要的、最基本和不可缺少的系統軟件之一。沒有操作系統,計算機就不能運行;用戶如果不了解操作系統,就不能使用好計算機。
②操作系統是計算機系統的“總管”。它由許多程序模塊組成,這些程序模塊相互配合,共同完成對計算機硬件和軟件資源的管理,并合理地組織工作流程,控制、指揮和協調內存與外圍設備的工作。操作系統與計算機的硬件系統密切相關。
③計算機配上操作系統有以下好處:能提高計算機的使用效率;能合理、安全、可靠地管理計算機的四大資源(CPU、存儲器、I/O設備和文件);用戶通過操作系統的人機交互接口界面能方便地操作計算機,而不必去過多地理解各種硬件的特性和直接操作硬件。
(3)操作系統的功能。操作系統的功能分為進程與處理機管理、內存的分配和管理、外圍設備的管理以及文件管理。
①進程與處理機管理:處理機是指CPU。CPU是執行程序(包括系統程序和用戶程序)的唯一部件,是計算機中最寶貴的硬件資源。CPU處理信息速度是很快的。無論是存儲器的存取速度,還是外圍設備的工作速度,都遠遠比不上CPU的速度。如果CPU服從其他部件的較慢速度,那么它的功能就不能充分發揮,這無疑是一種浪費。在操作系統控制下,CPU按預先規定的優先順序和管理原則,輪流地為若干外圍設備和用戶服務,或者在同一段時間內并行地處理多個任務,以達到資源共享,從而大大提高整個計算機系統的工作效率。如何管理好CPU、提高CPU的使用效率就成為操作系統的核心任務。尤其是在多用戶系統中,同時有多個用戶在使用計算機,同時運行著多個程序,CPU如何分配、如何調度,這就是處理機管理要解決的問題。即使是在微型計算機上,也時常會讓計算機同時干著幾件事(多任務)。例如,在編輯一篇文章的同時播放著音樂;在欣賞網頁的同時下載一個文件。之所以能這樣工作,都與操作系統的調度功能分不開。
管理CPU的目的是更有效地執行程序,而正在執行的程序就是“進程”。進程也是操作系統管理的對象,進程管理與處理機管理密不可分。
②內存的分配和管理:當計算機解決一個具體問題時,內存中要預先讀入操作系統、編譯系統、用戶程序和數據等許多內容,這些既要保持聯系,又要保證各自的存儲和運行空間不受干擾和破壞。這就需要由操作系統對內存進行統一的分配和管理。一般說來操作系統將內存劃分為系統軟件區、用戶工作區、I/O設備緩沖區和數據區,并采取保護措施,使它們互相聯系而又不互相覆蓋。計算機的內存容量有限,合理地分配與使用內存是很重要的。如果一些無用的內容占據著內存空間,顯然是一種浪費,操作系統可以按一定的原則不斷收回空閑的存儲空間,并且還可使有用的內容暫時覆蓋掉無用的內容,待需要時再把被覆蓋掉的內容重新從外存調入內存,從而增加內存的虛擬容量。
③外圍設備的管理:一臺計算機常常有許多外圍設備(簡稱外設),它們向CPU發出請求,CPU要為它們服務。為了CPU和外圍設備能協調工作,就必須在操作系統的安排下,按照優先順序進行排隊,它們才能有條不紊地工作。
④文件管理:操作系統對文件的管理使用戶不必對文件在磁盤上的物理存放格式過多了解,文件統一由操作系統調度和管理。操作系統的基本功能如圖1-5所示。

圖1-5 操作系統的基本功能
(4)操作系統的分類。不同的硬件結構、不同的應用環境,要求使用不同類型的操作系統。對操作系統有多種分類方法,例如,按用戶分單用戶操作系統和多用戶操作系統;按中外文分中文操作系統和西文操作系統;按任務分單任務操作系統和多任務操作系統;按系統提供的功能分批處理操作系統、分時操作系統、實時操作系統;按計算機配置分單機配置操作系統和多機配置操作系統;單機配置操作系統又可分為大型機操作系統、小型機操作系統和微型機操作系統;多機配置又可再分為網絡操作系統和分布式操作系統。下面舉例說明不同操作系統的工作方式和特征。
①單用戶操作系統。單用戶操作系統面對單一用戶,所有資源都提供給該用戶使用,用戶對系統有絕對的控制權。單用戶操作系統一般是為微型計算機和簡單小型機而設計的操作系統,這類計算機規模小,外觀簡單,計算機的全部資源為一個用戶所獨有。大多數微型計算機的操作系統屬于此類操作系統。
②批處理操作系統。批處理操作系統的工作方式是:用戶將作業交給系統操作員,系統操作員將許多用戶的作業組成一批作業之后輸入到計算機中,在系統中形成一個自動轉接的連續的作業流,然后啟動操作系統,系統自動、依次執行各作業,最后由操作員將作業結果交給用戶。批處理操作系統的特點是:多道和成批處理。因為用戶自己不能干預自己作業的運行,一旦發現錯誤不能及時改正,從而延長了軟件開發時間,所以這種操作系統只適用于成熟的程序。其優點是:作業流程自動化,效率高,吞吐率高。缺點是:無交互手段,調試程序困難。
③分時操作系統。分時操作系統的工作方式是:一臺主機連接了若干個終端,每個終端有一個用戶在使用;用戶交互式地向系統提出命令請求,系統接收每個用戶的命令,采用時間片輪轉方式處理服務請求,并通過交互方式在終端上向用戶顯示結果;用戶根據上步結果發出下道命令。分時操作系統將CPU的時間劃分成若干個片段,稱為時間片。操作系統以時間為單位,輪流為每個終端用戶服務。由于CPU速度很快,每個用戶輪流使用一個時間片并不感到有別的用戶存在。
分時操作系統具有多路性、交互性、獨占性和及時性的特征。多路性是指同時有多個用戶使用一臺計算機,宏觀上看是多個人在同時使用一個CPU,微觀上是多個人在不同時刻輪流使用CPU。交互性是指用戶根據系統響應結果進一步提出新請求(用戶直接干預每一步)。獨占性是指用戶感覺不到計算機為他人服務,就像整個系統為他所占有。及時性是指系統對用戶提出的請求及時響應。
常見的通用操作系統是分時系統與批處理系統的結合,其原則是分時優先,批處理在后。“前臺”響應需頻繁交互的作業,如終端的要求;“后臺”處理時間性要求不強的工作。
④實時操作系統。實時操作系統是指計算機能及時響應外部事件的請求,“實時”即“立即”的意思。在規定的嚴格時間內完成對該事件的處理,并控制所有實時設備和實時任務協調一致地工作的操作系統。實時操作系統主要追求的目標是對外部請求在嚴格時間范圍內做出反應,具有高可靠性和完整性。如計算機對飛機的飛行、導彈的發射、軋鋼、機械加工等生產過程的控制,就要用實時控制操作系統;對于預定機票、查詢航班信息、情報檢索等,就要用實時信息處理系統。
⑤網絡操作系統。網絡操作系統就是在原來各自計算機系統操作上,按照網絡體系結構的各個協議標準進行開發,使之包括網絡管理、通信、資源共享、系統安全和多種網絡應用服務的操作系統。常用的網絡操作系統有Windows Server、Novell NetWare等。
在網絡操作系統支持下,網絡中的各臺計算機之間可以進行通信和共享資源。除了通信和資源共享外,還提供一些特殊的功能,如文件傳輸(將一個文件從一臺計算機經網絡傳送到另一臺計算機)、遠程作業錄入(將一個計算任務送到其他計算機去執行并將執行結果送回本機)。
⑥分布式操作系統。大量的計算機通過網絡被連接在一起,可以獲得極高的運算能力及廣泛的數據共享,這種系統被稱為分布式操作系統(distributed system)。
分布式操作系統的特征是:統一性,即它是一個統一的操作系統;共享性,即所有的分布式操作系統中的資源都是共享的;透明性,其含義是用戶并不知道分布式操作系統是運行在多臺計算機上,在用戶眼里整個分布式操作系統像是一臺計算機,對用戶來講是透明的;自治性,即處于分布式操作系統的多個主機都處于平等的地位。
分布式操作系統可以較低的成本獲得較高的運算性能,即分布式。分布式操作系統的另一個優勢是可靠性。由于有多個CPU系統,因此當一個CPU系統發生故障時,整個系統仍舊能夠工作。對于高可靠的環境,如核電站等,分布式操作系統是其用武之地。
⑦嵌入式操作系統。嵌入式操作系統是為嵌入式電子設備提供的現代操作系統。嵌入式電子設備泛指內部嵌有計算機的各種電子設備,這些電子設備的應用范圍涉及信息采集、信息交流、通信娛樂等應用領域。嵌入式操作系統是嵌入在這些設備內部的計算機操作系統,為設備實現各種靈活功能提供信息處理系統平臺。嵌入式操作系統的主要特點是要滿足多種多樣嵌入式設備的功能需求和滿足設備應用環境的需求,主要包括:
●盡量節約設備的電池耗電,提供電源管理功能。
●應用中有不同檔次的實時性要求,特別是滿足音頻、視頻影像等信息服務的及時性要求。
●高可靠性要求,要防止信息丟失、泄露、惡意破壞等。
●操作系統的易移植性的要求,滿足在多種硬件環境下安裝和配置的需要。
⑧智能卡操作系統。在日常生活中的各類智能卡中都隱藏著一個微型操作系統,稱為智能卡操作系統。它圍繞著智能卡的操作要求,提供了一些必不可少的管理功能。
智能卡的名稱來源于英文名詞smart card,智能卡中的集成電路包括中央處理機、存儲部件以及對外聯絡的通信接口,其原理及構造如圖1-6所示。

圖1-6 智能卡示意圖
智能卡操作系統一般都是根據某種智能卡的特點及其應用范圍而專門設計開發的。智能卡操作系統所提供的指令類型大致可分為數據管理類、通信控制類和安全控制類,其基本指令集由ISO/IEC 7816-4國際標準給出。
在讀寫器與智能卡之間通過“命令-響應”方式進行通信和控制,即讀寫器發出操作命令,智能卡接收命令,操作系統對命令加以解釋,完成命令的解密與檢驗,然后操作系統調用相應程序進行數據處理,產生應答信息,加密后送給讀寫器。
智能卡操作系統具有4個基本功能:資源管理、通信管理、安全管理和應用管理。資源管理的基本任務是管理卡上的硬件、軟件和數據資源。通信管理的主要功能是執行智能卡的信息傳送協議,接收讀寫器發出的指令,對指令傳遞是否正確進行判斷,自動產生對指令的應答并發回讀寫器,為送回讀寫數據及應答信息自動添加傳輸協議所規定的附加信息。安全管理包括對用戶與卡的鑒別、核實功能,以及對傳輸加密與解密操作等。應用管理功能包括對讀寫器發來的命令進行判斷、譯碼和處理。
一臺計算機中可以有兩種或兩種以上的操作系統并存。例如,操作系統Windows 7與操作系統Linux可同時并存。
一個操作系統可以兼有多種操作系統的功能。在已推出的多種操作系統中,UNIX就是一個多用戶、多任務的分時操作系統;MS-DOS是單用戶單任務操作系統;OS/2是單用戶多任務操作系統;Windows、Linux是一種提供了圖形用戶界面的多任務操作系統。
(5)常用的操作系統。不同的用途、不同的計算機根據需要可以采用不同的操作系統。下面簡要介紹在微型計算機上廣泛使用的幾種操作系統。
①DOS操作系統。DOS操作系統是Microsoft公司開發的,早期廣泛運行于IBM PC及其兼容機上的磁盤操作系統(因主要功能是對磁盤文件存儲的管理),全名是MS-DOS。
MS-DOS的最早版本是1981年8月發表的1.0版,至1993年6月推出了6.0版本。MS-DOS是一個單用戶微型計算機操作系統,4.0版本開始具有多任務處理能力。主要功能有命令處理、文件管理和設備管理。命令處理對用戶輸入的鍵盤命令進行解釋和處理;文件管理負責建立、刪除和讀寫各類文件;設備管理完成各種外圍設備,如鍵盤、顯示器、打印機、磁盤和異步通信設備的輸入/輸出操作。此外,MS-DOS還具有系統管理和內存管理等功能。它是一種命令操作系統。例如,刪除磁盤(D:\)上的名為ABC.TXT的文件可用刪除命令:DEL D:\ABC.TXT。
②Windows操作系統。Windows操作系統是由Microsoft公司開發的支持多道程序運行的具有圖形界面環境的操作系統。Windows最初是作為對DOS操作系統的圖形化擴充而推出的,它的多任務圖形界面以及統一的應用程序接口,使得在Windows環境下運行的應用程序的操作大為簡化。
Windows操作系統不斷發展和更新,其功能更廣,安全性更高,使用更方便,網絡更強大。
③UNIX操作系統。UNIX操作系統是一種多用戶交互式通用分時操作系統。由于其結構簡單,功能強大,而且具有移植性、兼容性好,以及伸縮性、互操作性強等特色,成為使用廣泛、影響較大的主流操作系統之一,被認為是開放系統的代表。
UNIX操作系統是由美國電報電話公司的Bell實驗室開發,至今已有30多年的歷史,它最初是配置在DEC公司的PDP小型機上,后來在微型計算機上也可使用。UNIX操作系統是唯一能在微型計算機工作站、小型機到大型機上都能運行的操作系統,也是當今世界最流行的多用戶、多任務操作系統。
④Linux操作系統。Linux操作系統是一種國際流行的自由軟件操作系統。UNIX是商品軟件,而Linux是一種自由軟件。它遵循GNU組織倡導的通用公共許可證規則而開發,其源代碼可以免費向一般公眾提供。我國的紅旗Linux就是在其基礎上開發的。
1991年,芬蘭赫爾辛基大學的21歲學生Linus Torvolds在學習操作系統時,將自己開發的Linux系統源程序完整地上傳到Internet上,允許自由下載。許多人對這個系統進行改進、擴充和完善,并做出了關鍵性的貢獻。
⑤Mac OS操作系統。Mac OS操作系統是運行于蘋果Macintosh系列計算機上的操作系統,是首個在商用領域獲得成功的圖形用戶界面。由于Macintosh的架構與PC不同,而且用戶不多,所以很少受到病毒的襲擊。蘋果公司能夠根據自己的技術標準生產計算機、自主開發相應的操作系統,其技術和實力非同一般,就像是Intel和微軟的聯合體。
蘋果計算機公司成立于1976年,由Steve Jobs和Steve Wozniak兩人創立,當年他們就開發并銷售供個人使用的計算機Apple I,先后又開發了AppleⅡ、AppleⅢ微型機。蘋果公司一直以追求完美和技術領先為特色,并于1984年推出了革命性的Macintosh計算機,之后又推出了Mac II(1987)、Mac Portable(1989)、Mac LC(1990)、PowerBook 100(1991)、PowerBook165c(1993)、Power Mac(1994)、Power Mac G3(1997)和Power Mac G4(2003)。蘋果計算機以其精美的外形設計,優秀的繪圖功能,先進的操作系統吸引了不少用戶。因此,在計算機界形成了兩大流派:IBM PC和Macintosh。
1984年,蘋果發布了System 1,這是一個黑白界面的,也是世界上第一款成功圖形化的用戶界面操作系統,System 1含有桌面、窗口、圖標、光標、菜單和卷動欄等項目。在隨后的十幾年中,蘋果操作系統歷經了System 1到System 7.5的變化,蘋果操作系統從單調的黑白界面變成8色、16色、真彩色,在穩定性、應用程序數量、界面效果等各方面,都發生了很大的變化。從7.6版開始,蘋果操作系統更名為Mac OS,如Mac OS 8和Mac OS 9,直至現在的Mac OS x操作系統。
Mac OS x版本是以大型貓科動物命名的。2001年3月,Mac OS x正式發布,Mac OS x 10.0版本的代號為獵豹(Cheetah),10.1版本代號為美洲獅(Puma)(2001.9)、10.2版本的代號為美洲虎(Jaguar)(2002.8)、10.3版本的代號為黑豹(Panther)(2003.10)、10.4版本的代號為老虎(Tiger)(2005.4)、10.5版本的代號美洲豹(Leopard)(2007.10),2009年8月發布的Mac OS x 10.6版本代號為雪豹(Snow Leopard)。
2)語言處理程序
通常把用高級語言或匯編語言編寫的程序稱為源程序。計算機不能直接識別源程序,必須先翻譯成用機器指令表示的目標程序才能執行。語言處理程序的任務就是將源程序翻譯成目標程序。
語言處理程序可分為匯編程序、編譯程序和解釋程序三種。
(1)匯編程序。把用匯編語言編寫的源程序翻譯成機器指令表示的目標程序的程序稱為匯編程序,翻譯的過程稱為“匯編”。
(2)編譯程序。編譯程序將高級語言源程序整個翻譯成目標程序,使目標程序和源程序在功能上完全等價,然后執行目標程序。翻譯過程稱為“編譯”。
(3)解釋程序。解釋程序將高級語言源程序一句一句地翻譯成機器指令,翻譯一句執行一句,當源程序翻譯完后,目標程序也執行完畢。翻譯過程稱為“解釋”。
從上面的介紹可以看出:“編譯”和“解釋”兩種翻譯方式各有其優缺點。編譯方式執行速度快,省時,但占用內存多,浪費存儲空間,使用不夠靈活;“解釋”方式執行速度慢,費時,但占用內存少,節省存儲空間,使用靈活。
語言處理程序的作用在后面介紹程序設計語言時還將作介紹。
3)數據庫管理系統
數據庫管理系統(database management system,DBMS)是一種操作和管理數據庫的大型軟件,用于建立、使用和維護數據庫。它對數據庫進行統一的管理和控制,以保證數據庫的安全性和完整性。用戶通過DBMS訪問數據庫中的數據,數據庫管理員也通過DBMS進行數據庫的維護工作。它提供多種功能,可使多個應用程序和用戶用不同的方法在同一時刻或不同時刻去建立、修改和詢問數據庫。它使用戶能方便地定義和操作數據、維護數據的安全性和完整性,以及進行多用戶下的并發控制和恢復數據庫,是幫助用戶建立和使用數據庫的工具和手段。
4)支持軟件
支持軟件又稱支撐軟件,是指在軟件開發過程中進行管理而使用的軟件工具,是系統軟件的一個重要組成部分,它們或者包含在操作系統之內,或者可被操作系統調用。支持軟件包括編輯程序、連接裝配程序、診斷排錯程序、調試程序等。
(1)編輯程序。編輯程序是指在計算機上實現編輯功能的程序,它能把存在計算機中的源程序顯示在屏幕上,然后根據需要進行增加、刪除、替換和連接等操作。如EDLIN。
(2)連接裝配程序。編譯器和匯編程序都經常依賴于連接程序,它將分別在不同的目標文件中編譯或匯編的代碼搜集到一個可直接執行的文件中。在這種情況下,目標代碼,即還未被連接的機器代碼,與可執行的機器代碼之間就有了區別。連接程序還連接目標程序和用于標準庫函數的代碼,以及連接目標程序和由計算機的操作系統提供的資源(例如,存儲分配程序及輸入與輸出設備)。連接過程對操作系統和處理器有極大的依賴性。
(3)診斷排錯程序。診斷排錯程序有時又稱查錯程序。它的功能是診斷計算機各部件能否正常工作,有的既可用于對硬件故障的檢測,又可用于對程序錯誤的定位。因此,它是面向計算機維護的一種軟件。例如,對微型計算機加電以后,一般都首先運行ROM中的一段自檢程序,以檢查計算機系統是否正常工作,這段自檢程序就是最簡單的診斷程序。
(4)調試程序。調試程序是可在被編譯了的程序中判定執行錯誤的程序,它也經常與編譯器一起放在IDE中。運行一個帶有調試程序的程序與直接執行不同,這是因為調試程序保存著所有的或大多數源代碼信息(諸如函數、變量名和過程)。它還可以在預先指定的位置[稱為斷點(break point)暫停執行,并提供有關已調用的函數以及變量的當前值的信息。為了執行這些函數,編譯器必須為調試程序提供恰當的符號信息,而這有時卻相當困難,尤其是在一個要優化目標代碼的編譯器中。因此,調試又變成了一個編譯問題。
2.程序設計語言
人與人之間交流溝通主要通過使用語言來完成,這樣的語言稱為自然語言;人與計算機“交流溝通”同樣通過使用語言來完成,這樣的語言稱為計算機語言(又稱程序設計語言)。為了完成某項工作用計算機語言編寫的一組指令的集合就稱為程序。長期以來,“編寫程序”和“執行程序”是利用計算機解決問題的主要方法和手段。計算機語言的發展過程是其功能不斷完善、描述問題的方法愈加貼近人類思維方式的過程。
計算機語言主要有三大類:機器語言、匯編語言、高級語言。
1)機器語言
機器語言是計算機誕生和發展初期使用的語言,表現為二進制的編碼形式。在計算機中,指揮計算機完成某個基本操作的命令稱為計算機指令。所有指令集合稱為指令系統,直接用二進制代碼“0、1”來表示的指令系統稱為計算機的機器語言。機器語言是計算機硬件系統真正能理解和執行的唯一語言,因此,它的效率最高,執行速度最快,不需要進行“翻譯”。
機器語言是從屬于硬件設備的,不同的計算機設備有不同的機器語言。直到如今,機器語言雖然不再是程序員的編程語言,但仍然是計算機硬件所能執行的唯一語言。
在計算機發展初期,人們直接使用機器語言來編寫程序,那是一種相當復雜和煩瑣的工作。例如,一條機器指令:
0000010000001111
該指令是加法指令,將寄存器AX內容加15,結果仍保存在寄存器AX中。
可以看出,機器語言由于直接采用二進制表示,雖方便了機器,但苦了程序員,其特點是難懂、難記、不易理解,如8BD8H和03DBH是8086/8088微處理器的機器指令,如果不通過查看編碼指令手冊就很難知道其指令的含義。使用機器語言編寫程序很不方便,且要求使用者熟悉計算機的很多硬件細節。隨著計算機硬件結構越來越復雜,指令系統也變得越來越龐大,一般的工程技術人員難以掌握。為了減輕程序設計人員在編制程序工作中的煩瑣勞動,計算機工作者開展了對于程序設計語言的研究以及語言處理程序的開發。
2)匯編語言
用機器語言編寫程序有許多困難,為了克服這些困難,人們于20世紀50年代初開發了匯編語言。匯編語言是一種機器語言的“符號化”語言,使用了助記符(幫助記憶的符號)及數學語言來表示機器指令,程序員更容易記憶和理解。如ADD、MOV代表加、傳送等。匯編語言很多,如Z80匯編,PDP-11匯編等。例如,上面的機器指令可以表示為:
ADD AX,15
對計算機來說,匯編語言是無法直接運行的,由于計算機是采用二進制數,因此必須將匯編語言編寫的程序通過“匯編”程序翻譯成機器語言程序,計算機才能執行。
由于便于識別記憶,匯編語言比機器語言前進了一步,但匯編語言程序的大部分語句還是和機器指令一一對應的,語句功能不強,因此編寫一個較大的程序仍然很煩瑣。而且匯編語言都是針對特定的計算機或計算機系統設計的,對機器的依賴性仍然很強。用匯編語言編寫完的程序要依靠計算機的翻譯程序(匯編程序)翻譯成機器語言后方可執行,這時用戶看到的計算機已是裝配有匯編軟件的計算機。
由于匯編語言與硬件結合緊密,所以,在一些底層軟件的開發中(如硬件接口控制),或某些追求代碼效率的場合,程序員仍在采用匯編語言編寫程序。
機器語言和匯編語言統稱為低級語言。
3)高級語言
雖然匯編語言比機器語言前進了一步,但使用起來仍不方便,而且匯編語言通用性不好,因此人們于20世紀50年代中期又開發出了一類更為方便的語言,即高級語言。它與人們日常熟悉的自然語言和數學語言更接近。高級語言的語句功能更強、可讀性更好、編程也更加方便。例如,上面的匯編指令可寫為:
AX=AX+15。
高級語言又稱算法語言,具有嚴格的語法、語義規則,沒有二義性。在語言表示和語義描述上,更接近人類的自然語言(英語)和數學語言。計算機現在之所以能夠廣泛普及使用的原因之一,就是高級語言消除了人-機之間的語言障礙,克服了早期計算機只有專業人員才能使用的局限,這是計算機普及的前提和基礎。計算機高級語言種類很多,常用的高級語言有C、Visual Basic、Visual C、Java等。
高級語言也必須通過“編譯”或“解釋”方式翻譯成機器語言程序后,計算機才能執行。
用一種高級語言編寫的源程序,可以在具有該種語言編譯系統的不同計算機上使用。高級語言源程序經過編譯或解釋程序譯成機器語言后,便可在本臺計算機上執行。
3.應用軟件
應用軟件是為了解決用戶不同的實際問題而編寫的一類軟件。它包括商品化的通用軟件和實用軟件,也包括用戶自己編制的各種應用程序。
按照應用軟件的應用領域與開發方式,可以把應用軟件分為三類:
1)定制軟件
定制軟件是針對某些具體應用問題而研制的軟件。這類軟件是完全按照用戶自己的特定需求而專門進行開發的,應用面相對較窄,運行效率較高。例如,股票分析軟件、工資管理軟件、學籍管理軟件和企業經營管理軟件等。
2)應用軟件包
在某個應用領域中有一定通用性的軟件,通常稱為應用軟件。應用軟件包可能不能滿足該領域內所有用戶的需要,通常用戶購買這類軟件后,需要經過二次開發后才能投入實際使用。如財務管理軟件包、統計軟件包和生物醫用軟件包等。
3)流行應用軟件
在一些使用相對廣泛的領域中有著相當多用戶的流行應用軟件,這些軟件不斷推出新的版本,不斷改進其功能、效率和使用的方便性。如Microsoft Office、WPS Office等。
總的來說,應用軟件正朝著商品化、產業化、人性化方向發展。用戶界面越來越好,功能越來越完善,操作簡單,即學即用。應用軟件可以由用戶自己開發,也可以在市場上購買。各種各樣的應用軟件與日俱增,可謂只怕想不到,不怕做不到,使用也越來越方便。