<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > ARM指令尋址方式之: 內(nèi)存訪問指令尋址

          ARM指令尋址方式之: 內(nèi)存訪問指令尋址

          作者: 時間:2013-09-13 來源:網(wǎng)絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/257083.htm

          6.[Rn],±Rm>

          (1)編碼格式

          指令的編碼格式如圖4.29所示。

          圖4.29 雜項內(nèi)存訪問指令——后索引寄存器偏移尋址編碼格式

          指令訪問地址為實際的基址寄存器的值。當指令的執(zhí)行條件滿足時,將基址寄存器的值加/減索引寄存器Rm的值回寫到Rn基址寄存器。

          (2)

          LDR|STR{cond>}H|SH|SB|D Rd>,[Rn],±Rm>

          其中:

          · Rn為基址寄存器,該寄存器包含內(nèi)存訪問的基地址;

          · Rm>為偏移地址寄存器,包含內(nèi)存訪問地址偏移量。

          (3)操作偽代碼

          Address = Rn

          If conditionPassed{cond} then

          If U = = 1 then

          Rn = Rn + Rm

          Else

          Rn = Rn – Rm

          (4)說明

          ① 程序寄存器r15被指定為Rm或Rn,指令的執(zhí)行結果不可預知。

          ② 如果Rm和Rn指定為同一寄存器,指令的執(zhí)行結果不可預知。

          4.2.3 批量Load/Store方式

          批量Load/Store指令將一片連續(xù)內(nèi)存單元的數(shù)據(jù)加載到通用寄存器組中或將一組通用寄存器的數(shù)據(jù)存儲到內(nèi)存單元中。

          批量Load/Store指令的尋址模式產(chǎn)生一個內(nèi)存單元的地址范圍,指令寄存器和內(nèi)存單元的對應關系滿足這樣的規(guī)則,即編號低的寄存器對應于內(nèi)存中低地址單元,編號高的寄存器對應于內(nèi)存中的高地址單元。

          指令的如下。

          LDM|STM{cond>}addressing_mode> Rn>{!},registers>^>

          指令的尋址方式如表4.6所示。

          表4.6 批量Load/Store指令的尋址方式

          格 式

          模 式

          1

          IA(Increment After)

          后遞增方式

          2

          IB(Increment Before)

          先遞增方式

          3

          DA(Decrement After)

          后遞減方式

          4

          DB(Decrement Before)

          先遞減方式

          指令的編碼格式如圖4.30所示。

          圖4.30 批量Load/Store指令編碼格式

          編碼格式中各標志位的含義如表4.7所示。

          表4.7 批量Load/Store指令編碼格式各標志位含義

          位標識

          取 值

          含 義

          P

          P=0

          Rn包含的地址,是所要訪問的內(nèi)存塊的高地址(U=0)還是低地址(U=1)

          P=1

          標識Rn所指向的內(nèi)存單元是否被訪問

          U

          U=0

          Rn所指內(nèi)存單元為所要訪問的內(nèi)存單元塊的高地址

          U=1

          Rn所指內(nèi)存單元為所要訪問的內(nèi)存單元塊的低地址

          S

          S=0

          當程序計數(shù)器PC作為要加載的寄存器之一時,S標識是否將spsr內(nèi)容拷貝到cpsr;對于不加載PC的load指令和所有store指令,S標識特權模式下,使用用戶模式寄存器組代替當前模式下寄存器組

          S=1

          W

          W=0

          數(shù)據(jù)傳送完畢,更新地址寄存器內(nèi)容

          W=1

          L

          L=0

          Store指令

          L=1

          Load指令



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();