我目前正試圖理解Cortex-M內核的ARM彙編。cortex M4 Thumb彙編函數地址
我知道這是在Thumb模式(這是核心支持的唯一模式)功能通過自己的地址,稱爲與LSB地址的高,表明目標是Thumb代碼。
在組件我寫以下在函數「Reset_Handler」的前面告訴彙編,在標籤中的數據是可執行的/功能:
.type Reset_Handler, %function
Reset_Handler:
MOV R0, R0 # just do something
如果現在加載標籤
的地址LDR R0, =Reset_Handler
LSB R0的設置。
我必須把這個.TYPE指令在每個標籤我想與間接調用一個函數使用的面前?
或者有沒有辦法讓彙編器自動決定正確的地址?
如果我要複製功能的代碼到RAM,並加載該函數的地址,我要明確自己LSB得到了數據所在的「真實」的地址,對嗎?
在這種情況下是否需要.type指令?我知道,只要我想把地址放在向量表中就需要這個地址,因爲這需要設置LSB。
你正在使用什麼彙編語言(彙編語言是由彙編程序定義的,它通常不是普遍的) –