色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > ARM處理器異常返回地址

ARM處理器異常返回地址 時間:2018-09-27      來源:未知

在ARM處理器中一條指令的執行分為取指、譯碼、執行三個階段,由于指令流水線的存在造成當前執行的指令的地址是PC-8(ARM指令集),那么當前執行指令的下一條指令的地址應該是PC-4,所以在異常產生時處理器會將PC-4的值保存到對應模式的LR寄存器中,但是該返回地址是否能夠被使用還要看具體產生的異常的種類而定。

本文引用地址://www.17old.cn/emb/Column/7517.html

FIQ與RIQ異常:

FIQ與RIQ異常返回處理是一樣的,當處理器執行完當前指令后才去查詢中斷且查看是否允許中斷,如果處理器產生了中斷,這時PC的值已經更新,即PC指向了當前指令后第三條指令的位置(被中斷指令地址加12),產生FIQ與RIQ異常后處理器將PC-4的值保存到了對應模式下的LR,而它指向的是當前被中斷指令的后面的第二條指令,因此在返回時我們需要人為的將LR中保存的值自減4以得到正確的返回地址。

預取指中止異常:

在指令預取時如果地址是非法的,該指令就被標記為有問題的指令,流水線上該指令之前的指令繼續執行,當執行被標記為有問題的指令的時候,處理器就會產生異常。產生該異常終返回時需要返回到被標記的指令處重新讀取并執行該指令,因此異常返回時需要返回到該指令處而不是該指令的下一條指令。所以在中斷返回時我們需要人為的對LR中保存的值自減4。

指令未定義異常:

指令未定義異常由當前正在執行的指令產生,即產生異常時PC的值還沒有更新,PC的值指向當前指令后面第二條指令,產生異常后LR中保存的指令是當前指令的下一條指令的地址,所以異常返回時直接把LR的值給PC即可不許人為的去修正返回地址。

軟中斷異常:

軟中斷異常與指令未定義異常一樣,也是當前指令在執行過程中就產生了異常,所以LR中保存的返回地址是當前軟中斷指令的下一條指令的地址,不需要人為的去修正,返回時直接將LR的值賦給PC即可。

數據中止異常:

產生該異常的時候程序要返回到有問題的指令處重新訪問該數據,因此應該返回到產生異常的指令處而不是產生異常指令的下一條指令處。當異常產生時PC的值已經更新,所以PC指向的是異常產生指令的后面的第三條指令,而LR中保存的是PC-4的值即異常產生指令的后面的第二條指令的地址。所以在返回時我們需人為的對LR中的值進行自減8的處理。以保證異常正確的返回。

上述每一種異常發生時,返回地址都要根據具體的異常類型進行重新修正。

上一篇:線性布局中的layout_weight屬性

下一篇:ZigBee協議棧之osal淺析

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

色偷偷偷亚洲综合网另类,亚洲欧美另类在线观看,欧美午夜激情在线,久久久精品一区
主站蜘蛛池模板: 奇米4444一区二区三区| 亚洲91精品在线| 色婷婷亚洲mv天堂mv在影片| 亚洲乱亚洲乱妇无码| 亚洲欧美一区二区激情| 久久精品国产v日韩v亚洲| 亚洲天堂av在线免费| 色噜噜狠狠狠综合曰曰曰| 日韩中文在线视频| 大桥未久av一区二区三区| 日韩欧美在线观看| 人人澡人人澡人人看欧美| 成人免费视频a| 精品亚洲一区二区三区在线观看 | 中文字幕9999| 欧美xxxx18性欧美| 国产91精品久久久久久久| 国产精品三级久久久久久电影| 91嫩草在线视频| 国产一区二区激情| 欧美日韩亚洲天堂| 国产成人啪精品视频免费网| 92版电视剧仙鹤神针在线观看| 亚洲人成电影网站色www| 欧美成人久久久| 日本精品久久中文字幕佐佐木| 91在线观看免费高清| 中文字幕v亚洲ⅴv天堂| 久久久久亚洲精品| 成人性生交xxxxx网站| 少妇高潮久久77777| 4k岛国日韩精品**专区| 精品偷拍一区二区三区在线看| 欧美成人午夜激情在线| 国产精品视频精品| 在线日韩精品视频| 全色精品综合影院| 中文字幕精品久久久久| 国产91精品久久久| 亚洲欧洲激情在线| 韩国欧美亚洲国产|