1、mov指令
mov指令的語法格式:
rd只能是暫存器
op2暫存器或立即數
op2為暫存器時:
mov r0, r1
mov r0, r1, lsl #4 ;將r1中的值邏輯左移4位放入r0
op2為立即數
立即數就只能由0到255中得某個數經過迴圈右移偶數次(包含0次)得到
mov r0,#0x20 ;正確
mov r0,#0x200 ;正確
mov r0,#0x201 ;不可
2、ldr偽指令
那麼如果想給r0賦0x201怎麼辦呢?可以使用偽指令ldr,如果ldr第二個 運算元前有=,則是ldr偽指令
ldr r0,=#0x201 ;它會被彙編器轉換成一條「相對pc的載入指令」
常用ldr為指令向某個記憶體位址寫入乙個值
;將5寫入記憶體0x20000000處
count equ 0x20000000
ldr r0, =count
mov r1, #5
str r1, [r0]
3、ldr載入指令
ldr指令用於從記憶體中讀取資料放入暫存器
count equ 0x20000000
ldr r0, =count
ldr r1, [r0]
LDR偽指令與LDR載入指令
arm指令集中,ldr通常都是作載入指令的,但是它也可以作偽指令。ldr偽指令的形式是 ldr rn,expr 下面舉乙個例子來說明它的用法。count equ 0x40003100 ldr r1,count mov r0,0 str r0,r1 count是我們定義的乙個變數,位址為0x40003...
LDR指令和LDR偽指令
arm指令集中,ldr通常都是作載入指令,但是它也可以作偽指令。初學者一般不會注意到它們的區別,其實在嵌入式開發過程中,這兩條指令時非常常用的!我們應該了解他們的區別。ldr偽指令的形式是 ldr rn,expr 作用是裝在乙個32bit常數和乙個位址到暫存器。下面舉乙個例子來說明它的用法。coun...
LDR指令和LDR偽指令區別
arm指令集中,ldr通常都是作載入指令,但是它也可以作偽指令。初學者一般不會注意到它們的區別,其實在嵌入式開發過程中,這兩條指令時非常常用的!我們應該了解他們的區別。ldr偽指令的形式是 ldr rn,expr 作用是裝在乙個32bit常數和乙個位址到暫存器。下面舉乙個例子來說明它的用法。coun...