現(xiàn)代計(jì)算機(jī)大部分都是基于馮.諾依曼結(jié)構(gòu),馮.諾依曼結(jié)構(gòu)是由出生于匈牙利的美國籍猶太人數(shù)學(xué)家約翰·馮·諾伊曼在1946年6月30號發(fā)表的論文中提出的。
當(dāng)前最先進(jìn)的計(jì)算機(jī)都采用的是馮諾依曼體系結(jié)構(gòu),所以馮諾依曼是當(dāng)之無愧的數(shù)字計(jì)算機(jī)之父。馮諾依曼體系結(jié)構(gòu)特點(diǎn):
(1)計(jì)算機(jī)處理的數(shù)據(jù)和指令一律用二進(jìn)制數(shù)表示
(2)順序執(zhí)行程序
計(jì)算機(jī)運(yùn)行過程中,把要執(zhí)行的程序和處理的數(shù)據(jù)首先存入主存儲器(內(nèi)存),計(jì)算機(jī)執(zhí)行程序時(shí),將自動地并按順序從主存儲器中取出指令一條一條地執(zhí)行,這一概念稱作順序執(zhí)行程序。
(3)計(jì)算機(jī)硬件由運(yùn)算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備五大部分組成。
對于初學(xué)者我們應(yīng)該如何理解馮諾依曼體系呢?
當(dāng)年第一臺計(jì)算機(jī)ENIAC造出時(shí)采用的是十進(jìn)制,用了18000多只電子管,有資料說是不到18000只,總之是用了很多的電子管。但是為啥現(xiàn)在的計(jì)算機(jī)都采用了二進(jìn)制,那是因?yàn)轳T·諾依曼提出了二進(jìn)制,那為啥馮·諾依曼會提出二進(jìn)制,那是因?yàn)槎M(jìn)制能大大簡化計(jì)算機(jī)的線路。咱們先看下十進(jìn)制與二進(jìn)制的對應(yīng)關(guān)系。
二進(jìn)制 0 1 10 11 100 101 110 111 1000 1001
十進(jìn)制 0 1 2 3 4 5 6 7 8 9
為了簡化問題,我們可以把電子管想象成小燈泡,小燈泡亮的時(shí)候代表1,不亮的時(shí)候代表0。如果用十進(jìn)制代表9的話,則要9個(gè)小燈泡一起亮,才能代表數(shù)字9。然而用二進(jìn)制表示的話,則只用4個(gè)小燈泡就可以,第1位和第4位的小燈泡亮,第2位和第3位的小燈泡不亮,這樣就表示了1001。同理,表示數(shù)字7的話用3個(gè)亮著的小燈泡就可以了。這樣就可以簡化計(jì)算機(jī)的線路了,線路簡化了,計(jì)算機(jī)出錯(cuò)的幾率就大大降低了,可靠性自然就大大提高了。
關(guān)于二級制的邏輯控制它的數(shù)學(xué)基礎(chǔ)是布爾代數(shù),布爾代數(shù)是關(guān)于集合的運(yùn)算,集合之間基本運(yùn)算有交集,并集,補(bǔ)集。舉個(gè)簡單的例子,假設(shè)四年級有兩個(gè)班,一班和二班,F(xiàn)在就有兩個(gè)集合,一班和二班。現(xiàn)在我們要找四年級的全部男生,就是一班的男生和二班的男生的人數(shù)和,這個(gè)就是交集。如果我們要找四年級的全部學(xué)生,就是一班的學(xué)生加上二班的學(xué)生,這個(gè)就是并集。同時(shí),一班是二班的補(bǔ)集,二班也是一班的補(bǔ)集,F(xiàn)在咱們假設(shè)有兩種特殊的集合,其中一個(gè)集合只有元素1,另一個(gè)集合只有0,那么集合的運(yùn)算就轉(zhuǎn)換成了二進(jìn)制的運(yùn)算。其中交集變成了二進(jìn)制的'與'用符號“&”表示,并集變成了二進(jìn)制的'或'用“|”表示,補(bǔ)集變成了二進(jìn)制的'非'用“!”表示。則結(jié)果為:1&0=0,1|0=1,!1=0
最后,咱們看一下,馮諾依曼那五大部件是如何一起工作的。在這里咱們做一個(gè)類比,就是把電腦當(dāng)成人腦,咱們看看人腦是如何工作的。這里先假設(shè)把運(yùn)算器、控制器、存儲器都裝入我們的大腦,我們的眼睛和耳朵是輸入設(shè)備,因?yàn)檠劬κ强吹,耳朵是聽的,?dāng)然是輸入了。我們的嘴巴,手,腿都是輸出設(shè)備。因?yàn)樽彀褪钦f話的,所以是輸出,當(dāng)然如果嘴巴吃飯的話,又成輸入設(shè)備了,在這里咱們只用嘴巴說話的功能。我們上課的時(shí)候,老師講著課呢,突然發(fā)現(xiàn)你走神了,于是老師叫你:小明,你給老師算一下2+3等于幾。請注意:這個(gè)時(shí)候你的耳朵把這個(gè)信息輸入給你的大腦,你大腦里有運(yùn)算器、控制器、存儲器,這時(shí)這個(gè)信息進(jìn)入了存儲器,存儲器再把這個(gè)信息交給你大腦的運(yùn)算器。你大腦的運(yùn)算器經(jīng)過復(fù)雜的運(yùn)算,終于算出了結(jié)果等于5,于是通知你的輸出設(shè)備嘴,把這個(gè)結(jié)果說了出來。上完了數(shù)學(xué)課,你又上了一節(jié)體育課,體育課上在玩籃球,你的同學(xué)把籃球傳給你,請注意:這個(gè)時(shí)候你的眼睛作為輸入設(shè)備將這個(gè)信號傳給了大腦的存儲器,然后存儲器又把信號交給了大腦的控制器,然后大腦控制器發(fā)出了信號接球,這個(gè)時(shí)候你的輸出設(shè)備手就執(zhí)行了命令接球。以上就是五大部件一起工作的原理。在這里需要提出的是,五大部件中的存儲器指的是內(nèi)存,我們平時(shí)說的外存(主要指硬盤)既是輸入設(shè)備又是輸出設(shè)備。當(dāng)我們讀取硬盤數(shù)據(jù)的時(shí)候,硬盤就是輸入設(shè)備,當(dāng)我們存儲數(shù)據(jù)的時(shí)候,硬盤就是輸出設(shè)備。咱們平時(shí)說的CPU就包括了運(yùn)算器和控制器。
約翰·馮·諾伊曼
1、馮.諾依曼結(jié)構(gòu)
馮·諾伊曼結(jié)構(gòu)是一種將程序指令存儲器和數(shù)據(jù)存儲器合并在一起的計(jì)算機(jī)設(shè)計(jì)概念結(jié)構(gòu)。這個(gè)結(jié)構(gòu)隱約指導(dǎo)了將存儲設(shè)備與中央處理器分開的概念,因此依本結(jié)構(gòu)設(shè)計(jì)出的計(jì)算機(jī)又稱存儲程序計(jì)算機(jī)。
馮.諾依曼結(jié)構(gòu)
這個(gè)體系結(jié)構(gòu)上主要特點(diǎn)有:
1)以運(yùn)算單元為中心
2)采用存儲程序原理
3)存儲器是按地址訪問、線性編址的空間
4)控制流由指令流產(chǎn)生
5)指令由操作碼和地址碼組成
6)數(shù)據(jù)以二進(jìn)制編碼
2、CPU
inter的CPU
CPU(Central Processing Unit)又稱中央處理器,是一塊超大規(guī)模的集成電路,是一臺計(jì)算機(jī)的運(yùn)算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計(jì)算機(jī)指令以及處理計(jì)算機(jī)軟件中的數(shù)據(jù)。
3、存儲設(shè)備
1)內(nèi)存
內(nèi)存條
計(jì)算機(jī)內(nèi)存是與CPU直接交換數(shù)據(jù)的內(nèi)部存儲器,是典型的隨機(jī)存取存儲器(Random Access Memory,縮寫:RAM), 它可以隨時(shí)讀寫,而且速度很快,通常作為操作系統(tǒng)或其他正在運(yùn)行中的程序的臨時(shí)數(shù)據(jù)存儲介質(zhì)。我們經(jīng)常說電腦的內(nèi)存是2G,4G等就是說的這個(gè)內(nèi)存,電腦斷電后內(nèi)存中存儲的數(shù)據(jù)就會消失。
2)硬盤
硬盤主要是用于存儲大量文件,它不能直接與CPU交換數(shù)據(jù),當(dāng)讀取硬盤文件時(shí)首先將文件加載到內(nèi)存中,然后再由內(nèi)存與CPU交換數(shù)據(jù)。硬盤一般容量比較大,都在上百G以上,電腦斷電后硬盤中的文件數(shù)據(jù)不會消失。
4、輸入設(shè)備
輸入設(shè)備是向計(jì)算機(jī)輸入數(shù)據(jù)和信息的設(shè)備,是計(jì)算機(jī)與用戶或其他設(shè)備通信的橋梁。主要有如下幾種常見的輸入設(shè)備。
輸入設(shè)備
1)鼠標(biāo)
2)鍵盤
3)掃描儀
4)手柄
5)數(shù)字相機(jī)
6)麥克風(fēng)
5、輸出設(shè)備
輸出設(shè)備是計(jì)算機(jī)硬件系統(tǒng)的終端設(shè)備,用于接收計(jì)算機(jī)數(shù)據(jù)的輸出顯示、打印、聲音、控制外圍設(shè)備操作等。主要有如下幾種常見輸出設(shè)備。
輸出設(shè)備
1)顯示器
2)揚(yáng)聲器
3)打印機(jī)
4)投影儀