2010-05-12 207 views
8

我正在查看一些程序集以啓動在ARM處理器上運行的某些固件。定義了以下異常向量表:ARM彙編 - 分支指令

LDR  pc, =resetHandler 
    LDR  pc, Undefined_Addr 
    LDR  pc, SWI_Addr 
    LDR  pc, Prefetch_Addr 
    LDR  pc, Abort_Addr 
    B  . 
    LDR  pc, =irqHandler 
    LDR  pc, FIQ_Addr 

有誰知道「。」是什麼意思?分支(「B」)指令完成後?在調試器的反彙編窗口中,指令自行分支。根據數據表,該條目是保留的,所以我猜這只是一個無限循環,並等待看門狗重置。

+2

正如一個供參考,一些基於ARM的微處理器(或者更確切地說,他們的閃光UTILITES和/或引導加載器)使用保留的條目舉行校驗: http://www.nxp.com/documents/application_note/AN10254.pdf – 2010-05-12 18:22:33

回答

8

在許多彙編程序.意味着當前的位置計數器,所以是的,它只是一個無限循環,即「分支到這裏」。

[注意一些裝配使用$*而不是.]