助记符表示指令功能的计算机语言,计算机语言分类.doc
計(jì)算機(jī)語言分類
程序設(shè)計(jì)語言的分類
程序設(shè)計(jì)語言分為低級(jí)語言和高級(jí)語言。最初的計(jì)算機(jī)程序都是用0和1的序列表示的,程序員直接使用的是機(jī)器指令,無需翻譯,從紙帶打孔輸入即可執(zhí)行得到結(jié)果。后來為了方便記憶,就將用0、1序列表示的機(jī)器指令都用符號(hào)助記,這些與機(jī)器指令一一對(duì)應(yīng)的助記符就成了匯編指令,從而誕生了匯編語言。無論是機(jī)器指令還是匯編指令都是面向機(jī)器的,統(tǒng)稱為低級(jí)語言。
機(jī)器語言Machine Language(低級(jí)語言)
機(jī)器語言是計(jì)算機(jī)唯一能接受和執(zhí)行的語言。機(jī)器語言由二進(jìn)制碼組成,每一串二進(jìn)制碼叫做一條指令。機(jī)器語言是直接用二進(jìn)制代碼指令表達(dá)的計(jì)算機(jī)語言,指令是用0和1組成的一串代碼。
如某種計(jì)算機(jī)的指令為1XXXXXXXXXX00000,它表示讓計(jì)算機(jī)進(jìn)行一次加法操作;而指令1XXXXXXXXXX00000則表示進(jìn)行一次減法操作。它們的前八位表示操作碼,而后八位表示地址碼。從上面兩條指令可以看出,它們只是在操作碼中從左邊第0位算起的第6和第7位不同。這種機(jī)型可包含256( 28)個(gè)不同的指令。
機(jī)器語言或稱為二進(jìn)制代碼語言,計(jì)算機(jī)可以直接識(shí)別,不需要進(jìn)行任何翻譯。每臺(tái)機(jī)器的指令,其格式和代碼所代表的含義都是硬性規(guī)定的,它是第一代的計(jì)算機(jī)語言。機(jī)器語言對(duì)不同型號(hào)的計(jì)算機(jī)來說一般是不同的。
使用機(jī)器語言編寫程序是一種相當(dāng)煩瑣的工作,既難于記憶也難于操作,編寫出來的程序全是由0和1的數(shù)字組成,直觀性差、難以閱讀。不僅難學(xué)、難記、難檢查、又缺乏通用性,給計(jì)算機(jī)的推廣使用帶來很大的障礙。
最早的程序設(shè)計(jì)語言都采用機(jī)器語言來編寫。當(dāng)時(shí),要在計(jì)算機(jī)上運(yùn)行的所有算法都必須直接用機(jī)器語言來表達(dá),計(jì)算機(jī)才能接受。算法的運(yùn)算序列包括運(yùn)算對(duì)象和運(yùn)算結(jié)果都必須轉(zhuǎn)換為指令序列。其中的每一條指令都以編碼 指令碼和地址碼 的形式出現(xiàn)。與算法語言表達(dá)的算法,相差十萬八千里。對(duì)于沒受過程序設(shè)計(jì)專門訓(xùn)練的人來說,一份程序恰似一份"天書",讓人看了不知所云,可讀性極差。直接用機(jī)器語言表達(dá)算法有許多缺點(diǎn)。
1 大量繁雜瑣碎的細(xì)節(jié)牽制著程序員,使他們不可能有更多的時(shí)間和精力去從事創(chuàng)造性的勞動(dòng),執(zhí)行對(duì)他們來說更為重要的任務(wù)。如確保程序的正確性、高效性。
2 程序員既要駕馭程序設(shè)計(jì)的全局又要深入每一個(gè)局部直到實(shí)現(xiàn)的細(xì)節(jié),即使智力超群的程序員也常常會(huì)顧此失彼,屢出差錯(cuò),因而所編出的程序可靠性差,且開發(fā)周期長(zhǎng)。
3 由于用機(jī)器語言進(jìn)行程序設(shè)計(jì)的思維和表達(dá)方式與人們的習(xí)慣大相徑庭,只有經(jīng)過較長(zhǎng)時(shí)間職業(yè)訓(xùn)練的程序員才能勝任,使得程序設(shè)計(jì)曲高和寡。
4 可讀性差,不便于交流與合作。
5 因?yàn)樗鼑?yán)重地依賴于具體的計(jì)算機(jī),所以可移植性差,重用性差。
這些弊端造成當(dāng)時(shí)的計(jì)算機(jī)應(yīng)用未能迅速得到推廣。
匯編語言Assembler Language(低級(jí)語言)
為了克服機(jī)器語言上述的缺點(diǎn),出路在于程序設(shè)計(jì)語言的抽象,讓它盡可能地接近于算法語言。為此,人們首先注意到的是可讀性和可移植性,因?yàn)樗鼈兿鄬?duì)地容易通過抽象而得到改善。于是,很快就出現(xiàn)匯編語言。這種語言對(duì)機(jī)器語言的抽象,首先表現(xiàn)在將機(jī)器語言的每一條指令符號(hào)化:指令碼代之以記憶符號(hào),地址碼代之以符號(hào)地址,使得其含義顯現(xiàn)在符號(hào)上而不再隱藏在編碼中,可讓人望"文"生義。其次表現(xiàn)在這種語言擺脫了具體計(jì)算機(jī)的限制,可在不同指令集的計(jì)算機(jī)上運(yùn)行,只要該計(jì)算機(jī)配上匯編語言的一個(gè)匯編程序。這無疑是機(jī)器語言朝算法語言靠攏邁出的一步。但是,它離算法語言還太遠(yuǎn),以致程序員還不能從分解算法的數(shù)據(jù)、運(yùn)算和控制到匯編才能直接表達(dá)的指令等繁雜瑣碎的事務(wù)中解脫出來。
用能反映指令功能的助記符表達(dá)的計(jì)算機(jī)語言叫匯編語言。它是符號(hào)化了的機(jī)器語言。用匯編語言編寫的程序叫匯編語言源程序,計(jì)算機(jī)無法執(zhí)行。必須用匯編程序把它翻譯成機(jī)器語言目標(biāo)程序,計(jì)算機(jī)才能執(zhí)行。這個(gè)翻譯過程稱為匯編過程。 匯編語言是用助記符表示指令功能的計(jì)算機(jī)語言。與機(jī)器語言相比,匯編語言具有以下的幾個(gè)特點(diǎn):
1 它使用符號(hào)來表示操作碼和地址碼,這種符號(hào)便于記憶,稱為記憶碼。
2 匯編程序自動(dòng)處理存儲(chǔ)分配,毋需程序員做存儲(chǔ)分配工作。
3 程序員可以直接書寫十進(jìn)制數(shù)。
匯編語言比起機(jī)器語言在很多方面都有很大的優(yōu)越性,如編寫容易、修改方便、閱讀簡(jiǎn)單、程序清楚等,但在計(jì)算機(jī)語言系統(tǒng)中,把匯編語言仍然列入“低級(jí)語言”的范疇,它仍然是屬于面向機(jī)器的語言,也就是說,不同的計(jì)算機(jī)可以有不同的指令集。
高級(jí)語言(High-level language)
機(jī)器語言和匯編語言都是面向機(jī)器的,高級(jí)語言是面向用戶的。到了50年代中期,出現(xiàn)程序設(shè)計(jì)的高級(jí)語言如Fortran,Algol60,以及后來的PL/l,Pascal等,算法的程序表達(dá)才產(chǎn)生一次大的飛躍。用高級(jí)語言編寫的程序叫做高級(jí)語言源程序,必須翻譯成機(jī)器語言目
總結(jié)
以上是生活随笔為你收集整理的助记符表示指令功能的计算机语言,计算机语言分类.doc的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 俄罗斯DST收购ICQ;苹果收购芯片提供
- 下一篇: 17个获取设计灵感创意必备网站