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

          新聞中心

          arm堆棧操作

          作者: 時(shí)間:2016-11-28 來(lái)源:網(wǎng)絡(luò) 收藏
          arm堆棧的組織結(jié)構(gòu)是 滿棧降 的形式,滿棧即sp是要停留在最后一個(gè)進(jìn)棧元素,降:就是堆棧的增長(zhǎng)方向是從高地址向低地址發(fā)展。

          arm對(duì)于堆棧的操作一般采用 LDMFD(pop)和STMFD (push) 兩個(gè)命令。

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

          以前困惑的就是STMFD 命令 對(duì)于操作數(shù) 是按照什么順序壓棧的

          比如:STMFD sp!{R0-R5,LR} 進(jìn)棧順序是:

          高地址(1方式)

          LR

          R5

          R4

          ```````

          R0<-sp

          低地址

          還是:

          高地址(2方式)

          R0

          R1

          ```

          R5

          LR <-sp

          低地址

          現(xiàn)在通過(guò)下表,可以輕松的解決這個(gè)問(wèn)題:

          尋址方式說(shuō)明pop=LDMpush=STM
          FA遞增滿LDMFALDMDASTMFASTMIB
          FD遞減滿LDMFDLDMIASTMFDSTMDB
          EA遞增空LDMEALDMDBSTMEASTMIA
          ED遞減空LDMEDLDMIBSTMEDSTMDA

          按照?qǐng)D表,可知 STMFD對(duì)應(yīng)的是STMDB,根據(jù)arm指令手冊(cè),可知STMDB入棧順序是(1方式)

          而LDMFD對(duì)應(yīng)的是LDMIA,這樣這兩個(gè)操作就可以成功配對(duì)



          關(guān)鍵詞: arm堆棧操

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁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); })();