《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 解決方案 > 匯編語言介紹及優(yōu)缺點(diǎn)

匯編語言介紹及優(yōu)缺點(diǎn)

2017-06-10
關(guān)鍵詞: 匯編

匯編語言(Assembly Language) 是面向機(jī)器的程序設(shè)計(jì)語言。在匯編語言中,用助記符(Memoni)代替機(jī)器指令的操作碼,用地址符號(hào)(Symbol)或標(biāo)號(hào)(Label)代替指令或操作數(shù)的地址,如此就增強(qiáng)了程序的可讀性和編寫難度,象這樣符號(hào)化的程序設(shè)計(jì)語言就是匯編語言,因此亦稱為符號(hào)語言。使用匯編語言編寫的程序,機(jī)器不能直接識(shí)別,還要由匯編程序或者叫匯編語言編譯器轉(zhuǎn)換成機(jī)器指令。匯編程序?qū)⒎?hào)化的操作代碼組裝成處理器可以識(shí)別的機(jī)器指令,這個(gè)組裝的過程稱為組合或者匯編。因此,有時(shí)候人們也把匯編語言稱為組合語言。

匯編語言特點(diǎn)

1.機(jī)器相關(guān)性。

這是一種面向機(jī)器的低級(jí)語言,通常是為特定的計(jì)算機(jī)或系列計(jì)算機(jī)專門設(shè)計(jì)的。因?yàn)槭菣C(jī)器指令的符號(hào)化表示,故不同的機(jī)器就有不同的匯編語言。使用匯編語言能面向機(jī)器并較好地發(fā)揮機(jī)器的特性,得到質(zhì)量較高的程序。

2.高速度和高效率。

匯編語言保持了機(jī)器語言的優(yōu)點(diǎn),具有直接和簡(jiǎn)捷的特點(diǎn),可有效地訪問、控制計(jì)算機(jī)的各種硬件設(shè)備,如磁盤、存儲(chǔ)器、CPU、I/O端口等,且占用內(nèi)存少,執(zhí)行速度快,是高效的程序設(shè)計(jì)語言。

3.編寫和調(diào)試的復(fù)雜性。

由于是直接控制硬件,且簡(jiǎn)單的任務(wù)也需要很多匯編語言語句,因此在進(jìn)行程序設(shè)計(jì)時(shí)必須面面俱到,需要考慮到一切可能的問題,合理調(diào)配和使用各種軟、硬件資源。這樣,就不可避免地加重了程序員的負(fù)擔(dān)。與此相同,在程序調(diào)試時(shí),一旦程序的運(yùn)行出了問題,就很難發(fā)現(xiàn)。

匯編語言優(yōu)點(diǎn)

1、因?yàn)橛脜R編語言設(shè)計(jì)的程序最終被轉(zhuǎn)換成機(jī)器指令,故能夠保持機(jī)器語言的一致性,直接、簡(jiǎn)捷,并能象機(jī)器指令一樣訪問、控制計(jì)算機(jī)的各種硬件設(shè)備,如磁盤、存儲(chǔ)器、CPU、I/O端口等。使用匯編語言,可以訪問所有能夠被訪問的軟、硬件資源。

2、目標(biāo)代碼簡(jiǎn)短,占用內(nèi)存少,執(zhí)行速度快,是高效的程序設(shè)計(jì)語言,經(jīng)常與高級(jí)語言配合使用,以改善程序的執(zhí)行速度和效率,彌補(bǔ)高級(jí)語言在硬件控制方面的不足,應(yīng)用十分廣泛。

匯編語言缺點(diǎn)

1、匯編語言是面向機(jī)器的,處于整個(gè)計(jì)算機(jī)語言層次結(jié)構(gòu)的底層,故被視為一種低級(jí)語言,通常是為特定的計(jì)算機(jī)或系列計(jì)算機(jī)專門設(shè)計(jì)的。因此,不同的處理器有不同的匯編語言語法和編譯器,編譯的程序無法在不同的處理器上執(zhí)行,缺乏可移植性;

2、難于從匯編語言代碼上理解程序設(shè)計(jì)意圖,可維護(hù)性差,即使是完成簡(jiǎn)單的工作也需要大量的匯編語言代碼,很容易產(chǎn)生bug,難于調(diào)試;

3、使用匯編語言必須對(duì)某種處理器非常了解,而且只能針對(duì)特定的體系結(jié)構(gòu)和處理器進(jìn)行優(yōu)化,開發(fā)效率很低,周期長(zhǎng)且單調(diào)。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。