引言
為了提高效率,進行更為底層的操作,rtos常採用彙編語句,因此了解常用的彙編語句,很有必要
彙編指令
1、.equ:類似於c中的#define,表宣告常量
例如:.equ psw 0x10000000
2、.text :宣告接下來的**是放在text段的
3、.align:宣告變數的對其寬度
例如:.align 4
4、.thumb:表示接下來使用的彙編為thumb指令
5、.syntax unified:cortex m3中,為相容thumb和thumb2,採用該指令來統一彙編語法,並統一使用32位的thumb2指令語法格式來書寫
6、.type ***, %funtion:宣告***為乙個函式
例如:.type port_start, %funtion
port_start:
ldr r0, r1
7、cpsid i:遮蔽了配置優先順序中斷,等同於primask = 1
8、cpsie i:開啟可配置優先順序中斷,等同於primask = 0
9、push:入棧,壓入多個暫存器
例如:push
10、pop:出棧
例如:pop
11、ldr:load reg,字資料載入指令
例如:ldr r0 = 50
12、ldrb:load byte,位元組資料載入指令
例如:ldrb r0, [r1](將r1的位址存到r0)
13、str:store,字資料儲存指令
例如:str r5, [r4] (將r5暫存器的值存到r4暫存器的位址,*r4 = r5)
14、strb:store byte,位元組資料儲存指令
15、add:加法指令
例如:add r1, r1, #r1 (即r1 = r1 + 1)
16、sub:減法指令
例如:sub r1, r1, #1 (即r1 = r1 - 1)
17、mov:一般傳送指令
例如:mov r1, #0 (即r1 = 0)
18、msr
彙編入門指南
2.介紹 常見概念 3.推薦資源 本教程按照作者親身經歷和 x86組合語言 從實模式到保護模式 寫成 為什麼要學彙編?眾所周知,彙編是比較早期的一種程式語言和低階語言,雖然比不上高階語言的可讀性和效率,但這種語言作為最接近機器碼的語言可以很好的幫助我們了解最底層相關機制。mov指令是資料傳送指令 如...
彙編入門總結(5)
四 串指令 ds si 源串段暫存器 源串變址.es di 目標串段暫存器 目標串變址.cx 重複次數計數器.al ax 掃瞄值.d標誌 0表示重複操作中si和di應自動增量 1表示應自動減量.z標誌 用來控制掃瞄或比較操作的結束.movs 串傳送.movsb 傳送字元.movsw 傳送字.movs...
mips 彙編入門 helloworld
原始碼如下 hello.s vb view plain copy text segment text globl main main execution starts here la a0,str put string address into a0 li v0,4 system call to p...