99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一些單片機(jī)常見的存儲(chǔ)知識(shí)

strongerHuang ? 來源:typedef ? 作者:typedef ? 2022-08-10 08:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文分享一些單片機(jī)常見的存儲(chǔ)相關(guān)的基礎(chǔ)知識(shí)。

1. 兩種存儲(chǔ)器

FLASH

Flash Memory(閃速存儲(chǔ)器)是一種安全、快速的存儲(chǔ)體,具有體積小、容量大、成本低、掉電不丟失等一系列優(yōu)點(diǎn),已成為嵌入式系統(tǒng)中數(shù)據(jù)和程序最主要的載體。

Flash是區(qū)塊結(jié)構(gòu),即在物理結(jié)構(gòu)上分成若干個(gè)物理塊,區(qū)塊之間相互獨(dú)立。

Flash寫操作必須先擦后寫,F(xiàn)lash只能將數(shù)據(jù)位由1寫成0,不能從0寫成1,所以在對(duì)存儲(chǔ)器寫之前必須先執(zhí)行擦除操作,擦操作的最小單位是一個(gè)區(qū)塊,而不是一個(gè)字節(jié)。

RAM

RAM(Random Access Memory)又稱隨機(jī)存取存儲(chǔ)器,也叫內(nèi)存,是與CPU直接交換數(shù)據(jù)的內(nèi)部存儲(chǔ)器。速度很快,斷電RAM不保留數(shù)據(jù)。

RAM主要用來存儲(chǔ)程序中用到的全局變量、堆棧等。

2. 三種存儲(chǔ)區(qū)

map中三種內(nèi)存

編譯完工程會(huì)生成一個(gè).map 的文件,該文件的最后說明了ROM和RAM占用空間大小,如下圖所示:

252d55bc-1844-11ed-ba43-dac502259ad0.png

其中ROM就是程序燒錄到FLASH中的大小,RW就是占用RAM大小.

RO

RO (Read Only ): 只讀區(qū)域, 需要長久保存,燒錄到Flash中,下文的text段和constdata段屬于此屬性區(qū)

RW

RW (Read Write): 可讀可寫,通常為全局變量和靜態(tài)變量,下文中的.data段和.bss屬于RW區(qū)

ZI

ZI (Zero Init): 沒有進(jìn)行初始化或者初始化為0,系統(tǒng)上電時(shí)會(huì)主動(dòng)把此區(qū)域數(shù)據(jù)進(jìn)行0初始化,下文的.bss段就是. 另外, 可翻看Keil工具編譯的map文件,Heap和Stack區(qū)也進(jìn)行了Zero的屬性標(biāo)注, 因此,Heap和Stack也可認(rèn)為是ZI區(qū)域

ROM與RAM數(shù)據(jù)比較

數(shù)據(jù)段 說明 RAM ROM
.bss -- true false
.data true true
RO-data 常量 false true
.text -- false true
stack 局部變量等 true false
heap malloc true false

3. 六段段

253ea222-1844-11ed-ba43-dac502259ad0.png

程序運(yùn)行時(shí)的5段

.text

.text代碼段: 用來放程序代碼(code), 在代碼編譯完成后, 長久只讀存放于此,屬于圖中的代碼段

.constdata

.constdata只讀常量數(shù)據(jù)段: const限定的數(shù)據(jù)類型存放在此,屬于圖中的常量存儲(chǔ)區(qū)

.data

用來存放初始化不為0的全局變量(global)和靜態(tài)變量(static),它是可讀可寫的,屬于圖中的靜態(tài)存儲(chǔ)區(qū)

.bss

.bss的英文是Block Started by Symbol,翻譯過來就是由符號(hào)開始的塊。此部分類似于數(shù)據(jù)部分,只是它不占用可執(zhí)行文件中的空間。

bss通常是指用來存放程序中沒有初始化或初始化為0的全局變量和靜態(tài)變量的一塊內(nèi)存區(qū)域,可讀可寫,屬于圖中的靜態(tài)存儲(chǔ)區(qū),如果變量未初始化,系統(tǒng)會(huì)將變量初始化為0

heap

heap堆區(qū): 通常我們說的動(dòng)態(tài)內(nèi)存分配,使用malloc/free進(jìn)行申請(qǐng)和釋放,屬于動(dòng)態(tài)存儲(chǔ)區(qū).

stack

stack棧區(qū): 在代碼執(zhí)行時(shí)用來保存函數(shù)的局部變量和參數(shù),屬于動(dòng)態(tài)存儲(chǔ)區(qū).

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650491
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1679

    瀏覽量

    151834
  • 存儲(chǔ)
    +關(guān)注

    關(guān)注

    13

    文章

    4533

    瀏覽量

    87459

原文標(biāo)題:單片機(jī)存儲(chǔ)相關(guān)知識(shí)

文章出處:【微信號(hào):strongerHuang,微信公眾號(hào):strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    C51單片機(jī)及C語言知識(shí)點(diǎn)必備秘籍

    單片機(jī)關(guān)鍵知識(shí)點(diǎn)覽: 系列 1:單片機(jī)簡敘 2:單片機(jī)引腳介紹 3:
    發(fā)表于 05-15 14:00

    單片機(jī)存儲(chǔ)器的那些事

    單片機(jī)存儲(chǔ)器的關(guān)系像什么?單片機(jī)里的存儲(chǔ)都是樣的嗎?為什么有的單片機(jī)既有EEPROM又有Fl
    的頭像 發(fā)表于 04-10 10:06 ?940次閱讀
    扒<b class='flag-5'>一</b>扒<b class='flag-5'>單片機(jī)</b>與<b class='flag-5'>存儲(chǔ)</b>器的那些事

    單片機(jī)Debug工具性能對(duì)比 單片機(jī)調(diào)試常用命令

    。以下是對(duì)單片機(jī)調(diào)試工具性能的簡要對(duì)比以及一些常用的調(diào)試命令。 單片機(jī)Debug工具性能對(duì)比 Keil uVision 性能 :Keil uVision 是款功能強(qiáng)大的集成開發(fā)環(huán)境(
    的頭像 發(fā)表于 12-19 09:56 ?1419次閱讀

    一些常見的動(dòng)態(tài)電路

    無論是模電還是數(shù)電,理論知識(shí)相對(duì)來說還是比較枯燥,各種電路原理理解清楚不算容易,換種生動(dòng)形象的方式或許會(huì)增加一些趣味性,也更容易理解這些知識(shí)。下面整理了
    的頭像 發(fā)表于 11-16 09:26 ?1137次閱讀
    <b class='flag-5'>一些</b><b class='flag-5'>常見</b>的動(dòng)態(tài)電路

    分享一些常見的電路

    理解模電和數(shù)電的電路原理對(duì)于初學(xué)者來說可能比較困難,但通過一些生動(dòng)的教學(xué)方法和資源,可以有效地提高學(xué)習(xí)興趣和理解能力。 下面整理了一些常見的電路,以動(dòng)態(tài)圖形的方式展示。 整流電路 單相橋式整流
    的頭像 發(fā)表于 11-13 09:28 ?834次閱讀
    分享<b class='flag-5'>一些</b><b class='flag-5'>常見</b>的電路

    單片機(jī)編程語言有哪些選擇

    單片機(jī)(Microcontroller Unit,MCU)編程是指為單片機(jī)編寫程序的過程,這些程序控制單片機(jī)的行為和功能。單片機(jī)廣泛應(yīng)用于嵌入式系統(tǒng),如家用電器、汽車電子、工業(yè)控制等領(lǐng)
    的頭像 發(fā)表于 11-01 14:13 ?2427次閱讀

    想入行單片機(jī)開發(fā)的學(xué)生們的忠告

    對(duì)于想入行單片機(jī)開發(fā)的學(xué)生們,以下是一些建議和忠告:
    的頭像 發(fā)表于 10-17 09:45 ?745次閱讀
    想入行<b class='flag-5'>單片機(jī)</b>開發(fā)的學(xué)生們的忠告

    怎樣才知道個(gè)單片機(jī)的性能到極限了?

    要確定個(gè)單片機(jī)的性能是否達(dá)到極限,可以從多個(gè)方面進(jìn)行綜合評(píng)估。以下是一些主要的判斷依據(jù):
    的頭像 發(fā)表于 09-11 09:39 ?654次閱讀
    怎樣才知道<b class='flag-5'>一</b>個(gè)<b class='flag-5'>單片機(jī)</b>的性能到極限了?

    單片機(jī)hex文件反編譯成C語言的過程

    使用C語言編寫,然后編譯成機(jī)器碼并燒錄到單片機(jī)存儲(chǔ)器中。 Hex文件是種用于存儲(chǔ)單片機(jī)程序的文件格式,它包含了程序的機(jī)器碼和
    的頭像 發(fā)表于 09-02 10:49 ?6131次閱讀

    單片機(jī)圖形化編程軟件有哪些

    單片機(jī)圖形化編程軟件為開發(fā)者提供了種更加直觀、易于上手的編程方式,尤其適合初學(xué)者和教育領(lǐng)域。以下是一些常見單片機(jī)圖形化編程軟件: Ard
    的頭像 發(fā)表于 09-02 10:14 ?3667次閱讀

    單片機(jī)燒錄程序可以重新燒嗎

    好的程序代碼通過特定的方式寫入單片機(jī)存儲(chǔ)器中,使其能夠按照預(yù)定的邏輯執(zhí)行任務(wù)。單片機(jī)燒錄程序可以重新燒錄,這是單片機(jī)編程和開發(fā)過程中的個(gè)
    的頭像 發(fā)表于 09-02 10:04 ?3141次閱讀

    單片機(jī)燒錄程序時(shí)為什么直在檢測

    單片機(jī)燒錄程序時(shí),如果軟件直在顯示“正在檢測單片機(jī)”,可能是由多種原因?qū)е碌?。以下?b class='flag-5'>一些常見的原因及其解決方法: 1. 連接問題 USB轉(zhuǎn)
    的頭像 發(fā)表于 09-02 09:57 ?8092次閱讀

    單片機(jī)燒錄程序的線比單片機(jī)上的少還能燒錄嗎

    單片機(jī)燒錄原理 單片機(jī)燒錄是指將編寫好的程序代碼通過定的方式傳輸?shù)?b class='flag-5'>單片機(jī)的存儲(chǔ)器中,使其能夠按照程序的指令運(yùn)行。這個(gè)過程通常需要使用燒錄器
    的頭像 發(fā)表于 09-02 09:54 ?1084次閱讀

    單片機(jī)為什么被認(rèn)為是門簡單的技術(shù)?

    單片機(jī)(Microcontroller Unit, MCU)技術(shù)被廣泛認(rèn)為“簡單”可能源于幾個(gè)方面的誤解或相對(duì)性考慮,但實(shí)際上,單片機(jī)技術(shù)的復(fù)雜性和應(yīng)用廣度遠(yuǎn)超過“簡單”詞所能涵蓋的范疇。以下是
    的頭像 發(fā)表于 08-21 09:15 ?642次閱讀
    <b class='flag-5'>單片機(jī)</b>為什么被認(rèn)為是<b class='flag-5'>一</b>門簡單的技術(shù)?

    文讀懂什么單片機(jī):組成結(jié)構(gòu)與應(yīng)用

    歡迎來到單片機(jī)的世界,這是種微小(但功能強(qiáng)大)的設(shè)備,改變了嵌入式系統(tǒng)的面貌。在本文中,您將了解單片機(jī)一些基本知識(shí)
    的頭像 發(fā)表于 08-09 11:49 ?2406次閱讀
    <b class='flag-5'>一</b>文讀懂什么<b class='flag-5'>單片機(jī)</b>:組成結(jié)構(gòu)與應(yīng)用