欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言中 “_at()” 特殊地址定位詳解

 更新時間:2017年05月14日 09:28:16   作者:木十化  
這篇文章主要介紹了C語言中 “_at()” 特殊地址定位詳解的相關(guān)資料,需要的朋友可以參考下

C語言中 “_at()” 特殊地址定位詳解

在keil里面,有一個特殊地址定位的指令,就是將一個變量或常量定位到一個指定的地址上面

指令為 __at ,使用方法如下

int variable __at(0x8000) = 100;

意為將variable變量定位到0x8000這個地址。

指令的目的是告訴鏈接器將指定地址定位到某個地址里面,在使用該功能的時候需要注意一點的是,地址的范圍需要符合單片機的datasheet給出的地址映射表,

注意,如果地址超出了flash的最大范圍,程序?qū)o法得到這個值,例如一個256Kflash的芯片,在使用功能__at指令的時候,地址就不要超過256*1024了,否則你是找不到這個變量的。

下面以MB9AF310系列芯片為例,講一下關(guān)于芯片的flash在內(nèi)存中的映射,

如圖,flash被映射到了0x00000000這個地址上,以0x00100000結(jié)束,但是仍然需要看具體芯片的flash是多大的,這個地址只是310系列芯片的地址映射,如果超出了實際的地址,仍然不能找到變量。

keil的鏈接器最后會把變量放到生成文件的相應(yīng)地址中去,在燒錄的時候,如果是BIN文件,文件的字節(jié)地址會和flash的地址一一對應(yīng)。用戶定義的變量將被燒錄到相應(yīng)的flash的物理地址中。以上都是在沒有MMU的情況的關(guān)于地址映射的解釋,如果啟用了MMU,情況也許會不一樣,畢竟多了一層虛擬地址,實際上還能不能使用__at指令,我也不知道,后續(xù)筆者會繼續(xù)鉆研,更多關(guān)于__at指令的說明,可以直接在keil的幫助文件中找到。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • strncpy與snprintf 的用法比較

    strncpy與snprintf 的用法比較

    以下是對strncpy與snprintf的具體用法以及區(qū)別進行了詳細的分析介紹,需要的朋友可以過來參考下
    2013-07-07
  • C++實現(xiàn)LeetCode(647.回文子字符串)

    C++實現(xiàn)LeetCode(647.回文子字符串)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(647.回文子字符串),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++11顯示類型轉(zhuǎn)換的優(yōu)點

    C++11顯示類型轉(zhuǎn)換的優(yōu)點

    這篇文章主要介紹了C++11顯示類型轉(zhuǎn)換的優(yōu)點,幫助大家更好的理解和學(xué)習(xí)c++,感興趣的朋友可以了解下
    2020-08-08
  • C++的array和&array有什么區(qū)別

    C++的array和&array有什么區(qū)別

    本文主要介紹了C++的array和&array有什么區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • C++實例分析講解臨時對象與右值引用的用法

    C++實例分析講解臨時對象與右值引用的用法

    對性能來說,許多的問題都需要和出現(xiàn)頻率及本身執(zhí)行一次的開銷掛鉤,有些問題雖然看似比較開銷較大,但是很少會執(zhí)行到,那也不會對程序有大的影響;同樣一個很小開銷的函數(shù)執(zhí)行很頻繁,同樣會對程序的執(zhí)行效率有很大影響。本章中作者主要根據(jù)臨時對象來闡述這樣一個觀點
    2022-08-08
  • 實例解析C++中類的成員函數(shù)指針

    實例解析C++中類的成員函數(shù)指針

    這篇文章主要介紹了C++中類的成員函數(shù)指針,例子中以討論用函數(shù)指針調(diào)用類的成員函數(shù)為主,需要的朋友可以參考下
    2016-04-04
  • 用QT實現(xiàn)計時器功能

    用QT實現(xiàn)計時器功能

    這篇文章主要為大家詳細介紹了用QT實現(xiàn)計時器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++代碼實現(xiàn)學(xué)生信息管理系統(tǒng)

    C++代碼實現(xiàn)學(xué)生信息管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C++代碼實現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • 利用C語言實現(xiàn)猜數(shù)字小游戲

    利用C語言實現(xiàn)猜數(shù)字小游戲

    這篇文章主要為大家詳細介紹了利用C語言實現(xiàn)猜數(shù)字小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • C++?Cartographer的入口node main詳細講解

    C++?Cartographer的入口node main詳細講解

    這篇文章主要介紹了C++Node類Cartographer的入口node main,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-03-03

最新評論