計算機記憶體底層到底怎麼儲存東西的,有沒有比較象形的解釋?

時間 2021-06-25 19:13:23

1樓:雪糕

試著拋開那些微電子方面的原理僅就中學階段的物理知識來解釋:

先說說怎麼讀取資訊。中學科技常識課程就告訴我們,計算機裡面實際就是利用高低電平來識別資料,晶元裡面沒有磁性結構,於是也就沒有各種複雜的轉換,很簡單就是檢查儲存單元裡面電平。用常見的科普文章說:

有電就是1,沒電就是0。當這樣的儲存單元足夠多的時候,就能表達我們所需要的資料。

怎樣讓乙個單元裡面有電?兩種方式:其一,直接供電,相當於和電源連線,只要電源不斷就能檢測到電。

其二將電儲存起來,再以一定的方式讓外部能檢測到即可。舉個生活中的例子就是用你的手機檢測一條usb-type線能不能輸出電,插上去手機顯示正在充電說明有電,手機沒反應說明沒電。這根線的另一頭,可能是直接插在充電頭上的,也有可能是插在充電寶上的,當然,充電寶上的電要事先用電源充上。

在晶元裡,易失性儲存單元就有點像用充電頭,有個人根據電腦指令工作單逐個檢查充電頭的設定。設定了1就把充電頭插上插座,設定0 就把充電頭拔下來,電腦一旦斷點就把所有的充電頭都拔下來,電腦再來電的時候看著一堆充電頭不知道之前哪個是1哪個是0。非易失性儲存器就有點像充電寶,有個人根據電腦指令逐個檢查充電寶設定,設定1就為其充電,然後它就總有電,設定0就把它放電,電腦一旦斷電就把所有的充電寶的電源拔下來,再來電的時候,雖然所有充電寶的電源線都被拔掉了,不知道之前哪個是1哪個是0,但是只要檢測一下充電寶裡面有沒有電就知道了。

以上應該是小學階段能讀懂的,以下再稍微擴充套件一下讓中學生看的。

易失性儲存單元實際上並不是一直供電的,而是間歇性的供電,晶元裡面的邏輯給乙個單元設定了高電平以後就給他供電,完事以後先走開去處理其他單元,此時儲存單元裡面的電就開始逐漸減少。晶元邏輯要在儲存單元裡面的電荷跑光之前回來給他再供電一下。還用上面的例子,就是乙個人根據電腦指令工作單,面前只有乙個電插座,於是他對於設定為1的充電頭插到電源上兩秒,然後拔下來處理其他的充電頭,但是充電頭裡面有足夠大的電容可以讓typeC線在1分鐘內都有電,這個操作員需要在1分鐘內返回來再把設定為1的充電頭插到電插座上一會兒。

讀寫資料主要看管著插座的這個哥們的手速

非易失性儲存器,在晶元內部是做出了乙個被隔離出來的區域,可以看做是被絕緣材料包起來的乙個電子監獄,這個單元需要設定為1的時候,用較高的電壓擊穿絕緣區域把電子送到那個電子監獄上去,隨後電子就跑不出來了。電子的老婆正電荷向就可憐兮兮的在絕緣材料的另一頭看著老公不肯走。這樣就只要檢測一下有沒有電子的老婆在就能判斷電子監獄裡面有沒有電子。

如果要把1置為0,再用高電壓把電子的老婆送到監獄裡與其中和,這樣在監獄外面就檢測不到其他電荷在苦苦等待了。由於寫資料要有乙個充電過程,而讀資料只要看看監獄外面有沒有人就行了。於是寫資料比讀資料慢點。

以上說的電子化的儲存,可以並行進行資料處理,比如乙個位元組需要讀寫8個儲存單元。這時候晶元裡面可以設定8個管插座的哥們或者8個獄警同時處理。 傳統硬碟利用磁性材料儲存也是非易失性,但寫資料的時候要給乙個線圈供電產生磁場並磁化儲存材料,讀的時候需要用磁阻器件檢測磁性,然後再轉換成電。

資料只能挨個讀寫,速度還受機械結構的限制,所以慢。

非易失性儲存器裡的資料就永遠不丟麼?no,電子在監獄裡也不老實的,總有一些電子會不小心獲得足夠大的能量突破束縛。比如,冬天乾燥你的手上有高壓靜電通過電路打到監獄上去了,再比如溫度足夠高了以後電子的熱運動在某一時候突然撞開了監獄的牆。

但是,如果把乙個U盤放到資料自然丟失,也就說明這個資料對你來說不重要,不必太介意。

當乙個程式大於計算機記憶體時,計算機是如何執行的

零堍 先說結論 利用虛擬儲存器 虛擬記憶體 功能,將需要的頁面或段先加載入記憶體,將暫時不需要的儲存在硬碟之中。在 計算機作業系統 中的虛擬儲存器一章中有講述到 區域性性原理 程式執行在一較短的時間內,程式的執行僅限於某個部分,相應的,它所訪問的儲存空間也侷限於某個區域。因此,虛擬儲存器的應用,便是...

計算機內部 128是怎麼運算的?

川平馬一 128考慮為無符號整型資料是可以用8位二進位制表示的。在帶符號的整型資料裡,他的最高位只是符號位。剩下7位才是資料位,所以128無法使用8位二進位制數表達,存在溢位。 32位處理器,字長是32位,可以單指令計算32位和32位的加減法。如果遇到溢位,暫存器會有溢位標誌位被設定,此處可以寫程式...

為什麼32位的計算機記憶體要用32位二進位制數編址,用64位二進位制數編址記憶體不就可以更大了嗎?

幾乎所有8位微控制器位址匯流排都是16位或16位以上的,幾乎所有16位微控制器位址匯流排都是24位或20位的,為什麼32位的x86cpu位址匯流排是32位呢,這樣做設計方便是乙個原因,最主要的原因是386設計的時候記憶體還普遍使用的是4M,8M的記憶體條,在pc發展速度如此驚人的情況下,10年後12...