色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM體系架構(gòu)學(xué)習(xí) -uboot分析之start.S

          ARM體系架構(gòu)學(xué)習(xí) -uboot分析之start.S

          作者: 時(shí)間:2016-11-09 來(lái)源:網(wǎng)絡(luò) 收藏
          通過(guò)分析start.S代碼,學(xué)習(xí)ARM體系結(jié)構(gòu)是一種很好的方法。

          start.S是u-boot的關(guān)鍵部分,CPU上電后最先開(kāi)始執(zhí)行的代碼,和ARM體系結(jié)構(gòu)息息相關(guān)。

          本文引用地址:http://cafeforensic.com/article/201611/317815.htm

          通過(guò)查閱代碼中遇到的各種指令,來(lái)進(jìn)一步了解ARM體系結(jié)構(gòu)中各個(gè)知識(shí)點(diǎn)。

          /*
          * the actual start code
          */
          start_code:
          /*
          * set the cpu to SVC32 mode
          */
          mrs r0,cpsr
          bic r0,r0,#0x1f
          orr r0,r0,#0xd3
          msr cpsr,r0

          紅色字體是要查閱的

          MRS:MRS是要將CPSR寄存器中的內(nèi)容保存到通用寄存器中,在這里是r0,就是說(shuō)CPSR(當(dāng)前程序狀態(tài)寄存器)必須使用MRS這條指令才能讀取
          CPSR:當(dāng)前程序狀態(tài)寄存器,保存了CPU當(dāng)前的各種狀態(tài),另外還有一個(gè)SPSR(保存的程序狀態(tài)寄存器),是在異常處理前對(duì)CPSR的保存。

          CPSR的用途-改變CPSR的值通常出于幾個(gè)目的:

          1. 改變condition code標(biāo)志
          2. 使能/禁止中斷
          3. 改變處理器模式
          4. 改變load或store操作的字節(jié)序
          5. 改變處理器狀態(tài)(J and T)

          待續(xù)。。。。。。



          關(guān)鍵詞: ARM體系架構(gòu)uboo

          評(píng)論


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

          關(guān)閉