教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是匯編語言?Python、C++ 和 Java 與匯編語言有什么關系?

更新時間:2021年05月13日11時20分 來源:傳智教育 瀏覽次數(shù):

匯編語言(assembly language)是一種用于電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。

在匯編語言中,用助記符(Mnemonics)代替機器指令的操作碼,用地址符號(Symbol)或標號(Label)代替指令或操作數(shù)的地址。在不同的設備中,匯編語言對應著不同的機器語言指令集,通過匯編過程轉換成機器指令。普遍地說,特定的匯編語言和特定的機器語言指令集是一一對應的,不同平臺之間不可直接移植。

匯編語言是面向機器的語言,而不是機器語言。機器語言和匯編語言都是最低級的編程語言,面向機器,但最最低級的還是費解的機器語言:0和1。匯編語言的創(chuàng)造是因為在早期人們長期與計算機痛苦地交流之后隨著對機器語言和自然語言、數(shù)學語言結合的強烈渴望,開始用一些例如ADD、MOV這樣的單詞表示一些操作,匯編語言可以直接操控硬件,是面向機器的低級語言,效率相當高,功能相當強,想學精通比較不易。

許多匯編程序為程序開發(fā)、匯編控制、輔助調(diào)試提供了額外的支持機制。有的匯編語言編程工具經(jīng)常會提供宏,它們也被稱為宏匯編器。

匯編語言不像其他大多數(shù)的程序設計語言一樣被廣泛用于程序設計。在今天的實際應用中,它通常被應用在底層,硬件操作和高要求的程序優(yōu)化的場合。驅動程序、嵌入式操作系統(tǒng)和實時運行程序都需要匯編語言。

匯編語言

匯編語言與機器語言有什么關系?

機器語言(machine language)是一種數(shù)字語言, 專門設計成能被計算機處理器(CPU)理解。所有 x86 處理器都理解共同的機器語言。

匯編語言(assembly language)包含用短助記符如 ADD、MOV、SUB 和 CALL 書寫的語句。匯編語言與機器語言是一對一(one-to-one)的關系:每一條匯編語言指令對應一條機器語言指令。寄存器(register)是 CPU 中被命名的存儲位置,用于保存操作的中間結果。


Python、C++ 和 Java 與匯編語言有什么關系?

高級語言如Python、C++ 和 Java 與匯編語言和機器語言的關系是一對多(one-to-many)。比如,C++ 的一條語句就會擴展為多條匯編指令或機器指令。


匯編語言可移植嗎?

一種語言,如果它的源程序能夠在各種各樣的計算機系統(tǒng)中進行編譯和運行,那么這種語言被稱為是可移植的(portable)。

例如,一個 C++ 程序,除非需要特別引用某種操作系統(tǒng)的庫函數(shù),否則它就幾乎可以在任何一臺計算機上編譯和運行。Java 語言的一大特點就是,其編譯好的程序幾乎能在所有計算機系統(tǒng)中運行。

匯編語言不是可移植的,因為它是為特定處理器系列設計的。目前廣泛使用的有多種不同的匯編語言,每一種都基于一個處理器系列。

對于一些廣為人知的處理器系列如 Motorola 68x00、x86、SUN Sparc、Vax 和 IBM-370,匯編語言指令會直接與該計算機體系結構相匹配,或者在執(zhí)行時用一種被稱為微代碼解釋器(microcode interpreter)的處理器內(nèi)置程序來進行轉換。

好口碑IT培訓



猜你喜歡:

什么是JavaSE和JavaEE?

什么是Java,Java有幾個技術平臺

什么是Python?最全的python百科

C語言發(fā)展史概述

什么是PHP?PHP可以做什么?

傳智教育高級Java工程師培訓課程

0 分享到:
和我們在線交談!