匯編指令簡介
匯編語言是計算機語言的一種,是一種低級語言。相比高級語言,匯編語言更接近底層硬件,使用更加直接,效率更高。但相對而言,匯編語言更加復雜,語法更加嚴格。
操作數指示符:
大多數指令有一個或多個操作數,指示出執行一個操作中要使用的源數據值。
操作數一般可以分為三類:
立即數
內存引用
數據傳送指令:
最頻繁使用的指令,負責將數據從一個位置復制到另一個位置。
例如:
mov %rbx, %rax : 將rbx寄存器的值移動到rax寄存器
mov %rbx, (%rax) : 將rbx寄存器的值移動到rax寄存器所表示的內存地址中
以及mov指令的一些擴展指令: movb, movw, movl, movq等等
壓入和彈出棧數據
將數據壓入程序棧中,以及從程序棧中彈出數據。
push %rbp : 將%rbp寄存器的值壓入程序棧指針指向的位置
pop %rbp : 將棧指針指向的數據彈出,放入%rbp寄存器
算數和邏輯操作
跳轉指令
導致執行切換到程序中一個全新的位置
jmp %rax 用寄存器%rax中的值作為跳轉目標
jmp是無條件跳轉,還有一些條件跳轉指令,有興趣的同學可以查一下資料。
比較和測試指令
比較指令CMP,只設置條件碼,不更新目的寄存器,其余的行為和SUB指令一致
測試指令TEST,只設置條件碼,不更新目的寄存器,其余的行為和ADD指令一致
更多詳細的內容,可以通過相關書籍進行系統性的了解,鑒于篇幅,就不多介紹了。
讓我們回到剛才的例子,可以看到由于把內存引用替換成了訪問寄存器,程序性能就有了明顯的提升。
-
計算機
+關注
關注
19文章
7638瀏覽量
90390 -
代碼
+關注
關注
30文章
4891瀏覽量
70370 -
匯編指令
+關注
關注
0文章
38瀏覽量
11630
發布評論請先 登錄
匯編語言是什么?有何優缺點
計算機組成原理與匯編語言程序設計

計算機學習教程之指令系統與匯編語言程序設計課件免費下載
計算機的機器語言和匯編語言與高級語言的詳細資料介紹
構建 4 位計算機:匯編語言和匯編器(第 2 部分)

評論