本系列資料由"鐵道出版社" 授權(quán)發(fā)布,任何網(wǎng)站不得轉(zhuǎn)載,否則追究法律責(zé)任。
考點(diǎn)1:程序設(shè)計(jì)語言的基礎(chǔ)知識 ★★★★★
考點(diǎn)點(diǎn)撥: 本考點(diǎn)考查程序設(shè)計(jì)語言的基礎(chǔ)知識。包括低級語言、高級語言、語言處理程序等的基本概念和術(shù)語;程序設(shè)計(jì)語言的定義、分類、特點(diǎn)及其基本成分。
【試題1】 計(jì)算機(jī)能直接識別和執(zhí)行的語言是__(1)__,該語言是由__(2)__組成的。(2004年下半年上午填空42、43)
(1) A)機(jī)器語言 B)C語言 C)匯編語言 D)數(shù)據(jù)庫語言
(2) A)ASCII碼 B)SQL語句 C)0、1序列 D)BCD碼
答案:(1)A (2)C
分
4)Pascal語言
Pascal語言是70年代初由瑞士聯(lián)邦大學(xué)的N.Wirth教授創(chuàng)建的程序設(shè)計(jì)語言,為了紀(jì)念法國數(shù)學(xué)家Pascal而命名。它是在ALGOL60的基礎(chǔ)上發(fā)展起來的重要語言,其最大特點(diǎn)是簡明性與結(jié)構(gòu)化。Pascal語言不僅用作教學(xué)語言,而且也用作系統(tǒng)程序設(shè)計(jì)語言和某些應(yīng)用。所謂系統(tǒng)程序設(shè)計(jì)語言,就是用這種語言可以編寫系統(tǒng)軟件,如操作系統(tǒng)、編譯程序等。Pascal語言是一種安全可靠的語言,有強(qiáng)數(shù)據(jù)類型。語法滿足自頂向下設(shè)計(jì)和結(jié)構(gòu)程序設(shè)計(jì)。Pascal語言吸收了ALGOL語言中許多有益成分,例如用WHILE與CASE語句結(jié)構(gòu),用戶自定義數(shù)據(jù)類型等。這樣,使得Pascal語言的數(shù)據(jù)抽象進(jìn)入一個(gè)新的層次。
5)C語言
C語言是在原BCPL語言基礎(chǔ)上發(fā)展起來,用于編寫UNIX操作系統(tǒng),取BCPL的第二字母C而命名。C語言具有結(jié)構(gòu)性,是一種結(jié)構(gòu)化語言,層次清晰,易于調(diào)試和維護(hù);但它又不是完全結(jié)構(gòu)化的,因?yàn)樵贑函數(shù)中允許使用goto語句,函數(shù)可以相互調(diào)動,無嵌套關(guān)系,在同一控制流或函數(shù)中允許多個(gè)出口;語句簡練,書寫靈活;處理能力強(qiáng);移植性好。C語言的主要不足之處是它不是一種強(qiáng)類型語言,這在一定意義下影響到安全性;此外,運(yùn)算符多,優(yōu)先級復(fù)雜,對初學(xué)者不利。即使如此,它仍不失為一種有代表性的實(shí)現(xiàn)級語言。
6)C++語言
C++語言是一種在C語言基礎(chǔ)上發(fā)展起來的面向?qū)ο笳Z言,它支持?jǐn)?shù)據(jù)抽象和面向?qū)ο箫L(fēng)范。C++語言是對C語言的擴(kuò)充,從Simula中吸取了類,從ALGOL語言中吸取了運(yùn)算符的一名多用、引用和在分程序中任何位置均可說明變量,綜合了Ada語言的類屬和Clu語言的模塊特點(diǎn),形成了抽象類,從Ada、Clu和ML等語言吸取了異常處理,從BCPL語言中吸取了用∥表示注釋。
C++語言保持了C語言的緊湊、靈活、高效以及易于移植性強(qiáng)等優(yōu)點(diǎn),它對數(shù)據(jù)抽象的支持主要在于類概念和機(jī)制,對面向?qū)ο箫L(fēng)范的支持主要通過虛擬機(jī)制函數(shù)。因C++語言既有數(shù)據(jù)抽象和面向?qū)ο竽芰Γ\(yùn)行性能高,加上C語言的普及,而從C語言到C++語言的過渡較為平滑,以及C++語言與C語言的兼容程度可使數(shù)量巨大的C語言程序能方便地在C++語言環(huán)境中復(fù)用,使C++語言在短短幾年內(nèi)能迅速流行,成為當(dāng)前一種面向?qū)ο蟪绦蛟O(shè)計(jì)的主流語言。
7)Java語言
Java語言的名字取自于印度尼西亞一個(gè)盛產(chǎn)咖啡的島嶼“爪哇”:Java語言是一種簡捷的、面向?qū)ο蟮、用于網(wǎng)絡(luò)環(huán)境的程序設(shè)計(jì)語言,是由SUN MircoSystem公司于1995年5月正式對外發(fā)布的。Java語言的基本特征是:
. 簡捷易學(xué):最初開發(fā)Java語言的本意是為家用電器進(jìn)行程序控制,它堅(jiān)持面向?qū)ο蟮幕驹,又避免了運(yùn)算符 的一名多用、多重繼承等復(fù)雜概念;
. 面向?qū)ο螅涸趫?jiān)持面向?qū)ο蠓椒ǖ幕A(chǔ)上,Java提供了頗為簡單的類機(jī)制,以及富有成效的接口模型;
. 適用于網(wǎng)絡(luò)分布環(huán)境:Java是一種面向網(wǎng)絡(luò)應(yīng)用的語言,通過它所提供的類庫,可以處理TCP/IP協(xié)議,可以通過URL地址在網(wǎng)絡(luò)上訪問其它對象,能較方便地與其他計(jì)算結(jié)點(diǎn)協(xié)同工作;
. 解釋執(zhí)行和多線程:Java解釋程序能直接對Java的字節(jié)編碼進(jìn)行解釋執(zhí)行,由于可以從字節(jié)碼獲得部分編譯信息,因此使得連接過程更加簡捷;
. 安全健壯:由于Java提供了自動廢區(qū)收集、面向?qū)ο蟮漠惓L幚、自動捕獲類型說明中的常見錯(cuò)誤,一切對內(nèi)存的訪問都必須通過對象的實(shí)例變量實(shí)現(xiàn)等手段,因此,Java可以防止部分故障,具有一定的安全健壯性。
由于Java具有以上特性,所以已受到各種應(yīng)用領(lǐng)域的重視,發(fā)展很快。隨著Java芯片、Java OS、Java解釋執(zhí)行和編譯、Java虛擬機(jī)技術(shù)的日趨先進(jìn),Java語言將更加完善,發(fā)揮更大的作用。
8)LISP語言
LISP(List Processor)是表處理的縮寫。它引進(jìn)函數(shù)式程序設(shè)計(jì)概念和表處理設(shè)施,在人工智能領(lǐng)域內(nèi)廣泛使用。LISP程序與其數(shù)據(jù)結(jié)構(gòu)采用了完全相同的結(jié)構(gòu)形式與處理方式,因此可以相當(dāng)方便地采用LISP語言來編寫它的解釋程序。LISP語言除了用S表達(dá)式來統(tǒng)一處理數(shù)據(jù)與程序外,還引入了前綴運(yùn)算符表示法、遞歸數(shù)據(jù)結(jié)構(gòu)、遞歸控制結(jié)構(gòu)以及新的條件表達(dá)式形式。
9)PROLOG語言
PROLOG(Programming in Logic)語言是邏輯式程序設(shè)計(jì)語言的縮寫。是基于“邏輯可作為程序設(shè)計(jì)語言”這一思想而設(shè)計(jì)的程序設(shè)計(jì)語言。廣泛應(yīng)用于關(guān)系數(shù)據(jù)庫、數(shù)理邏輯、抽象問題求解、自然語言理解等多種領(lǐng)域中。