ARM特有的指令

譯注: 這邊講的都是跟ARM v4同時(shí)代的,2000年之前的指令集

ARM 里面最不常用的, 大概就是指令的條件執(zhí)行。 每條指令的開(kāi)頭都有4個(gè)位可以標(biāo)識(shí)執(zhí)行條件, 根據(jù)當(dāng)前的條件碼, 確定指令是否真實(shí)執(zhí)行。 因此,可以將一些條件分支化做無(wú)條件分支指令執(zhí)行。 這可以有效減少執(zhí)行的代碼數(shù)量和時(shí)間。

12個(gè)位的立即數(shù)可以有獨(dú)特的解釋方式。 首先,低8位零擴(kuò)展到32位數(shù), 高4位則表示為2的指數(shù)。 這讓立即數(shù)可以表示更多的數(shù)值,擴(kuò)展到最多為32位的立即數(shù)。

操作數(shù)的移位也不限制于立即數(shù)。 所有算術(shù)和邏輯處理操作的第二個(gè)寄存器可以可選的移位。 移位操作包括邏輯左移,邏輯右移,算術(shù)右移,和循環(huán)右移。 觀察移位加,移位判斷等操作出現(xiàn)在ARM程序中的頻率也是一件有意思的事。

其余的指令

  • 塊加載和存儲(chǔ): 指令中的16位掩碼標(biāo)識(shí)了在一條指令當(dāng)中,16個(gè)寄存器中的任意需要讀取或者保存的寄存器。 這些指令一般用在函數(shù)的開(kāi)頭和結(jié)束。 這些指令也可以用在memcpy之類的函數(shù),可以達(dá)到單寄存器讀寫4倍的帶寬。
  • 反向減: RSB允許讓第一個(gè)寄存器被一個(gè)立即數(shù)減。 RSC 的功能類似,不過(guò)還支持標(biāo)識(shí)溢出。
  • 長(zhǎng)乘: 類似于MIPS, Hi/Lo寄存器里面保存了64位的有符號(hào)(SMULL)或者無(wú)符號(hào)(UMULL)結(jié)果。
  • 沒(méi)有除法: 類似于Alpha, 硬件不支持整數(shù)除法。
  • 條件trap: 因?yàn)锳RM的所有指令都支持條件執(zhí)行,所以SWI也支持。
  • 協(xié)處理器接口: 像很多桌面 RISC 一樣, ARM 定義了完整的協(xié)處理器指令: 數(shù)據(jù)傳輸, 通用寄存器和協(xié)處理器交換, 以及協(xié)處理器操作。
  • 浮點(diǎn)體系結(jié)構(gòu): ARM中的浮點(diǎn)體系結(jié)構(gòu)用的是協(xié)處理器接口, 實(shí)現(xiàn)在 FPA10 協(xié)處理器。
  • 跳轉(zhuǎn)和切換指令集: BX 指令可以切換ARM和Thumb模式, 低31位表示跳轉(zhuǎn)的目標(biāo)地址, 最高位決定是ARM(1)還是 Thumb(0)。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 算術(shù)和邏輯指令A(yù)DC : 帶進(jìn)位的加法(Addition with Carry)ADC{條件}{S} <dest...
    luffier閱讀 4,005評(píng)論 0 3
  • ARM 匯編指令學(xué)習(xí):[2]ARM指令集 一、跳轉(zhuǎn)指令 1、 B(跳轉(zhuǎn)指令)及BL(帶返回跳轉(zhuǎn)指令) 其中: L決...
    techping閱讀 3,350評(píng)論 0 2
  • 窗外,大雨滂沱。坐在房間的窗臺(tái)上,細(xì)看雨粒在窗前的敲打,又似瀑布匆匆流過(guò)。 很快的,一下兩個(gè)月就過(guò)去了。已經(jīng)跟高中...
    白玫瑰與紅玫瑰閱讀 267評(píng)論 0 1
  • 分手第一天,忙了一整天。不敢讓自己停下來(lái),感覺(jué)天都是灰色的。哪里都有回憶。吃飯的地方,熟悉的身影,每一個(gè)一起走過(guò)的...
    飛人購(gòu)閱讀 156評(píng)論 0 1
  • 畫得很別扭,但也放著當(dāng)作以后拿來(lái)見(jiàn)證進(jìn)步吧
    排骨要增肥__閱讀 196評(píng)論 2 0

友情鏈接更多精彩內(nèi)容