卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

聊聊C語言-存儲世界的奧秘

我們開始講講與數(shù)據(jù)類型有這著千絲萬縷聯(lián)系的變量。所有語言的變量都是存儲在計(jì)算機(jī)存儲系統(tǒng)中,C語言的變量當(dāng)然也不例外。所以我們先從計(jì)算機(jī)的存儲系統(tǒng)講起,來揭秘這個存儲世界的奧秘。1.什么是計(jì)算機(jī)的存儲系

我們開始講講與數(shù)據(jù)類型有這著千絲萬縷聯(lián)系的變量。

所有語言的變量都是存儲在計(jì)算機(jī)存儲系統(tǒng)中,C語言的變量當(dāng)然也不例外。所以我們先從計(jì)算機(jī)的存儲系統(tǒng)講起,來揭秘這個存儲世界的奧秘。

1.什么是計(jì)算機(jī)的存儲系統(tǒng)?

計(jì)算機(jī)存儲系統(tǒng)就好比是人類的大腦,大腦記憶了人們生活中的信息,計(jì)算機(jī)存儲系統(tǒng)則存儲了計(jì)算機(jī)程序的全部信息。當(dāng)我們在計(jì)算機(jī)中輸入數(shù)據(jù)時計(jì)算機(jī)程序就會操作存儲系統(tǒng)將這些信息以各種形式進(jìn)行存儲處理。只不過有些信息關(guān)機(jī)以后仍然存在,有些則隨之消失,有些信息處理的很慢,有些則處理的很快。

2.計(jì)算機(jī)存儲系統(tǒng)有哪些部分組成?

既然稱之為系統(tǒng)那么它就是一個比較復(fù)雜的機(jī)制,計(jì)算機(jī)的存儲系統(tǒng)是分層次進(jìn)行存儲的,就像人類的社會分三六九等一樣,所以小編有時在閑時也感慨人類的等級制度是多么的根深蒂固竟然影響著我們生活的方方面面。它的存儲層次就像人類的等級金字塔。

上圖就是存儲系統(tǒng)的金字塔。它分為兩個部分:

臨時存儲區(qū)域:由寄存器、緩存(cache)、內(nèi)存組成,存儲在這部分的信息關(guān)機(jī)就會消失,就像我們這些平民百姓百年以后就會當(dāng)然無存一樣。

永久性存儲區(qū)域:由ROM、可移動存儲器(移動硬盤)、網(wǎng)絡(luò)存儲(云存儲)、硬盤存儲器(硬盤),存儲在這些地方的數(shù)據(jù)則會保留相當(dāng)長的時間。也就是那些可以流芳百世或者遺臭萬年的人可以享受的待遇。哈哈。。

3.為什么這么來劃分層次?

想想也會明白,一個國家的領(lǐng)導(dǎo)只能有一個,而接觸它的人也就寥寥無幾,而等級越低的人則人數(shù)越多可以接觸到的人也就越多。計(jì)算機(jī)存儲系統(tǒng)也一樣。CPU作為計(jì)算機(jī)的核心由于它處理速度很快,所以來設(shè)計(jì)存儲系統(tǒng)時就采用了分層的方法。

1)、CPU——Cache 存儲層次:由于主存儲器的讀寫速度低于CPU的速度,而CPU每執(zhí)行一條指令都要訪問內(nèi)存儲器,所以CPU總是處于等待狀態(tài),嚴(yán)重降低了系統(tǒng)的效率。引入Cache后,在Cache內(nèi)保存著主存儲器內(nèi)容的部分副本,CPU在讀寫數(shù)據(jù)時首先訪問Cache。由于Cache的速度與CPU相同,因此CPU就能在零等待狀態(tài)下迅速地完成數(shù)據(jù)的讀寫。

2)、Cache——內(nèi)存儲器存儲層次:當(dāng)Cache中不含有CPU所需的數(shù)據(jù)時,CPU才去訪問內(nèi)存儲器。此時用一個存儲器讀取周期的時間從內(nèi)存中讀出這個數(shù)據(jù)后送到CPU,并且,把含有這個數(shù)據(jù)的整個數(shù)據(jù)塊從內(nèi)存送到Cache中。

3)、內(nèi)存儲器——外存儲器存儲層次:當(dāng)一個程序需要執(zhí)行時,計(jì)算機(jī)必須將其程序通過一定的調(diào)度算法從外存調(diào)入內(nèi)存。Cache- >內(nèi)存儲器- >外存儲器:其容量越來越大,但讀寫速度越來越低。

4.什么是寄存器?

簡單說它就是CPU的小秘,CPU直接訪問的就是它。它也叫觸發(fā)器,它往往和CPU同時鐘頻率,所以速度非??臁?/p>

5.什么是緩存(cache)?

CPU的二級直屬單位,由小秘直接訪問。目前我們CPU中一般集成了2到3級的Cache,容量從128K到4M。對于CPU總的Cache來說,它們的也是和CPU同頻率的,所以理論上執(zhí)行速度和寄存器應(yīng)該是相同的,但是Cache往往用來存儲一些指令和數(shù)據(jù),這樣就存在一個命中的問題。當(dāng)沒有命中的時候,需要向下一集的存儲器獲取新的數(shù)據(jù),這時Cache會被lock,所以導(dǎo)致實(shí)際的執(zhí)行速度要比寄存器慢。

6.什么是內(nèi)存?

它就出了CPU的紫禁城了,作為CPU的外親為CPU服務(wù)。我們目前聽的內(nèi)存一般叫DDR SDRAM,還有早期的SDRAM。而DDR表示雙倍的速率,而現(xiàn)在又有了DDR2,DDR3,DDR4,他們的帶寬也是越來越大。

7.什么是硬盤?

它是CPU的遠(yuǎn)房親戚。目前硬盤主流已經(jīng)是500G,1T。轉(zhuǎn)速也在7200轉(zhuǎn)左右。相對于8G的內(nèi)存,一個500G的硬盤可以說是相當(dāng)?shù)谋阋?。但是問題在于他的速度非常的慢,從磁盤讀取數(shù)據(jù)需要幾個毫秒,而CPU時鐘周期是以納秒計(jì)算。磁盤存儲是一種機(jī)械結(jié)構(gòu)。數(shù)據(jù)都通過電磁流來改變極性的方式被電磁流寫到磁盤上,而通過相反的方式讀回。一個硬盤由多個盤片組成,每個盤片被劃分為磁道,扇區(qū)和最小的單位簇。而每個盤面都有一個磁頭用來讀取和寫入數(shù)據(jù)。而硬盤的馬達(dá)裝置則控制了磁頭的運(yùn)動。

標(biāo)簽: