計(jì)算機(jī)語(yǔ)言與編程語(yǔ)言區(qū)別.doc_第1頁(yè)
計(jì)算機(jī)語(yǔ)言與編程語(yǔ)言區(qū)別.doc_第2頁(yè)
計(jì)算機(jī)語(yǔ)言與編程語(yǔ)言區(qū)別.doc_第3頁(yè)
計(jì)算機(jī)語(yǔ)言與編程語(yǔ)言區(qū)別.doc_第4頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

計(jì)算機(jī)語(yǔ)言(Computer Language)指用于人與計(jì)算機(jī)之間通訊的語(yǔ)言。計(jì)算機(jī)語(yǔ)言是人與計(jì)算機(jī)之間傳遞信息的媒介。 計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言的發(fā)展,經(jīng)歷了從機(jī)器語(yǔ)言、匯編語(yǔ)言到高級(jí)語(yǔ)言的歷程。計(jì)算機(jī)語(yǔ)言主要分為三類(lèi):- 低級(jí)語(yǔ)言- 高級(jí)語(yǔ)言- 專(zhuān)用語(yǔ)言1、低級(jí)語(yǔ)言- 機(jī)器語(yǔ)言、匯編語(yǔ)言和符號(hào)語(yǔ)言。- 匯編語(yǔ)言源程序必須經(jīng)過(guò)匯編,生成目標(biāo)文件,然后執(zhí)行。2、高級(jí)語(yǔ)言- BASIC(True basic、Qbasic、Virtual Basic)、C、PASCAL、FORTRAN、智能化語(yǔ)言(LISP、Prolog)等等。- 高級(jí)語(yǔ)言源程序可以用解釋、編譯兩種方式執(zhí)行。通常用后一種。我們使用的C語(yǔ)言就是使用的后者。3、專(zhuān)用語(yǔ)言CAD系統(tǒng)中的繪圖語(yǔ)言和DBMS的數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)言。1.1.機(jī)器語(yǔ)言機(jī)器語(yǔ)言是指一臺(tái)計(jì)算機(jī)全部的指令集合電子計(jì)算機(jī)所使用的是由0和1組成的二進(jìn)制數(shù),二進(jìn)制是計(jì)算機(jī)的語(yǔ)言的基礎(chǔ)。計(jì)算機(jī)發(fā)明之初,人們只能用計(jì)算機(jī)的語(yǔ)言去命令計(jì)算機(jī)干這干那,一句話(huà),就是寫(xiě)出一串串由0和1組成的指令序列交由計(jì)算機(jī)執(zhí)行,這種計(jì)算機(jī)能夠認(rèn)識(shí)的語(yǔ)言,就是機(jī)器語(yǔ)言。使用機(jī)器語(yǔ)言是十分痛苦的,特別是在程序有錯(cuò)需要修改時(shí),更是如此。因此程序就是一個(gè)個(gè)的二進(jìn)制文件。一條機(jī)器語(yǔ)言成為一條指令。指令是不可分割的最小功能單元。而且,由于每臺(tái)計(jì)算機(jī)的指令系統(tǒng)往往各不相同,所以,在一臺(tái)計(jì)算機(jī)上執(zhí)行的程序,要想在另一臺(tái)計(jì)算機(jī)上執(zhí)行,必須另編程序,造成了重復(fù)工作。但由于使用的是針對(duì)特定型號(hào)計(jì)算機(jī)的語(yǔ)言,故而運(yùn)算效率是所有語(yǔ)言中最高的。機(jī)器語(yǔ)言,是第一代計(jì)算機(jī)語(yǔ)言。指令部份的范例 0000 代表 加載(LOAD) 0001 代表 儲(chǔ)存(SET) .暫存器部份的范例 0000 代表暫存器 A 0001 代表暫存器 B .內(nèi)存部份的范例 000000000000 代表位址為 0 的內(nèi)存 000000000001 代表位址為 1 的內(nèi)存 000000001000 代表位址為 16 的內(nèi)存 100000000000 代表位址為 211 的內(nèi)存 整合范例 0000,0000,000000001000 代表 LOAD A, 16 0000,0000,000000000001 代表 LOAD B, 1 0000,0001,000000001000 代表 STORE B, 16 0000,0001,000000000001 代表 STORE B, 11.2.匯編語(yǔ)言匯編語(yǔ)合中,用助記符(Memoni)代替操作碼,用地址符號(hào)(Symbol)或標(biāo)號(hào)(Label)代替地址碼。這樣用符號(hào)代替機(jī)器語(yǔ)言的二進(jìn)制碼,就把機(jī)器語(yǔ)言變成了匯編語(yǔ)言。于是匯編語(yǔ)言亦稱(chēng)為符號(hào)語(yǔ)言。為了減輕使用機(jī)器語(yǔ)言編程的痛苦,人們進(jìn)行了一種有益的改進(jìn):用一些簡(jiǎn)潔的英文字母、符號(hào)串來(lái)替代一個(gè)特定的指令的二進(jìn)制串,比如,用ADD代表加法,MOV代表數(shù)據(jù)傳遞等等,這樣一來(lái),人們很容易讀懂并理解程序在干什么,糾錯(cuò)及維護(hù)都變得方便了,這種程序設(shè)計(jì)語(yǔ)言就稱(chēng)為匯編語(yǔ)言,即第二代計(jì)算機(jī)語(yǔ)言。然而計(jì)算機(jī)是不認(rèn)識(shí)這些符號(hào)的,這就需要一個(gè)專(zhuān)門(mén)的程序,專(zhuān)門(mén)負(fù)責(zé)將這些符號(hào)翻譯成二進(jìn)制數(shù)的機(jī)器語(yǔ)言,這種翻譯程序被稱(chēng)為匯編程序。匯編語(yǔ)言同樣十分依賴(lài)于機(jī)器硬件,移植性不好,但效率仍十分高,針對(duì)計(jì)算機(jī)特定硬件而編制的匯編語(yǔ)言程序,能準(zhǔn)確發(fā)揮計(jì)算機(jī)硬件的功能和特長(zhǎng),程序精煉而質(zhì)量高,所以至今仍是一種常用而強(qiáng)有力的軟件開(kāi)發(fā)工具。1.3.高級(jí)語(yǔ)言1.3.1.高級(jí)語(yǔ)言的發(fā)展 從最初與計(jì)算機(jī)交流的痛苦經(jīng)歷中,人們意識(shí)到,應(yīng)該設(shè)計(jì)一種這樣的語(yǔ)言,這種語(yǔ)言接近于數(shù)學(xué)語(yǔ)言或人的自然語(yǔ)言,同時(shí)又不依賴(lài)于計(jì)算機(jī)硬件,編出的程序能在所有機(jī)器上通用。經(jīng)過(guò)努力,1954年,第一個(gè)完全脫離機(jī)器硬件的高級(jí)語(yǔ)言-FORTRAN問(wèn)世了,40 多年來(lái),共有幾百種高級(jí)語(yǔ)言出現(xiàn),有重要意義的有幾十種,影響較大、使用較普遍的有FORTRAN、ALGOL、COBOL、BASIC、LISP、SNOBOL、PL/1、Pascal、C、PROLOG、Ada、C+、VC、VB、Delphi、JAVA等。特別要提到的:在C語(yǔ)言誕生以前,系統(tǒng)軟件主要是用匯編語(yǔ)言編寫(xiě)的。由于匯編語(yǔ)言程序依賴(lài)于計(jì)算機(jī)硬件,其可讀性和可移植性都很差;但一般的高級(jí)語(yǔ)言又難以實(shí)現(xiàn)對(duì)計(jì)算機(jī)硬件的直接操作(這正是匯編語(yǔ)言的優(yōu)勢(shì)),于是人們盼望有一種兼有匯編語(yǔ)言和高級(jí)語(yǔ)言特性的新語(yǔ)言C語(yǔ)言。 高級(jí)語(yǔ)言的發(fā)展也經(jīng)歷了從早期語(yǔ)言到結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,從面向過(guò)程到非過(guò)程化程序語(yǔ)言的過(guò)程。相應(yīng)地,軟件的開(kāi)發(fā)也由最初的個(gè)體手工作坊式的封閉式生產(chǎn),發(fā)展為產(chǎn)業(yè)化、流水線(xiàn)式的工業(yè)化生產(chǎn)。60年代中后期,軟件越來(lái)越多,規(guī)模越來(lái)越大,而軟件的生產(chǎn)基本上是個(gè)自為戰(zhàn),缺乏科學(xué)規(guī)范的系統(tǒng)規(guī)劃與測(cè)試、評(píng)估標(biāo)準(zhǔn),其惡果是大批耗費(fèi)巨資建立起來(lái)的軟件系統(tǒng),由于含有錯(cuò)誤而無(wú)法使用,甚至帶來(lái)巨大損失,軟件給人的感覺(jué)是越來(lái)越不可靠,以致幾乎沒(méi)有不出錯(cuò)的軟件。這一切,極大地震動(dòng)了計(jì)算機(jī)界,史稱(chēng)軟件危機(jī)。人們認(rèn)識(shí)到:大型程序的編制不同于寫(xiě)小程序,它應(yīng)該是一項(xiàng)新的技術(shù),應(yīng)該像處理工程一樣處理軟件研制的全過(guò)程。程序的設(shè)計(jì)應(yīng)易于保證正確性,也便于驗(yàn)證正確性。1969年,提出了結(jié)構(gòu)化程序設(shè)計(jì)方法,1970年,第一個(gè)結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言-Pascal語(yǔ)言出現(xiàn),標(biāo)志著結(jié)構(gòu)化程序設(shè)計(jì)時(shí)期的開(kāi)始。80年代初開(kāi)始,在軟件設(shè)計(jì)思想上,又產(chǎn)生了一次革命,其成果就是面向?qū)ο蟮某绦蛟O(shè)計(jì)。在此之前的高級(jí)語(yǔ)言,幾乎都是面向過(guò)程的,程序的執(zhí)行是流水線(xiàn)似的,在一個(gè)模塊被執(zhí)行完成前,人們不能干別的事,也無(wú)法動(dòng)態(tài)地改變程序的執(zhí)行方向。這和人們?nèi)粘L幚硎挛锏姆绞绞遣灰恢碌?,?duì)人而言是希望發(fā)生一件事就處理一件事,也就是說(shuō),不能面向過(guò)程,而應(yīng)是面向具體的應(yīng)用功能,也就是對(duì)象(Object)。其方法就是軟件的集成化,如同硬件的集成電路一樣,生產(chǎn)一些通用的、封裝緊密的功能模塊,稱(chēng)之為軟件集成塊,它與具體應(yīng)用無(wú)關(guān),但能相互組合,完成具體的應(yīng)用功能,同時(shí)又能重復(fù)使用。對(duì)使用者來(lái)說(shuō),只關(guān)心它的接口(輸入量、輸出量)及能實(shí)現(xiàn)的功能,至于如何實(shí)現(xiàn)的,那是它內(nèi)部的事,使用者完全不用關(guān)心,C+、Virtual Basic、Delphi就是典型代表。高級(jí)語(yǔ)言的下一個(gè)發(fā)展目標(biāo)是面向應(yīng)用,也就是說(shuō):只需要告訴程序你要干什么,程序就能自動(dòng)生成算法,自動(dòng)進(jìn)行處理,這就是非過(guò)程化的程序語(yǔ)言。 程序設(shè)計(jì)語(yǔ)言,通常簡(jiǎn)稱(chēng)為編程語(yǔ)言,是一組用來(lái)定義計(jì)算機(jī)程序的語(yǔ)法規(guī)則。它是一種被標(biāo)準(zhǔn)化的交流技巧,用來(lái)向計(jì)算機(jī)發(fā)出指令。一種計(jì)算機(jī)語(yǔ)言讓程序員能夠準(zhǔn)確地定義計(jì)算機(jī)所需要使用的數(shù)據(jù),并精確地定義在不同情況下所應(yīng)當(dāng)采取的行動(dòng)。程序設(shè)計(jì)語(yǔ)言原本是被設(shè)計(jì)成專(zhuān)門(mén)使用在計(jì)算機(jī)上的,但它們也可以用來(lái)定義算法或者數(shù)據(jù)結(jié)構(gòu)。正是因?yàn)槿绱?,程序員才會(huì)試圖使程序代碼更容易閱讀。 高級(jí)程序設(shè)計(jì)語(yǔ)言往往使程序員能夠比使用機(jī)器語(yǔ)言更準(zhǔn)確地表達(dá)他們所想表達(dá)的思想和方法。對(duì)那些從事計(jì)算機(jī)科學(xué)的人來(lái)說(shuō),懂得程序設(shè)計(jì)語(yǔ)言是十分重要的,因?yàn)楫?dāng)今所有的計(jì)算都需要程序設(shè)計(jì)語(yǔ)言才能完成特定的任務(wù)。 程序設(shè)計(jì)語(yǔ)言 programming language 用于書(shū)寫(xiě)計(jì)算機(jī)程序的語(yǔ)言。語(yǔ)言的基礎(chǔ)是一組記號(hào)和一組規(guī)則。根據(jù)規(guī)則由記號(hào)構(gòu)成的記號(hào)串的總體就是語(yǔ)言。在程序設(shè)計(jì)語(yǔ)言中,這些記號(hào)串就是程序。程序設(shè)計(jì)語(yǔ)言有3個(gè)方面的因素,即語(yǔ)法、語(yǔ)義和語(yǔ)用。語(yǔ)法表示程序的結(jié)構(gòu)或形式,亦即表示構(gòu)成語(yǔ)言的各個(gè)記號(hào)之間的組合規(guī)律,但不涉及這些記號(hào)的特定含義,也不涉及使用者。語(yǔ)義表示程序的含義,亦即表示按照各種方法所表示的各個(gè)記號(hào)的特定含義,但不涉及使用者。語(yǔ)用表示程序與使用者的關(guān)系。 基本成分 語(yǔ)言的種類(lèi)千差萬(wàn)別。但是,一般說(shuō)來(lái),基本成分不外4種。數(shù)據(jù)成分。用以描述程序中所涉及的數(shù)據(jù)。運(yùn)算成分。用以描述程序中所包含的運(yùn)算。控制成分。用以表達(dá)程序中的控制構(gòu)造。傳輸成分。用以表達(dá)程序中數(shù)據(jù)的傳輸。 分類(lèi) 按語(yǔ)言級(jí)別,有低級(jí)語(yǔ)言和高級(jí)語(yǔ)言之分。低級(jí)語(yǔ)言包括字位碼、機(jī)器語(yǔ)言和匯編語(yǔ)言。它的特點(diǎn)是與特定的機(jī)器有關(guān),功效高,但使用復(fù)雜、繁瑣、費(fèi)時(shí)、易出差錯(cuò)。其中,字位碼是計(jì)算機(jī)唯一可直接理解的語(yǔ)言,但由于它是一連串的字位,復(fù)雜、繁瑣、冗長(zhǎng),幾乎無(wú)人直接使用。機(jī)器語(yǔ)言是表示成數(shù)碼形式的機(jī)器基本指令集,或者是操作碼經(jīng)過(guò)符號(hào)化的基本指令集。匯編語(yǔ)言是機(jī)器語(yǔ)言中地址部分符號(hào)化的結(jié)果,或進(jìn)一步包括宏構(gòu)造。 高級(jí)語(yǔ)言的表示方法要比低級(jí)語(yǔ)言更接近于待解問(wèn)題的表示方法,其特點(diǎn)是在一定程度上與具體機(jī)器無(wú)關(guān),易學(xué)、易用、易維護(hù)。當(dāng)高級(jí)語(yǔ)言程序翻譯成相應(yīng)的低級(jí)語(yǔ)言程序時(shí),一般說(shuō)來(lái),一個(gè)高級(jí)語(yǔ)言程序單位要對(duì)應(yīng)多條機(jī)器指令,相應(yīng)的編譯程序所產(chǎn)生的目標(biāo)程序往往功效較低。 按照用戶(hù)要求,有過(guò)程式語(yǔ)言和非過(guò)程式語(yǔ)言之分。過(guò)程式語(yǔ)言的主要特征是,用戶(hù)可以指明一列可順序執(zhí)行的運(yùn)算,以表示相應(yīng)的計(jì)算過(guò)程。例如,F(xiàn)ORTRAN,COBOL,ALGOL60等都是過(guò)程式語(yǔ)言。非過(guò)程式語(yǔ)言的含義是相對(duì)的,凡是用戶(hù)無(wú)法指明表示計(jì)算過(guò)程的一列可順序執(zhí)行的運(yùn)算的語(yǔ)言,都是非過(guò)程式語(yǔ)言。著名的例子是表格的生成程序(RPG)。它實(shí)質(zhì)上不是語(yǔ)言,使用者只須指明輸入和預(yù)期的輸出,無(wú)須指明為了得到輸出所需的過(guò)程。 按照應(yīng)用范圍,有通用語(yǔ)言和專(zhuān)用語(yǔ)言之分。目標(biāo)非單一的語(yǔ)言稱(chēng)為通用語(yǔ)言,例如FORTRAN、COBOL、ALGOL60等都是通用語(yǔ)言。目標(biāo)單一的語(yǔ)言稱(chēng)為專(zhuān)用語(yǔ)言,如APT等。 按照使用方式,有交互式語(yǔ)言和非交互式語(yǔ)言之分。具有反映人?機(jī)交互作用的語(yǔ)言成分的稱(chēng)為交互式語(yǔ)言,如BASIC語(yǔ)言就是交互式語(yǔ)言。語(yǔ)言成分不反映人-機(jī)交互作用的稱(chēng)非交互式語(yǔ)言,如FORTRAN、COBOL、ALGOL60、PASCAL等都是非交互式語(yǔ)言。 按照成分性質(zhì),有順序語(yǔ)言、并發(fā)語(yǔ)言和分

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論