主存储器的基本组成
主存儲(chǔ)器的基本組成
包括存儲(chǔ)體M,各種邏輯部件及控制電路等。
主存儲(chǔ)器的示意圖如下:
其實(shí)主存并不是上面那么簡(jiǎn)單,還有很多部件一起協(xié)作,如下圖:
我們只討論第一個(gè)圖,接下來(lái)分別介紹主存儲(chǔ)器中的各個(gè)部件。
?
存儲(chǔ)體
我們看主存儲(chǔ)體中的存儲(chǔ)體:
我們把存儲(chǔ)體放大來(lái)看,先給一個(gè)示意圖,方便理解:
自己畫(huà)的圖,可能不是很準(zhǔn)確。
存儲(chǔ)體的組成:
存儲(chǔ)體由許多存儲(chǔ)單元組成,每個(gè)存儲(chǔ)單元又包含若干個(gè)存儲(chǔ)元件,每個(gè)存儲(chǔ)元件可以寄存一位二進(jìn)制代碼0/1。
對(duì)于其組成我們可以這樣來(lái)記憶:
存儲(chǔ)體呢,相當(dāng)于一棟大樓,大樓內(nèi)有很多房間(存儲(chǔ)單元),每個(gè)房間內(nèi)又有很多床位(存儲(chǔ)元件),那么0代表床上無(wú)人,1代表床上有人。
存儲(chǔ)單元:
以8位二進(jìn)制作為一個(gè)存儲(chǔ)單元,也就是一個(gè)字節(jié)。
一個(gè)存儲(chǔ)單元可以存儲(chǔ)一串二進(jìn)制代碼,稱(chēng)這串二進(jìn)制代碼為一個(gè)存儲(chǔ)字,代碼位數(shù)位存儲(chǔ)字長(zhǎng)。指令(地址碼+操作碼)就存放在存儲(chǔ)單元中。
存儲(chǔ)單元有編號(hào),這些編號(hào)稱(chēng)為存儲(chǔ)單元的地址號(hào)。存儲(chǔ)單元按地址尋訪。這些地址都是二進(jìn)制的形式。
?
存儲(chǔ)體的另一種示意圖:
如果我們忽略存儲(chǔ)原件不計(jì),那么存儲(chǔ)體的樣子是這樣的:
這個(gè)十分簡(jiǎn)單的圖卻在分析主存中存儲(chǔ)單元地址的分配的時(shí)候,有重要作用。
我們既然都忽略了存儲(chǔ)原件,那么圖中的小方格就是存儲(chǔ)單元了。外面最大的矩形框自然是存儲(chǔ)體。
那存儲(chǔ)單元中的數(shù)字是什么東西??
這些數(shù)字形象化的代替了存儲(chǔ)單元的地址。當(dāng)然,實(shí)際中都應(yīng)該是二進(jìn)制數(shù)。
?
MAR
存儲(chǔ)器地址寄存器。保存了存儲(chǔ)單元的地址(編號(hào))。其位數(shù)反映存儲(chǔ)單元的個(gè)數(shù)。
為什么這么說(shuō)呢?
比如有16個(gè)存儲(chǔ)單元,而存儲(chǔ)單元的地址是用二進(jìn)制表示的,那么用4位二進(jìn)制數(shù)就可以表示。MAR的位數(shù)就是4位。
那么相反,如果我們知道MAR有4位,那么存儲(chǔ)單元就有24個(gè),16個(gè)存儲(chǔ)單元。
所以MAR反映存儲(chǔ)單元的個(gè)數(shù)。
?
MDR
存儲(chǔ)器數(shù)據(jù)寄存器,其位數(shù)反映存儲(chǔ)字長(zhǎng)。
存放的是:存儲(chǔ)器中從存儲(chǔ)某單元讀出、或要寫(xiě)入某存儲(chǔ)單元的數(shù)據(jù)(代碼)。
如果MDR=8,每個(gè)存儲(chǔ)單元進(jìn)行訪問(wèn)時(shí),數(shù)據(jù)是8位,存儲(chǔ)字長(zhǎng)8位。
?
主存儲(chǔ)器和CPU的聯(lián)系
要想完成一個(gè)完整的取或存操作,CPU(控制器)還得給主存加以各種控制信號(hào)(讀命令、寫(xiě)命令、地址譯碼驅(qū)動(dòng)信號(hào)等)。
現(xiàn)代計(jì)算機(jī)中:
1.主存由半導(dǎo)體集成電路構(gòu)成
2.驅(qū)動(dòng)器、譯碼器和讀寫(xiě)電路均在存儲(chǔ)芯片中
3.MAR和MDR在CPU芯片中
4.存儲(chǔ)芯片和CPU芯片可以通過(guò)總線(系統(tǒng)總線)連接
5.地址總線用來(lái)指出存儲(chǔ)單元地址號(hào)。
總結(jié)
- 上一篇: Java实现阿拉伯数字转大写中文
- 下一篇: 代理猎手(Proxy Hunter)使用