找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3860|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

自己整理的ARM學(xué)習(xí)總結(jié)以及記錄(共34頁Word)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:481002 發(fā)表于 2019-2-26 16:39 | 只看該作者 |只看大圖 回帖獎勵 |正序瀏覽 |閱讀模式
自己整理的ARM學(xué)習(xí)總結(jié)以及記錄,搜集了一些關(guān)于ARM CPU啟動方面的關(guān)鍵知識點,希望對大家有用。

一、CPSR概述
      ARM處理器共有37個寄存器。這37個寄存器按其在用戶編程中的功能劃分,可分為2類寄存器,即31個通用寄存器和6個狀態(tài)寄存器。這6個狀態(tài)寄存器在ARM公司文件中其名稱分別為:CPSR、SPSR_svc、SPSR_abt、SPSR_und、SPSR_irq和SPSR_fig。這12的作用分別如圖1所示:


      所有處理器模式下都可訪問當(dāng)前程序狀態(tài)寄存器CPSR。CPSR中包含條件碼標(biāo)志、中斷禁止位、當(dāng)前處理器模式以及其他狀態(tài)和控制信息。在每種異常模式下都有一個對用的程序狀態(tài)寄存器SPSR。當(dāng)異常出現(xiàn)時,SPSR用于保存CPSR的狀態(tài),以便異常返回后恢復(fù)異常發(fā)生時的工作狀態(tài)。
(1)條件碼標(biāo)志
N、Z、C、V,最高4位稱為條件碼標(biāo)志。ARM的大多數(shù)指令可以條件執(zhí)行的,即通過檢測這些條件碼標(biāo)志來決定程序指令如何執(zhí)行。
各個條件碼的含義如下:
N:在結(jié)果是有符號的二進(jìn)制補(bǔ)碼情況下,如果結(jié)果為負(fù)數(shù),則N=1;如果結(jié)果為非負(fù)數(shù),則N=0。
Z:如果結(jié)果為0,則Z=1;如果結(jié)果為非零,則Z=0。
C:其設(shè)置分一下幾種情況:
               對于加法指令(包含比較指令CMN),如果產(chǎn)生進(jìn)位,則C=1;否則C=0。
               對于減法指令(包括比較指令CMP),如果產(chǎn)生借位,則C=0;否則C=1。
               對于有移位操作的非法指令,C為移位操作中最后移出位的值。
               對于其他指令,C通常不變。
V:對于加減法指令,在操作數(shù)和結(jié)果是有符號的整數(shù)時,如果發(fā)生溢出,則V=1;如果無溢出發(fā)生,則V=0;對于其他指令,V通常不發(fā)生變化。
(2)控制位的作用在圖1中可以看出,在這里就不闡述了。
二:CPSR與CPSR_c的區(qū)別
      CPSR有4個8位區(qū)域:標(biāo)志域(F)、狀態(tài)域(S)、擴(kuò)展域(X)、控制域(C)

完整的Word格式文檔51黑下載地址(共34頁):
arm學(xué)習(xí)記錄.docx (318.24 KB, 下載次數(shù): 25)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表