計算機的工作原理是什么
計算機的工作原理是什么
很多人都會用電腦,那么你知道計算機的工作原理是什么嗎學(xué)習(xí)啦小編總結(jié)了一些資料,供大家參考!
計算機的基本原理是存貯程序和程序控制
預(yù)先要把指揮計算機如何進行操作的指令序列(稱為程序)和原始數(shù)據(jù)通過輸入設(shè)備輸送到計算機內(nèi)存貯器中。每一條指令中明確規(guī)定了計算機從哪個地址取數(shù),進行什么操作,然后送到什么地址去等步驟。
計算機在運行時,先從內(nèi)存中取出第一條指令,通過控制器的譯碼,按指令的要求,從存貯器中取出數(shù)據(jù)進行指定的運算和邏輯操作等加工,然后再按地址把結(jié)果送到內(nèi)存中去。接下來,再取出第二條指令,在控制器的指揮下完成規(guī)定操作。依此進行下去,直至遇到停止指令。
o 程序與數(shù)據(jù)一樣存貯,按程序編排的順序,一步一步地取出指令,自動地完成指令規(guī)定的操作是計算機最基本的工作原理。這一原理最初是由美籍匈牙利數(shù)學(xué)家馮.諾依曼于1945年提出來的,故稱為馮.諾依曼原理。
什么是計算機的工作原理
1、計算機系統(tǒng)的組成
微型計算機由硬件系統(tǒng)和軟件系統(tǒng)組成。
硬件系統(tǒng):指構(gòu)成計算機的電子線路、電子元器件和機械裝置等物理設(shè)備,它包括計算機的主機及外部設(shè)備。
軟件系統(tǒng):指程序及有關(guān)程序的技術(shù)文檔資料。包括計算機本身運行所需要的系統(tǒng)軟件、各種應(yīng)用程序和用戶文件等。軟件是用來指揮計算機具體工作的程序和數(shù)據(jù),是整個計算機的靈魂。
計算機硬件系統(tǒng)主要由運算器、控制器、存儲器、輸入設(shè)備和輸出設(shè)備等五部分組成。
2、計算機的工作原理
(1)馮?諾依曼原理
“存儲程序控制”原理是1946年由美籍匈牙利數(shù)學(xué)家馮?諾依曼提出的,所以又稱為“馮?諾依曼原理”。該原理確立了現(xiàn)代計算機的基本組成的工作方式,直到現(xiàn)在,計算機的設(shè)計與制造依然沿著“馮?諾依曼”體系結(jié)構(gòu)。
(2)“存儲程序控制”原理的基本內(nèi)容
?、俨捎枚M制形式表示數(shù)據(jù)和指令。
?、趯⒊绦?數(shù)據(jù)和指令序列)預(yù)先存放在主存儲器中(程序存儲),使計算機在工作時能夠自動高速地從存儲器中取出指令,并加以執(zhí)行(程序控制)。
③由運算器、控制器、存儲器、輸入設(shè)備、輸出設(shè)備五大基本部件組成計算機硬件體系結(jié)構(gòu)。
(3)計算機工作過程
第一步:將程序和數(shù)據(jù)通過輸入設(shè)備送入存儲器。
第二步:啟動運行后,計算機從存儲器中取出程序指令送到控制器去識別,分析該指令要做什么事。
第三步:控制器根據(jù)指令的含義發(fā)出相應(yīng)的命令(如加法、減法),將存儲單元中存放的操作數(shù)據(jù)取出送往運算器進行運算,再把運算結(jié)果送回存儲器指定的單元中。
第四步:當(dāng)運算任務(wù)完成后,就可以根據(jù)指令將結(jié)果通過輸出設(shè)備輸出。
指令
指令是用來規(guī)定計算機執(zhí)行的操作和操作對象所在存儲位置的一個二進制位串。
指令的格式
一條指令由操作碼和地址碼兩部分組成。 例如二地址指令格式如下: 操作碼 地址碼1 地址碼2 操作碼:用來指出計算機應(yīng)執(zhí)行何種操作的一個二進制代碼。 具體說明指令的性質(zhì)或功能,每條指令只有一個操作碼 。 例如,加法、減法、乘法、除法、取數(shù)、存數(shù)等各種基本操作均有各自相應(yīng)的操作碼。 地址碼: 指出該指令所操作(處理)的對象(稱為操作數(shù))所在存儲單元的地址。 包括著操作數(shù)的來源,結(jié)果的去向或下一條指令的地址等信息,不同指令中地址碼的個數(shù)可以不一樣。
指令系統(tǒng)
定義 一臺計算機所能識別并執(zhí)行的全部指令的集合,稱為該臺計算機的指令系統(tǒng)。指令系統(tǒng)中有數(shù)以百計的不同指令。
指令的分類:
1,數(shù)據(jù)傳送指令:用于把存儲器或寄存器中的某個操作數(shù)復(fù)制到指定的存儲單元或寄存器中去。
例如: MOV CL,05H
解釋:將05H保存到寄存器CL中
2,算術(shù)運算指令:用于完成兩個操作數(shù)的加、減、乘、除等各種算術(shù)運算。
例如: CX=0029H,SI=04EDH,執(zhí)行指令A(yù)DD SI,CX之后
將寄存器SI中存儲的數(shù)04EDH和寄存器CX中存儲的數(shù)0029H相加,
并把結(jié)果存在寄存器SI中
驗算過程如下:
0029H
+ 04EDH
0516H
結(jié)果SI=0516H
3,邏輯運算指令:用于完成兩個操作數(shù)的邏輯加、邏輯乘、按位加等各種邏輯運算。
例如:按位求反指令
BL=FBH,執(zhí)行指令NOT BL后,
BL=(11111011)2
取反后BL=(00000100)2=04H
4,移位運算指令:用于完成指定操作數(shù)的各種類型的移位操作。
5,位與位串操作:計算機中越來越重視非數(shù)值數(shù)據(jù)的操作,包括位與位串的裝入、存儲、傳送比較、重復(fù)執(zhí)行等,也可包括位串的插入、型存取。
6,控制與轉(zhuǎn)移指令:通常程序中的指令多數(shù)是依次序一條條的順序執(zhí)行,但根據(jù)指令執(zhí)行的結(jié)果,也可以跳到其他指令或其他程序段去執(zhí)行。具有這種功能的就是各種類型的轉(zhuǎn)移指令。
7,輸入/輸出指令:在微機中,往往把輸入/輸出設(shè)備中與主機可交換數(shù)據(jù)的寄存器稱為I/O端口。同時,把各個I/O端口統(tǒng)一編址。使用輸入/輸出指令,就可以去存取各種外部設(shè)備的I/O端口,實現(xiàn)數(shù)據(jù)的輸入/輸出。
8,其它指令:包括各種處理器控制指令,它們往往由操作系統(tǒng)專用。
兼容性問題
每種CPU都有自己獨特的指令系統(tǒng),用某一類計算機的機器語言編制的程序難以在其他各類計算機上運行,這個問題稱之為指令不兼容。 向下兼容: 如586機器語言向下兼容486機器語言程序。
指令精簡問題 精簡指令系統(tǒng)計算機RISC。
--------------------------------------------------------------------------------
程序
為解決某一問題而設(shè)計的一系列指令稱為程序。 程序和相關(guān)數(shù)據(jù)存放在存儲器中,計算的工作就是執(zhí)行存放在存儲器中的程序。 計算機運行程序的過程就是一條一條地執(zhí)行指令的過程。
程序的執(zhí)行又自動地控制著整個計算機的全部操作。 這就是50年前美國數(shù)學(xué)家馮·諾依曼提出的程序存儲和程序控制的思想。這也是目前計算機的基本工作方式。
指令的執(zhí)行
一條指令的執(zhí)行過程大體如下:
(1)指令預(yù)取部件向指令快存提取一條指令,若快存中沒有,則向總線接口部件發(fā)出請求,要求訪問存儲器,取得一條指令;
(2)總線接口部件在總線空閑時,通過總線從存儲器中取出一條指令,放入快存和指令預(yù)取部件;
(3)指令譯碼部件從指令預(yù)取部件中取得該指令,并把它翻譯成起控制作用的微碼;
(4)地址轉(zhuǎn)換與管理部件負責(zé)計算出該指令所使用的操作數(shù)的有效物理地址,需要時,請求總線接口部件,通過總線從存儲器中取得該操作數(shù);
(5)執(zhí)行單元按照指令操作碼的要求,對操作數(shù)完成規(guī)定的運算處理,并根據(jù)運算結(jié)果修改或設(shè)置處理器的一些狀態(tài)標(biāo)志;
(6)修改地址轉(zhuǎn)換與管理部件中的指令地址,提供指令預(yù)取部件預(yù)取指令時使用。
Pentium 處理器中的流水線過程
由于Pentium中有兩個整數(shù)ALU,所以它能同時執(zhí)行兩條流水線, 這種結(jié)構(gòu)稱為“超標(biāo)量結(jié)構(gòu)”(Superscalar)。