支撐軟件和計(jì)算機(jī)語(yǔ)言
9.1.9 支撐軟件和計(jì)算機(jī)語(yǔ)言
支撐軟件是介于系統(tǒng)軟件和應(yīng)用軟件之間的一個(gè)中間件。它是支撐各種軟件的開發(fā)與維護(hù)的軟件,又稱為軟件開發(fā)環(huán)境。其包括一系列基本的工具,比如編譯器、數(shù)據(jù)庫(kù)管理等。
計(jì)算機(jī)語(yǔ)言(Computer Language)指用于人與計(jì)算機(jī)之間通訊的語(yǔ)言。計(jì)算機(jī)語(yǔ)言是人與計(jì)算機(jī)之間傳遞信息的媒介。
1.計(jì)算機(jī)語(yǔ)言分類
計(jì)算機(jī)語(yǔ)言主要分為以下類別。
(1)機(jī)器語(yǔ)言
電子計(jì)算機(jī)所使用的是由“0”和“1”組成的二進(jìn)制數(shù),二進(jìn)制是計(jì)算機(jī)語(yǔ)言的基礎(chǔ)。計(jì)算機(jī)發(fā)明之初,人們只能寫出一串串由“0”和“1”組成的指令序列交由計(jì)算機(jī)執(zhí)行,這種語(yǔ)言,就是機(jī)器語(yǔ)言。由于每臺(tái)計(jì)算機(jī)的指令系統(tǒng)往往各不相同,所以,在一臺(tái)計(jì)算機(jī)上執(zhí)行的程序,要想在另一臺(tái)計(jì)算機(jī)上執(zhí)行,必須另編程序,這造成工作重復(fù)。編制和修改機(jī)器語(yǔ)言程序都是非常困難的。但由于使用的是針對(duì)特定型號(hào)計(jì)算機(jī)的語(yǔ)言,故而運(yùn)算效率是所有語(yǔ)言中最高的。機(jī)器語(yǔ)言,是第一代計(jì)算機(jī)語(yǔ)言。
(2)匯編語(yǔ)言
用一些簡(jiǎn)潔的英文字母、符號(hào)串來(lái)替代一個(gè)特定指令的二進(jìn)制串,比如,用“ADD”代表加法,“MOV”代表數(shù)據(jù)傳遞等等。這樣一來(lái),人們很容易讀懂并理解程序在干什么,糾錯(cuò)及維護(hù)都變得方便了,這種程序設(shè)計(jì)語(yǔ)言就稱為匯編語(yǔ)言,即第二代計(jì)算機(jī)語(yǔ)言。然而計(jì)算機(jī)是不認(rèn)識(shí)這些符號(hào)的,這就需要一個(gè)專門的程序,負(fù)責(zé)將這些符號(hào)翻譯成二進(jìn)制數(shù)的機(jī)器語(yǔ)言,這種翻譯程序被稱為匯編程序。
匯編語(yǔ)言同樣十分依賴于機(jī)器硬件,移植性不好,但效率仍十分高,針對(duì)計(jì)算機(jī)特定硬件而編制的匯編語(yǔ)言程序,能比較充分發(fā)揮計(jì)算機(jī)硬件的功能和特長(zhǎng),程序精練而且質(zhì)量高,所以至今仍是一種強(qiáng)有力的軟件開發(fā)工具。
(3)高級(jí)語(yǔ)言
高級(jí)語(yǔ)言接近于數(shù)學(xué)語(yǔ)言或人的自然語(yǔ)言,同時(shí)又不依賴于計(jì)算機(jī)硬件,編出的程序能在所有機(jī)器上通用。經(jīng)過(guò)努力,1954年,第一個(gè)完全脫離機(jī)器硬件的高級(jí)語(yǔ)言——FORTRAN問(wèn)世了。50多年來(lái),共有幾百種高級(jí)語(yǔ)言問(wèn)世,影響較大的有幾十種,如:FORTRAN、ALGOL、COBOL、BASIC、LISP、PL/1、Pascal、C、PROLOG、Ada、C++、VC、VB、Delphi、JAVA等。高級(jí)語(yǔ)言直觀、易于理解、通用性強(qiáng),編寫和修改源程序容易,因此得到了廣泛使用。高級(jí)語(yǔ)言也被稱為第三代計(jì)算機(jī)語(yǔ)言。
同樣,計(jì)算機(jī)不能直接識(shí)別高級(jí)語(yǔ)言源程序,需要經(jīng)過(guò)翻譯把高級(jí)語(yǔ)言源程序翻譯成計(jì)算機(jī)可以識(shí)別的機(jī)器語(yǔ)言程序,常見的翻譯有編譯程序和解釋程序。
(4)面向問(wèn)題的語(yǔ)言
前面三代計(jì)算機(jī)語(yǔ)言都需要編程指出怎么做(運(yùn)行步驟),第四代計(jì)算機(jī)語(yǔ)言在一定程度上只需要說(shuō)明做什么(目的),不需要寫出怎么做的過(guò)程。
第四代計(jì)算機(jī)語(yǔ)言的代表是SQL,其全稱是“結(jié)構(gòu)化查詢語(yǔ)言(Structured Query Language)”。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),因而得到了廣泛的應(yīng)用。
(5)第五代語(yǔ)言
第五代計(jì)算機(jī)語(yǔ)言除具有第四代計(jì)算機(jī)語(yǔ)言的基本特征外,還具有更多的特點(diǎn),比如:人工智能和更接近日常生活所用語(yǔ)言。因?yàn)長(zhǎng)ISP和PROLOG具有人工智能的特點(diǎn),也被一些計(jì)算機(jī)人士視為第五代計(jì)算機(jī)語(yǔ)言,當(dāng)然其“與自然語(yǔ)言接近”還不能被認(rèn)同。
2.語(yǔ)言處理程序
語(yǔ)言處理程序是將用程序設(shè)計(jì)語(yǔ)言編寫的源程序轉(zhuǎn)換成機(jī)器語(yǔ)言的形式,以便計(jì)算機(jī)能夠運(yùn)行,這一轉(zhuǎn)換是由翻譯程序來(lái)完成的。翻譯程序除了要完成語(yǔ)言間的轉(zhuǎn)換外,還要進(jìn)行語(yǔ)法、語(yǔ)義等方面的檢查。翻譯程序統(tǒng)稱為語(yǔ)言處理程序,共有三種:匯編程序、編譯程序和解釋程序。
①匯編程序:匯編程序?qū)⒂脜R編語(yǔ)言編寫的程序(源程序)翻譯成機(jī)器語(yǔ)言程序(目標(biāo)程序),這一翻譯過(guò)程稱為匯編。
②編譯程序:編譯程序是將用高級(jí)語(yǔ)言編寫的程序(源程序)翻譯成機(jī)器語(yǔ)言程序(目標(biāo)程序)。這一翻譯過(guò)程稱為編譯。
③解釋程序:解釋程序是邊掃描邊翻譯邊執(zhí)行的翻譯程序。
編譯器和匯編程序都經(jīng)常依賴于連接程序,連接程序把不同的目標(biāo)程序和標(biāo)準(zhǔn)庫(kù)函數(shù)收集或裝配到一個(gè)可直接執(zhí)行的文件中。
【例9.1-19】以下說(shuō)法中,錯(cuò)誤的是( )。
(A)高級(jí)語(yǔ)言編寫的源程序計(jì)算機(jī)可直接執(zhí)行
(B)編譯程序把高級(jí)語(yǔ)言源程序全部轉(zhuǎn)換成機(jī)器指令并產(chǎn)生目標(biāo)程序
(C)解釋程序,以解釋方式分析源程序代碼,不形成目標(biāo)程序
(D)各種高級(jí)語(yǔ)言有其專用的編譯或解釋程序
答案:(A)。
解釋:高級(jí)語(yǔ)言編寫的源程序不能直接執(zhí)行,它必須經(jīng)過(guò)編譯程序或解釋程序加工,編譯過(guò)程產(chǎn)生目標(biāo)程序(可裝配為可執(zhí)行程序),解釋過(guò)程不產(chǎn)生目標(biāo)程序(邊解釋邊執(zhí)行),語(yǔ)言不同使用的編譯程序或解釋程序也不同。
【例9.1-20】解釋程序的功能是( )。
(A)將高級(jí)語(yǔ)言程序轉(zhuǎn)換為目標(biāo)程序 (B)將匯編語(yǔ)言程序轉(zhuǎn)換為目標(biāo)程序
(C)解釋執(zhí)行高級(jí)語(yǔ)言程序 (D)解釋執(zhí)行匯編語(yǔ)言程序
答案:(C)。
解釋:解釋程序?qū)⒃闯绦蛘Z(yǔ)句一句一句讀入,對(duì)每個(gè)語(yǔ)句進(jìn)行分析和解釋執(zhí)行。
3.常用計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言
目前常用的編程語(yǔ)言特點(diǎn)和用途見表9.1-2。
表9.1-2 常用的編程語(yǔ)言特點(diǎn)和用途
【例9.1-21】下面選項(xiàng)中,屬于面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言是( )。
(A)LISP (B)C++ (C)C (D)BASIC
答案:(B)。
4.數(shù)據(jù)庫(kù)
(1)數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)。
數(shù)據(jù)庫(kù)的特點(diǎn)主要有:數(shù)據(jù)結(jié)構(gòu)化、共享性高、獨(dú)立性強(qiáng)、冗余度低、易擴(kuò)充。
(2)數(shù)據(jù)庫(kù)管理系統(tǒng)
數(shù)據(jù)庫(kù)管理系統(tǒng)(Database Management System)是一種操縱和管理數(shù)據(jù)庫(kù)的軟件,用于建立、使用和維護(hù)數(shù)據(jù)庫(kù),簡(jiǎn)稱DBMS。它對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫(kù)的安全性和完整性。用戶通過(guò)DBMS訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù),數(shù)據(jù)庫(kù)管理員也通過(guò)DBMS進(jìn)行數(shù)據(jù)庫(kù)的維護(hù)工作。
【例9.1-22】數(shù)據(jù)庫(kù)的特點(diǎn)主要有( )。
(A)數(shù)據(jù)結(jié)構(gòu)化、共享性高、獨(dú)立性弱、冗余度低
(B)數(shù)據(jù)結(jié)構(gòu)化、共享性高、獨(dú)立性強(qiáng)、冗余度低
(C)數(shù)據(jù)結(jié)構(gòu)化、共享性高、獨(dú)立性弱、冗余度大
(D)數(shù)據(jù)結(jié)構(gòu)化、共享性高、獨(dú)立性強(qiáng)、冗余度大
答案:(B)。
【例9.1-23】數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)屬于( )。
(A)應(yīng)用軟件 (B)編輯軟件 (C)會(huì)話軟件 (D)系統(tǒng)軟件
答案:(D)。
免責(zé)聲明:以上內(nèi)容源自網(wǎng)絡(luò),版權(quán)歸原作者所有,如有侵犯您的原創(chuàng)版權(quán)請(qǐng)告知,我們將盡快刪除相關(guān)內(nèi)容。