Arm指令集 偽指令

2021-09-12 07:17:34 字數 788 閱讀 1313

目錄

arm指令集

跳轉指令:

資料處理:

程式狀態暫存器傳輸指令:

load/srote指令:

協處理器指令:

異常中斷產生指令:

gnu arm偽指令

資料定義:

彙編控制:

其他指令:

blx  (register)

.string "abcd", "efgh", "hello!"

.asciz "qwer", "sun", "world!"

.ascii "welcome\0"       需要注意的是:.ascii偽操作定義的字串需要自行新增結尾字元'\0'。

.rept 重複次數

資料定義

.endr @結束重複定義

.if 條件

執行語句

.endif

.macro 巨集名 引數名列表 @偽指令.macro定義乙個巨集

巨集體.endm @.endm表示巨集結束

如果巨集使用引數,那麼在巨集體中使用該引數時新增字首「\」。巨集定義時的引數還可以使用預設值。

可以使用.exitm偽指令來退出巨集。

.section   .text 宣告乙個**段

.section   .rodata 宣告乙個唯讀資料段

.section   .data 宣告乙個資料段

.section   .bss 宣告乙個未初始化的資料段

ARM偽指令集

一 符號定義 symbol definition 偽指令 符號定義偽指令用於定義arm 匯程式設計序中的變數 對變數賦值以及定義暫存器的別名等操作。常見的符號定義偽指令有如下幾種 用於定義全域性變數的gbla gbll 和gbls。用於定義區域性變數的lcla lcll 和lcls。用於對變數賦值的...

ARM 指令集 比較指令

譯註 cmp 和 cmp 是算術指令,teq 和 tst 是邏輯指令。把它們歸入一類的原因是它們的 s 位總是設定的,就是說,它們總是影響標誌位。compare negative cmn status op 1 op 2 cmn同於cmp,但它允許你與小負值 運算元 2 的取負的值 進行比較,比如難...

ARM指令集 SWP指令

arm指令集 swp指令 swp和swpb是arm指令集中對儲存單元的原子操作,即對儲存單元的一次讀和一次不可被分割。swp和swpb分別完成儲存器和暫存器之間 乙個字 32bit 和乙個位元組 8bit 的資料交換。swp指令主要是完成arm體系架構處理器的同步操作,在linux作業系統中實現訊號...