[英]Saving value of stack pointer in C variable in Code Composer studio for ARM cortex M4f
我想知道一種可以將堆棧指針的值存儲到C中的變量的方法。
我發現內聯asm是無用的,因為它是特定於編譯器的,尤其是像這樣的事情,只需使用asm函數即可。 對於GNU匯編程序:
.thumb
.thumb_func
.globl GETSP
GETSP:
mov r0,sp
bx lr
在C
extern unsigned int GETSP ( void );
...
unsigned int sp;
...
sp=GETSP();
了解您每次使用此位置時,每次都會賦予相同的值。 對於許多編譯器來說,整個函數在整個函數中將得出相同的結果,如果該函數被其他不同函數重用,則您可能會得到sp值變化的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.