免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
ARM LR寄存器

ARM LR寄存器

分類: Linux 學習筆記 C語言 AT&T匯編 219人閱讀 評論(0) 收藏 舉報

MOV PC,LR

看下面這個ARM匯編吧

BL NEXT ;跳轉(zhuǎn)到子程序

......... ;NEXT處執(zhí)行

NEXT

..........

MOV PC,LR ;從子程序返回

這里的BL是跳轉(zhuǎn)的意思,LR(R14)保存了返回地址

PC(R15)是當前地址,把LR給PC就是從子程序返回

這里有一下總結(jié)

首先

1.SP(R13) LR(R14)PC(R15)

2.lr(r14)的作用問題,這個lr一般來說有兩個作用:
1》.當使用bl或者blx跳轉(zhuǎn)到子過程的時候,r14保存了返回地址,可以在調(diào)用過程結(jié)尾恢復。
2》.異常中斷發(fā)生時,這個異常模式特定的物理R14被設(shè)置成該異常模式將要返回的地址。

另外注意pc,在調(diào)試的時候顯示的是當前指令地址,而用mov lr,pc的時候lr保存的是此指令向后數(shù)兩條指令的地址,大家可以試一下用mov pc,pc,結(jié)果得到的是跳轉(zhuǎn)兩條指令,這個原因是由于arm的流水線造成的,預取兩條指令的結(jié)果.

3.》我以前看書不懂的地方

子程序返回的三種方法

現(xiàn)在總結(jié)如下

1.MOV PC,LR

2.BL LR

3.在子程序入口處使用以下指令將R14存入堆棧

STMFD SP!,{<Regs>,LR}

對應的,使用以下指令可以完成子程序的返回

LDMFD SP!, {<Regs>,LR}

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
關(guān)于ARM的PC指針(什么時候PC+8,PC+4,PC
轉(zhuǎn)載:arm匯編b,bl指令淺析
ARM匯編之寄存器
常用ARM匯編指令及ATPCS規(guī)則
漢化教學基地 -- 漢化新世紀教學站
安卓逆向:重溫Thumb匯編指令的細節(jié)
更多類似文章 >>
生活服務
分享 收藏 導長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服