青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

franksunny的個人技術空間
獲得人生中的成功需要的專注與堅持不懈多過天才與機會。 ——C.W. Wendte

 

關于變量的存儲問題

 

以前從事上位機程序代碼的編寫,壓根不用很具體的考慮變量的具體存放位置,只知道以下概念就行了:

1. 堆區(qū)( heap ):由程序員申請分配和釋放,屬動態(tài)內(nèi)存分配方式,變量存放于動態(tài)存儲區(qū),若程序員不釋放,程序結(jié)束時可能會由 OS 回收。不過這個內(nèi)存分配很容易引起問題,如果申請的內(nèi)存不釋放就會造成內(nèi)存泄漏;如果釋放的不是所要釋放的內(nèi)存,則輕者引起程序運行結(jié)果出錯,重者系統(tǒng)崩潰。在C/C++語言中就是用mallocfree(C++常用newdelete)申請和釋放的內(nèi)存。

2.棧區(qū)( stack ):編譯器自動分配釋放,存放函數(shù)的形參值、局部變量的值,也是屬于動態(tài)內(nèi)存分配方式,存放位置也為動態(tài)存儲區(qū),它由系統(tǒng)分配,所以執(zhí)行效率也高,不過自由度小,聲明時就得決定其具體大小。

3.全局區(qū)(靜態(tài)區(qū))( static ):全局變量和靜態(tài)變量的存儲是放在一塊的,屬于靜態(tài)存儲區(qū),而且初始化的全局變量和靜態(tài)變量在一塊區(qū)域,未初始化的全局變量和未初始化的靜態(tài)變量在相鄰的另一塊區(qū)域。程序結(jié)束后由系統(tǒng)釋放,所以也不會造成內(nèi)存問題。

除了以上的變量外,還有兩類存放位置,文字常量區(qū)和程序代碼區(qū),兩者都是由系統(tǒng)分配和釋放,且文字常量區(qū)和前面三區(qū)合成為程序數(shù)據(jù)區(qū),與程序代碼區(qū)相對應。

以上所講的內(nèi)存,都只是RAM而并非ROM,因為在上位機編程中我們不可能去動內(nèi)存儲器的ROM,通常說的內(nèi)存條就是RAM。(記得上周跟華為的人面試,還在那邊胸有成竹地講RAMROM呢,現(xiàn)在想來真是慚愧得很)

 

現(xiàn)在工作中用到MSP430Flash類型的mcu,在編程時考慮就不能那樣迷迷糊糊的了,首先mcu給的RAM畢竟有限,能到4K已經(jīng)很貴了,為此很多變量像表格數(shù)據(jù)之類的必須和程序一起放到ROM中去。

我用到的IAREWB for 430的編譯器,它內(nèi)在規(guī)定就是加const 定義的變量和代碼段被放到ROM中,全局(以及靜態(tài))變量和局部變量的位置仍然在RAM中,這些量顯然掉電時也是會跟著掉的。不是說const的定義的是“常量”嗎,是不能更改的啊,但是我要用到的變量是要更改的,那該怎么辦呢?不錯我們在程序中是不能直接進行修改這些數(shù)據(jù)量了,但是可以通過寫flash操作來對其進行修改。也許有人會覺得我大驚小怪,大概因為我以前學單片機不夠用心吧,總之到現(xiàn)在用的時候才知道些ROMRAM的確切不同。

上面提到的const定義的“常量”及其它具體的關于constC/C++語言中的用法,可以參看Effictive C++More Effictive C++以及網(wǎng)絡上其它人的總結(jié)。以下給出一些別人總結(jié)的轉(zhuǎn)載,我覺得還是蠻有益。如果有侵權,請通知本人

內(nèi)存儲器外存儲器

1.         內(nèi)存儲器

1.       內(nèi)存的基本概念

內(nèi)存(內(nèi)存儲器)是微型計算機主機的組成部分,用來存放當前正在使用的或隨時要使用的程序或數(shù)據(jù)。

CPU可以直接訪問內(nèi)存。

微機以字節(jié)為單位線性地組織內(nèi)存儲器,每個存儲單元(一個字節(jié))都有一個唯一的編號。24位地址總線可以提供的地址編號為224=16M字節(jié)。

內(nèi)存儲器按其工作特點分為:只讀存儲器ROMRead-Only Memory)和隨機存取存儲器RAMRandom Access Memory)。

2.   RAM的種類

 動態(tài)內(nèi)存DRAMDynamic RAM):需要周期性地給電容充電(刷新)。這種存儲器集成度較高、價格較低,但由于需要周期性地刷新,存取速度較慢。一種叫做SDRAM的新型DRAM,由于采用與系統(tǒng)時鐘同步的技術,所以比DRAM快的多。當今,多數(shù)計算機用的都是SDRAM

 靜態(tài)內(nèi)存SRAMStatic RAM):靜態(tài)RAM是利用雙穩(wěn)態(tài)的觸發(fā)器來存儲"1""0" 的。"靜態(tài)"的意思是指它不需要像DRAM那樣經(jīng)常刷新。所以,SRAM比任何形式的DRAM都快得多,也穩(wěn)定得多。但SRAM的價格比DRAM貴得多,所以只用在特殊場合(如高速緩沖存儲器Cache)。

3.       內(nèi)存條

內(nèi)存集成電路比CPU芯片小一些,通常封裝在一條形電路板上,俗稱內(nèi)存條。

4.       高速緩沖存儲器

為提高CPU的處理速度,當今計算機中大都配有高速緩沖存儲器(cache),也稱緩存,實際上是一種特殊的高速存儲器。

緩存的存取速度比內(nèi)存要快,所以就提高了處理速度。

多數(shù)現(xiàn)代計算機都配有兩級緩存。

一級緩存也叫主緩存,或內(nèi)部緩存,直接設計在CPU芯片內(nèi)部。一級緩存容量很小,通常在8KB ~ 64KB之間。

二級緩存也叫外部緩存,不在CPU內(nèi)部而是獨立的SRAM芯片,其速度比一級緩存稍慢,但容量較大,多在64KB ~ 2MB之間。人們討論緩存時,通常是指外部緩存。

CUP需要指令或數(shù)據(jù)時,實際檢索存儲器的順序是:首先檢索一級緩存,然后二級緩存,再往后是RAM

5.       只讀存儲器

只讀存儲器(Read Only Memory,縮寫ROM)不能寫入而只能讀出數(shù)據(jù),其中的信息是在制造時一次寫入的。

只讀存儲器常用來存放固定不變、重復使用的程序、數(shù)據(jù)或信息,如存放漢字庫、各種專用設備的控制程序等。最典型的是ROM BIOS(基本輸入/輸出系統(tǒng)),其中部分內(nèi)容適用于啟動計算機的指令,內(nèi)容固定但每次開機時都要執(zhí)行。存儲在ROM中的指令叫微程序,這樣的ROM成為固件。

其他形式的只讀存儲器

 可編程只讀存儲器PROMProgrammable ROM):一種空白ROM,用戶可按照自己的需要對其編程。輸入PROM的指令叫作微碼,一旦微碼輸入,PROM的功能就和普通ROM一樣,內(nèi)容不能消除和改變。

 可擦除的可編程的只讀存儲器E-PROMErasable Programmable ROM),可以從計算機上取下來,用特殊的設備擦除其內(nèi)容后重新編程。

 閃存(flashROM,它不像PROMEPROM那樣只能一次編程,而是可以電擦除,重新編程。閃存ROM常用于個人電腦、蜂窩電話、數(shù)字相機、個人數(shù)字助手等,其容量在1 ~ 40MB之間。

6.       CMOS存儲器

CMOSComplementary metal oxide)互補金屬氧化物半導體

計算機需要保存一些配置信息,如硬盤驅(qū)動器和鍵的類型;日期、時間以及其它啟動計算機所需要的信息等。他們不需要頻繁變化,又不能一成不變,需要時(升級或更換設備)要適當變化。

CMOS存儲器可以滿足這種要求。計算機關機后仍能維持其中存儲的信息。COMS中的信息可以改變,比如計算機更換硬盤之后,可以通過執(zhí)行CMOS配置程序與機器交互,更改CMOS中的信息。

2.         外存儲器

外存儲器一般不直接與微處理器打交道,外存中的數(shù)據(jù)應先調(diào)入內(nèi)存,再由微處理器進行處理。為了增加內(nèi)存容量,方便讀寫操作,有時將硬盤的一部分當做內(nèi)存使用,這就是虛擬內(nèi)存。虛擬內(nèi)存利用在硬盤上建立"交換文件"的方式,把部分應用程序(特別是己閑置的應用程序)所用到的內(nèi)存空間搬到硬盤上去,以此來增加可使用的內(nèi)存空間和彈性;當然,容量的增加是以犧牲速度為代價的。交換文件是暫時性的,應用程序執(zhí)行完畢便自動刪除。

磁盤存儲器 有以下三部分組成: 軟磁盤驅(qū)動器 軟磁盤控制器 軟磁盤片:3.5英寸5.25英寸兩種 3.5英寸軟磁盤:

     磁道(track):從外向里編號為0 ~ 79,共80道。

扇區(qū)(sector):在每個磁道上劃分18個扇區(qū),編號為0 ~ 17,共18個扇區(qū)。每個扇區(qū)的容量為512K個字節(jié)。

簇(cluster):若干個扇區(qū)構成一個簇,它是磁盤存儲分配的單位。

格式化:用戶對軟盤的初始化操作,其包括磁道數(shù)、扇區(qū)數(shù)的劃分以及軟盤初始信息的寫入。 軟盤容量的計算公式: 80 18 512 2=1474560字節(jié)=1440K字節(jié)≈1.44MB 寫保護口:若該口可以透光,則此盤處于寫保護狀態(tài),即:只能讀取信息,不能寫入數(shù)據(jù)。反之,可讀可寫。

 

關于SDRDDRRAMBUS公司RDRAM  關于當前PC用內(nèi)存條方面的一個帖子

 

posted on 2007-06-01 15:00 frank.sunny 閱讀(3129) 評論(2)  編輯 收藏 引用 所屬分類: 硬件開發(fā)概念掃盲

FeedBack:
# re: 關于變量的存儲問題
2007-06-04 14:05 | picasa
挺全面  回復  更多評論
  
# re: 關于變量的存儲問題
2008-01-14 20:21 | qi
很棒的總結(jié)!!  回復  更多評論
  

常用鏈接

留言簿(13)

隨筆分類

個人其它博客

基礎知識鏈接

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久国产午夜精品| 欧美丰满高潮xxxx喷水动漫| 国产精品theporn| 欧美女主播在线| 欧美99久久| 欧美韩国日本综合| 欧美精品国产| 欧美午夜精品久久久久久孕妇| 欧美三日本三级三级在线播放| 免费久久99精品国产自| 亚洲人屁股眼子交8| 国产精品麻豆va在线播放| 欧美午夜不卡影院在线观看完整版免费 | 国产精品免费视频xxxx| 国产亚洲福利社区一区| 最新国产精品拍自在线播放| 亚洲深夜福利| 久久精品成人| 欧美国产日韩一区二区| 中文国产一区| 久久久久国产成人精品亚洲午夜| 麻豆乱码国产一区二区三区| 欧美性jizz18性欧美| 国产综合第一页| 日韩系列欧美系列| 久久久久久亚洲精品杨幂换脸 | 亚洲日本中文字幕区| 日韩视频免费| 久久精品视频在线播放| 欧美日韩在线视频观看| 一区二区三区亚洲| 亚洲欧美精品在线观看| 欧美黄色aa电影| 午夜欧美理论片| 葵司免费一区二区三区四区五区| 亚洲国产精品va| 午夜一区二区三区在线观看| 欧美精品系列| 亚洲高清二区| 欧美一级淫片aaaaaaa视频| 亚洲国产成人久久综合| 久久久久国产一区二区三区四区| 国产精品s色| 中日韩高清电影网| 亚洲国产成人一区| 久久综合色影院| 国产视频观看一区| 午夜精品亚洲| 宅男噜噜噜66国产日韩在线观看| 欧美高清自拍一区| 亚洲第一毛片| 久久亚洲图片| 欧美一区二区三区在线视频| 国产精品五月天| 香蕉精品999视频一区二区| 99精品国产福利在线观看免费| 欧美gay视频| 亚洲欧洲一区二区三区久久| 麻豆av一区二区三区| 久久精品综合| 在线观看av不卡| 免费毛片一区二区三区久久久| 久久综合久久综合久久综合| 亚洲已满18点击进入久久| 欧美日韩aaaaa| 99精品免费| 91久久在线观看| 欧美成人性生活| 亚洲九九精品| 99精品免费| 国产精品视频内| 久久久久在线| 老司机免费视频一区二区| 亚洲福利视频二区| 亚洲国产日韩欧美在线99| 欧美精品久久久久久久久老牛影院| 亚洲精品中文字幕在线观看| 亚洲精品美女| 欧美午夜久久| 久久久久久黄| 久久综合九色九九| 艳妇臀荡乳欲伦亚洲一区| 亚洲精品国产精品国自产在线 | 一区二区三区免费网站| 国产精品视区| 老司机一区二区| 欧美极品一区| 午夜精品久久久久久久白皮肤| 欧美一区二区啪啪| 亚洲欧洲精品一区二区精品久久久| 亚洲人成网站影音先锋播放| 国产精品久久久久久av福利软件| 久久久久久免费| 欧美激情91| 欧美一区二区高清| 免费观看30秒视频久久| 亚洲小少妇裸体bbw| 久久国产精品99精品国产| 夜夜嗨网站十八久久| 欧美中文在线视频| 一本色道久久综合亚洲精品小说| 亚洲一区综合| 99亚洲一区二区| 久久精品国产精品亚洲| 一区二区三区欧美| 久久一区二区三区四区| 亚洲欧美视频| 欧美激情一区二区三区成人| 久久久久久亚洲精品中文字幕 | 久久伊人免费视频| 午夜激情一区| 欧美精品国产精品| 免费精品99久久国产综合精品| 欧美日韩在线播放一区二区| 免费看精品久久片| 国产亚洲精品aa| 亚洲一级黄色av| 日韩一区二区久久| 欧美成人免费全部观看天天性色| 久久久999精品免费| 欧美精品久久久久久久久老牛影院| 亚洲美女电影在线| 亚洲国产人成综合网站| 欧美一区午夜精品| 亚洲一区视频在线| 欧美国产一区二区| 欧美+亚洲+精品+三区| 国产视频精品va久久久久久| 国产精品99久久久久久宅男| 在线亚洲欧美视频| 欧美日韩不卡在线| 亚洲精品黄色| 久久久久久久一区二区三区| 欧美一区二区免费观在线| 欧美午夜国产| 亚洲少妇诱惑| 性色av一区二区三区| 国产精品久久看| 亚洲婷婷综合久久一本伊一区| 亚洲视频一二| 国产精品久久久久免费a∨| 亚洲视频导航| 欧美在线免费观看亚洲| 国产一区二区三区电影在线观看| 欧美亚洲在线播放| 另类酷文…触手系列精品集v1小说| 狠狠色狠色综合曰曰| 久久嫩草精品久久久久| 你懂的网址国产 欧美| 亚洲缚视频在线观看| 欧美激情一区二区三区蜜桃视频| 亚洲黄色片网站| 亚洲视频免费| 国产精品永久免费观看| 欧美在线亚洲综合一区| 欧美18av| 一区二区三区福利| 国产精品区一区二区三| 久久riav二区三区| 欧美高清视频www夜色资源网| 99视频精品在线| 国产午夜精品理论片a级探花 | 亚洲午夜国产一区99re久久| 欧美一区成人| 亚洲福利视频在线| 欧美日韩卡一卡二| 亚洲欧美变态国产另类| 老司机精品视频网站| 99xxxx成人网| 国产亚洲激情视频在线| 欧美成人中文| 亚洲欧美日韩一区二区在线 | 国产精品午夜久久| 久久一区二区三区四区| 一区二区欧美日韩| 两个人的视频www国产精品| 99精品欧美一区| 国产一区二区三区自拍| 欧美日韩久久精品| 久久亚洲综合网| 亚洲自拍偷拍一区| 亚洲激情综合| 噜噜噜躁狠狠躁狠狠精品视频 | 欧美成人中文字幕在线| 夜夜爽99久久国产综合精品女不卡 | 亚洲在线视频免费观看| 在线免费不卡视频| 国产精品一国产精品k频道56| 久久中文字幕一区| 亚洲一区二区视频在线观看| 亚洲国产mv| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲一区免费网站| 亚洲精选91| 亚洲人成在线观看| 伊人狠狠色j香婷婷综合| 国产精品亚洲а∨天堂免在线| 欧美精品久久久久久久免费观看| 久久香蕉精品| 久久久久久成人|