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

          新聞中心

          第1天-ARM工作模式

          作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏
          第1天-ARM工作模式

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

          1、ARM體系CPU工作狀態(tài):ARM狀態(tài)和Thumb狀態(tài)

          ARM狀態(tài):處理器執(zhí)行32位的字對(duì)齊的ARM指令;

          Thumb狀態(tài):處理器執(zhí)行16位的、半字對(duì)齊的Thumb指令;

          在程序運(yùn)行的過(guò)程中,可以在兩種狀態(tài)之間進(jìn)行相應(yīng)的轉(zhuǎn)換。處理器工作狀態(tài)的轉(zhuǎn)變并不影響處理器的工作模式和相應(yīng)寄存器中的內(nèi)容。CPU上電處于ARM狀態(tài)

          2、存儲(chǔ)器格式:

          Arm體系結(jié)構(gòu)將存儲(chǔ)器看做是從零地址開(kāi)始的字節(jié)的線性組合。從零字節(jié)到三字節(jié)放置第一個(gè)存儲(chǔ)的字(32位)數(shù)據(jù),從第四個(gè)字節(jié)到第七個(gè)字節(jié)放置第二個(gè)存儲(chǔ)的字?jǐn)?shù)據(jù),一次排列。作為32位的微處理器,arm體系結(jié)構(gòu)所支持的最大尋址空間為4GB。

          大端格式和小端格式

          大端格式:數(shù)據(jù)的低地址放在物理地址的低位

          小端格式:數(shù)據(jù)的低地址放在物理地址的高位

          3、ARM處理器工作模式

          1、用戶模式(Usr):用于正常執(zhí)行程序;

          2、快速中斷模式(FIQ):用于高速數(shù)據(jù)傳輸;

          3、外部中斷模式(IRQ):用于通常的中斷處理;

          4、管理模式(svc):操作系統(tǒng)使用的保護(hù)模式;

          5、數(shù)據(jù)訪問(wèn)終止模式(abt):當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入該模式,可用于虛擬存儲(chǔ)以及存儲(chǔ)保護(hù);

          6、系統(tǒng)模式(sys):運(yùn)行具有特權(quán)的操作系統(tǒng)任務(wù);

          7、未定義指令中止模式(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入該模式,可用于支持硬件;

          特權(quán)模式:快速中斷模式、外部中斷模式、管理模式、數(shù)據(jù)訪問(wèn)終止模式、系統(tǒng)模式、未定義指令中止模式

          異常模式:快速中斷模式、外部中斷模式、管理模式、數(shù)據(jù)訪問(wèn)終止模式、未定義指令中止模式

          Arm的工作模式切換有兩種方法:

          被動(dòng)切換:在arm運(yùn)行的時(shí)候產(chǎn)生一些異?;蛘咧袛鄟?lái)自動(dòng)進(jìn)行模式切換;

          主動(dòng)切換:通過(guò)軟件改變,即軟件設(shè)置寄存器來(lái)經(jīng)行arm的模式切換,應(yīng)為arm的工作模式都是可以通過(guò)相應(yīng)寄存器的賦值來(lái)切換的。



          關(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); })();