首頁  >  文章  >  組合語言是面向機器的語言嗎

組合語言是面向機器的語言嗎

青灯夜游
青灯夜游原創
2020-11-02 10:48:508720瀏覽

組合語言是機器導向的程式設計語言。組合語言是任何一種用於電子計算機、微處理器、微控制器或其他可程式裝置的低階語言,也稱為符號語言。在不同的裝置中,組合語言對應不同的機器語言指令集,透過彙編過程轉換成機器指令。

組合語言是面向機器的語言嗎

機器語言

#電腦的硬體作為一個電路元件,它的輸出和輸入只能是有電或沒電,也就是所說的高電平和低電平,所以電腦傳遞的資料是由「0」 和「1」組成的二進制數,所以說二進制的語言是電腦語言的本質。

電腦發明之初,人們為了去控制電腦完成自己的任務或項目,只能去寫「0」、「 1」這樣的二進位數字串去控制電腦,其實就是控制電腦硬體的高低電平或通路開路,這種語言就是機器語言。

直觀上看,機器語言十分晦澀難懂,其中的含義往往要透過查表或手冊才能理解, 使用的時候非常痛苦,尤其當你需要修改已經完成的程序時,這種看起來無序的機器語言會讓你無從下手,也很難找到程式的錯誤。

而且,不同電腦的運作環境不同,指令方式操作方式也不盡相同,所以當你在這種機器語言就有了特定性,只能在特定的電腦上執行,而一旦換了機器就需要重新編程,這極大的降低了程式的使用和推廣效率。

但由於機器語言具有特定性,完美適配特定型號的計算機,故而運作效率遠高過其他語言。機器語言,也就是第一代程式語言。

組合語言(機器導向的程式設計語言)

不難看出機器語言作為程式語言,彈性較差可閱讀性也很差,為了減輕機器語言帶給軟體工程師的不適應,人們對機器語言進行了升級和改進:用一些容易理解和記憶的字母,單字來取代一個特定的指令。透過這種方法,人們很容易去閱讀已經完成的程式或理解程式正在執行的功能,對現有程式的bug修復以及營運維護都變得更加簡單方便,這種語言就是我們所說的彙編語言,即第二代計算機語言。

組合語言(Assembly Language)是任何一種用於電子電腦、微處理器、微控制器或其他可程式裝置的低階語言,也稱為符號語言。在組合語言中,用助記符取代機器指令的操作碼,用位址符號或標號取代指令或操作數的位址。在不同的裝置中,組合語言對應不同的機器語言指令集,透過彙編過程轉換成機器指令。特定的組合語言和特定的機器語言指令集是一一對應的,不同平台之間不可直接移植。

比起機器語言,彙編語言具有更高的機器相關性,更便於記憶和書寫,但又同時保留了機器語言高速度和高效率的特徵。彙編語言仍是面向機器的語言,很難從其程式碼上理解程式設計意圖,設計出來的程式不易被移植,故不像其他大多數的高階電腦語言一樣被廣泛應用。所以在高階語言高度發展的今天,它通常被用在底層,通常是程式最佳化或硬體操作的場合。

更多程式設計相關知識,請造訪:程式設計課程! !

以上是組合語言是面向機器的語言嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn