ARM定址方式

2021-07-02 04:43:22 字數 831 閱讀 3474

arm定址方式定義

處理器根據指令中給出的資訊來找到所需運算元的方式

立即數定址

運算元本身就在指令中給出,只需要取出指令就得到了運算元的方式。(運算元稱為立即數)

add r0, r0, #0x3f;//r0 = r0 +3f

第二個數就是運算元,需要用#來作為字首

暫存器定址

運算元存在暫存器中,利用暫存器中的數值作為運算元

add r0, r1, r2;//r0 = r1 + r2

暫存器間接定址

暫存器中存放的是運算元在記憶體中的位址

ldr ro, [r2];//r0 = r2

記憶體中第1000這個位址存放的是資料5,暫存器間接定址就是在暫存器中放入的需要的資料在記憶體裡面的位址

基址變址定址

將暫存器裡面的內容(基位址)與指令中給出的位址偏移量想加,從而得到運算元在記憶體中的位址。

ldr ro, [r2,#4];

//r0 = 【r2 +4】

記憶體中第1004這個位址存放的是資料5,基址變址定址就是在暫存器中放入的位址加上偏移量得到的就是存放資料的位址。

相對定址

與基址變址定址相類似

相對定址:pc指標當前的值為基位址,指令中的位址編號,作為偏移量,將兩址想加之後得到的運算元作為有效位址。

bl next 跳轉到子程式next出執行

next

mov pc ,lr 從子程式中返回

ARM定址方式

定址方式就是指處理器根據指令中的資訊來找到指令所需的運算元的方式。arm標準彙編中使用分號注釋,gnu彙編使用 注釋 1.立即數定址 是一種特殊的定址方式,運算元就在指令中給出,只要取出指令也就取出了運算元,這個運算元也稱為立即數。add r0,r0,0x3f r0 r0 0x3f在上面這條指令中,...

ARM定址方式

所謂定址方式就是處理器根據指令中給出的位址資訊來尋找實體地址的方式。arm處理器的定址方式 目前arm處理器支援9種定址方式,分別是立即數定址 暫存器定址 暫存器偏移定址 暫存器間接定址 基址變址定址 多暫存器定址 相對定址 堆疊定址和塊拷貝定址。1.立即數定址 也叫立即定址,是一種特殊的定址方式,...

ARM定址方式

定址方式是指處理器根據指令中給出的位址資訊來尋找實體地址的方式,目前arm指令系統支援以下幾種定址方式 也稱為立即數定址,這種定址方式指令中就已經給出了運算元。也就是在執行指令的過程中,處理器取得指令的同時也取得了運算元,因此稱為立即數定址。例如 add r0,1 r0 1 r0 add r0,r0...