一、volatile關鍵字
(1)volatile作用
從單片機中直接存取原始內存地址,防止編譯器的優化,導致聲明的變量未被執行。
(2)格式
(3)表達
注:如果編譯調試中,依舊存在程序被優化現象,可設置降低代碼優化等級。
二、register關鍵字
(1)register作用
這個關鍵字請求編譯器盡可能的將變量存在CPU內部寄存器中,而不是通過內存尋址訪問,以提高效率。
注:注意是盡可能,不是絕對。
用法:為了提高精度,循環的次數越多越好,可以將循環的增量控制定義為寄存器變量register。
(2)格式
(3)表達
(4)例子
三、attribute關鍵字
(1)attribute作用用于給聲明的數組、變量,指定具體的存儲地址位置。
注:①attribute是用來指定變量或結構位域的特殊屬性,該關鍵字后的雙括弧中的內容是屬性說明。
②at關鍵字可以用來設置變量的絕對地址,也就是通過這個關鍵字,指定某個變量處于內存里面的某個給定的地址。
(2)格式
(3)表達
指的是,將 array數組的首地址設定為0x0800C000.
注:該聲明不可用于函數內的局部變量/形式參數。(函數內局部變量/形式參數,在函數調用時才聲明入棧,調用結束后,會被出棧,無法指定具體地址)
-
單片機
+關注
關注
6023文章
44376瀏覽量
628385 -
調試
+關注
關注
7文章
551瀏覽量
33763 -
Register
+關注
關注
0文章
36瀏覽量
13904 -
關鍵字
+關注
關注
0文章
37瀏覽量
6882 -
volatile
+關注
關注
0文章
44瀏覽量
12980
發布評論請先 登錄
相關推薦
評論