www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 編譯u-boot時(shí),在Makefile 的ALL變量最后加上$(obj)u-boot.dis,會(huì)編譯出u-boot.dis,u-boot.dis是通過arm-linux-objdum –d 生成u-boot的每一條指令的反匯編。33d80080: e59f13f4 ldr r1, [pc, #1012]

編譯u-boot時(shí),在Makefile 的ALL變量最后加上$(obj)u-boot.dis,會(huì)編譯出u-boot.dis,u-boot.dis是通過arm-linux-objdum –d 生成u-boot的每一條指令的反匯編。

33d80080: e59f13f4 ldr r1, [pc, #1012]
33d80084: e59f03f4 ldr r0, [pc, #1012]
33d80088: e5801000 str r1, [r0]
33d8008c: eb000015 bl 33d800e8

………

33d800e8 :
33d800e8: e3a00000 mov r0, #0 ; 0x0

上面的bl指令,從表面上看 bl 33d800e8,好像是跳到了絕對(duì)地址0x33d800e8處,此時(shí)是運(yùn)行在絕對(duì)0x0地址處,然后用bl一下子跳到了內(nèi)存地址0x33d800e8處,可是此時(shí)內(nèi)存都還沒有初始化就運(yùn)行,這怎么可能?

這好像是很矛盾,但仔細(xì)分析一下,原來是這樣的:

將 eb000015 轉(zhuǎn)為二進(jìn)制:

1110 1011 0000 0000 0000 0000 0001 0101

看一下它的具體含義,下面是b/bl 指令的格式-- 出自《ARM Instruction Set》

31-28 –> cond

27-25 –> 101

24 --> L

23-0 –> offset

"Branch instructions contain a signed 2's complement 24 bit offset. This is shifted left two bits, sign extended to 32 bits, and added to the PC. The instruction can therefore specify a branch of +/- 32Mbytes. The branch offset must take account of the prefetch operation, which causes the PC to be 2 words (8 bytes) ahead of the current instruction. Branches beyond +/- 32Mbytes must use an offset or absolute destination which has been previously loaded into a register. In this case the PC should be manually saved in R14 if a Branch with Link type operation is required.“ 出自《ARM Instruction Set》


1110 –> cond –> always 無條件跳轉(zhuǎn)

27-25 –> 說明是B 跳轉(zhuǎn)指令

24 –> L位 Branch with Link, 跳轉(zhuǎn)時(shí)將下一條指令的地址拷貝到R14(lr)中

23-0 –> offset=0x15

執(zhí)行bl后:pc = 當(dāng)前pc + ( offset<<2 + 8 ) = 0x8c+(0x15<<2+8)= 0xE8

跳到偏移地址為0xE8的地方,也就是 cpu_init_crit函數(shù)中。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

 米蘭諾維奇博士提出"語言能力雙軌進(jìn)化論",動(dòng)態(tài)命題技術(shù)破解安全性困局 貴陽2025年7月23日 /美通社/ -- 7月22日,在第八屆英語教學(xué)與測(cè)評(píng)學(xué)術(shù)研討會(huì)上,國(guó)際語言測(cè)評(píng)權(quán)威專家、朗...

關(guān)鍵字: AI 人工智能 指令 研討會(huì)

U-Boot提供命令行接口(CLI),允許開發(fā)者實(shí)時(shí)查看硬件信息、修改啟動(dòng)參數(shù)、讀寫存儲(chǔ)設(shè)備等操作。例如,通過串口或網(wǎng)絡(luò)連接可實(shí)時(shí)調(diào)試內(nèi)存狀態(tài)或監(jiān)控系統(tǒng)運(yùn)行,部分工業(yè)設(shè)備仍依賴其硬實(shí)時(shí)響應(yīng)能力。

關(guān)鍵字: uboot 嵌入式

北京 2025年7月14日 /美通社/ -- 近日,主線科技為廣州港設(shè)備自動(dòng)化改造示范區(qū)項(xiàng)目圓滿完成了純電集卡的自動(dòng)駕駛技術(shù)升級(jí),并將其商業(yè)化交付,助力項(xiàng)目順利邁入"前沿設(shè)備遠(yuǎn)控半自動(dòng)+堆場(chǎng)設(shè)備全自動(dòng)+水平運(yùn)...

關(guān)鍵字: 智能化 自動(dòng)化 線控 指令

廣州 2025年7月4日 /美通社/ -- 日前,在德國(guó)慕尼黑機(jī)器人及自動(dòng)化技術(shù)展覽會(huì)(Automatica)期間,國(guó)際獨(dú)立第三方檢測(cè)、檢驗(yàn)和認(rèn)證機(jī)構(gòu)德國(guó)萊茵TÜ...

關(guān)鍵字: 自動(dòng)化 CE 工業(yè)機(jī)器 指令

廣州 2025年7月4日 /美通社/ -- 日前,在德國(guó)慕尼黑機(jī)器人及自動(dòng)化技術(shù)展覽會(huì)(Automatica)期間,國(guó)際獨(dú)立第三方檢測(cè)、檢驗(yàn)和認(rèn)證機(jī)構(gòu)德國(guó)萊茵TÜV大中華區(qū)(簡(jiǎn)稱"T...

關(guān)鍵字: 指令 電磁兼容 協(xié)作機(jī)器人 AN

上海 2025年5月15日 /美通社/ -- 5月12日,國(guó)際獨(dú)立第三方檢測(cè)、檢驗(yàn)和認(rèn)證機(jī)構(gòu)德國(guó)萊茵TÜV大中華區(qū)(簡(jiǎn)稱"TÜV萊茵"...

關(guān)鍵字: 機(jī)器人 CE 指令 軟硬件

AI與自動(dòng)化驅(qū)動(dòng)生命科學(xué)研發(fā)革新 北京2025年2月20日 /美通社/ -- 近日,鎂伽科技正式推出LABILLION?實(shí)驗(yàn)室智慧管理平臺(tái),并于線上發(fā)布。作為鎂伽在"AI for Science(AI4S)&...

關(guān)鍵字: LAB IO ABI 指令

CPU的工作原理?主要包括以下幾個(gè)核心步驟:獲取指令、解碼、執(zhí)行和存儲(chǔ)結(jié)果。?中央處理器(Central Processing Unit,簡(jiǎn)稱CPU)作為計(jì)算機(jī)系統(tǒng)的運(yùn)算和控制核心,是信息處理、程序運(yùn)行的最終執(zhí)行單元。C...

關(guān)鍵字: CPU 指令

深圳2024年11月29日 /美通社/ -- 包裝是產(chǎn)品生命周期的重要組成部分,隨著循環(huán)經(jīng)濟(jì)不斷推進(jìn),歐洲對(duì)產(chǎn)品包裝的可回收性和正確標(biāo)簽的要求也越來越嚴(yán)格。12月13日起,在線或者通過遠(yuǎn)程銷售方式銷售至歐盟消費(fèi)者的產(chǎn)品,...

關(guān)鍵字: 電池 研討會(huì) 指令 電子

廣州2024年10月18日 /美通社/ -- 10月17日,由中國(guó)對(duì)外貿(mào)易中心、SGS、上海艾瑞市場(chǎng)咨詢股份有限公司共同舉辦的"廣交會(huì)行業(yè)趨勢(shì)論壇—工具產(chǎn)品歐美市場(chǎng)新機(jī)遇"在第136屆廣交會(huì)現(xiàn)場(chǎng)隆重舉...

關(guān)鍵字: 測(cè)試 電動(dòng)工具 指令 電子電氣
關(guān)閉