2、ARM體系結構

ARM系列介紹安全

系列 頻率 應用
ARM7 100MHz mp3/工控領域
ARM9 200~400MHz 第一代智能手機,加了內存管理單元(MMU)
ARM11 500~700MHz 第二代智能手機、平板電腦
cortexM 100MHz 單片機市場代替ARM7(功耗變低)
cortexA 1GMHz 消費類電子
cortexR   實時領域和安全領域

ARM寄存器
函數

從上圖咱們能夠看到ARM在邏輯上實現了七種工做模式,分別是:
  系統模式(System)
  用戶模式(User)
  快速中斷模式(FIQ)
  超級管理模式(Supervisor)
  終止模式(Abort)
  中斷請求模式(也稱普通中斷,IRQ)
  未定義指令模式(Underfined)
同一時刻下的CPU只能工做在一種模式下,CPU工做在某一模式下意味着只能看到該模式下的一組寄存器。且寄存器定長32位。
R0~R12寄存器是通用寄存器,保存數據臨時變量
R13/SP是棧指針寄存器,記錄棧頂地址
R14/LR是連接返回寄存器,保存程序的返回地址,如函數調用返回
R15/PC是程序計數器,PC只向哪一個地址,CPU就到那個地址取指令執行
CPSR是當前程序狀態寄存器,保存程序的運行狀態
SPSR是備份當前程序狀態寄存器3d

ARM的工做模式指針

對比x86的工做模式blog

CPSR寄存器介紹進程

0~4位(M0~M4)是模式位,用於記錄當前進程處於CPU哪一種工做模式下。
5位(T)是記錄指令模式,有ARM指令模式(32位彙編,執行效率高,存儲大)和THUMB指令模式(16位彙編,把arm當單片機用時,採用該指令模式)
六、7位(F、I)分別是快速中斷和普通中斷的總開關
28位(V)是記錄溢出位
29位(C)是記錄進位
30位(Z)是零標誌位,高級語言就是根據這位去判斷兩個數是否相等
31位(N)是符號位,是負數仍是正數內存

Thumb狀態下的寄存器內存管理

相關文章
相關標籤/搜索