官术网_书友最值得收藏!

1.7 計(jì)算機(jī)的工作原理

美籍匈牙利數(shù)學(xué)家馮·諾依曼(John von Neumann)于1946年提出了計(jì)算機(jī)設(shè)計(jì)的三個(gè)基本思想:

①計(jì)算機(jī)由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備五個(gè)基本部分組成。

②采用二進(jìn)制形式表示計(jì)算機(jī)的指令和數(shù)據(jù)。

③將程序(由一系列指令組成)和數(shù)據(jù)存放在存儲(chǔ)器中,并讓計(jì)算機(jī)自動(dòng)地執(zhí)行程序。

其工作原理是將需要執(zhí)行的任務(wù)用程序設(shè)計(jì)語(yǔ)言寫成程序,與需要處理的原始數(shù)據(jù)一起通過輸入設(shè)備輸入并存儲(chǔ)在計(jì)算機(jī)的存儲(chǔ)器中,即“程序存儲(chǔ)”;在需要執(zhí)行時(shí),由控制器取出程序并按照程序規(guī)定的步驟或用戶提出的要求,向計(jì)算機(jī)的有關(guān)部件發(fā)布命令,并控制它們執(zhí)行相應(yīng)的操作,執(zhí)行的過程不需要人工干預(yù)而自動(dòng)連續(xù)地一條指令一條指令的運(yùn)行,即“程序控制”。馮·諾依曼計(jì)算機(jī)工作原理的核心是“程序存儲(chǔ)”和“程序控制”。按照這一原理設(shè)計(jì)的計(jì)算機(jī)稱為馮·諾依曼計(jì)算機(jī),其體系結(jié)構(gòu)稱為馮·諾依曼結(jié)構(gòu)。目前,計(jì)算機(jī)雖然已發(fā)展到了第五代,但基本上仍然遵循馮·諾依曼原理和結(jié)構(gòu)。但是,為了提高計(jì)算機(jī)的運(yùn)行程度,實(shí)現(xiàn)高度并行化,當(dāng)今的計(jì)算機(jī)系統(tǒng)已對(duì)馮·諾依曼結(jié)構(gòu)進(jìn)行了許多變革,如指令流水線技術(shù)、多核處理技術(shù)、平行計(jì)算技術(shù)等。

1.計(jì)算機(jī)的指令系統(tǒng)

指令是能被計(jì)算機(jī)識(shí)別并執(zhí)行的命令。每一條指令都規(guī)定了計(jì)算機(jī)要完成的一種基本操作,所有指令的集合就稱為計(jì)算機(jī)的指令系統(tǒng)。計(jì)算機(jī)的運(yùn)行就是識(shí)別并執(zhí)行其指令系統(tǒng)中的每條指令。

指令以二進(jìn)制代碼形式來表示,由操作碼和操作數(shù)(或地址碼)兩部分組成,如圖1-3所示。操作碼指出應(yīng)該進(jìn)行什么樣的操作,操作數(shù)表示指令所需要的數(shù)值本身,或數(shù)值在內(nèi)存中所存放的單元地址(地址碼)。

圖1-3 指令的組成

2.計(jì)算機(jī)執(zhí)行指令的過程

計(jì)算機(jī)的工作過程實(shí)際上就是快速地執(zhí)行指令的過程,認(rèn)識(shí)指令的執(zhí)行過程就能了解計(jì)算機(jī)的工作原理。計(jì)算機(jī)在執(zhí)行指令的過程中有兩種信息在流動(dòng):數(shù)據(jù)流和控制流。數(shù)據(jù)流是指原始數(shù)據(jù)、中間結(jié)果、結(jié)果數(shù)據(jù)、源程序等。控制流是由控制器對(duì)指令進(jìn)行分析、解釋后向各部件發(fā)出的控制命令,指揮各部件協(xié)調(diào)地工作。

計(jì)算機(jī)執(zhí)行指令一般分為以下四個(gè)步驟:

①取指令。控制器根據(jù)程序計(jì)數(shù)器的內(nèi)容(存放指令的內(nèi)存單元地址)從內(nèi)存中取出指令再送到CPU的指令寄存器。

②分析指令。控制器對(duì)指令寄存器中的指令進(jìn)行分析和譯碼。

③執(zhí)行指令。根據(jù)分析和譯碼的結(jié)果,判斷該指令要完成的操作,然后按照一定的時(shí)間順序向各部件發(fā)出完成操作的控制信號(hào),完成該指令的功能。

④一條指令執(zhí)行后,程序計(jì)數(shù)器加1或?qū)⑥D(zhuǎn)移地址碼送入程序計(jì)數(shù)器,然后回到步驟①,進(jìn)入下一條指令的取指令階段。

3.計(jì)算機(jī)執(zhí)行程序的過程

程序是為解決某一問題而編寫的指令序列。計(jì)算機(jī)能直接執(zhí)行的是機(jī)器指令,用高級(jí)語(yǔ)言或匯編語(yǔ)言編寫的程序必須先翻譯成機(jī)器語(yǔ)言,然后CPU從內(nèi)存中取出一條指令到CPU中執(zhí)行,指令執(zhí)行完,再?gòu)膬?nèi)存取出下一條指令到CPU中執(zhí)行,直到完成全部指令為止。CPU不斷地取指令、分析指令、執(zhí)行指令,這就是程序的執(zhí)行過程。

主站蜘蛛池模板: 大厂| 宝应县| 襄汾县| 巴林右旗| 天门市| 五常市| 赫章县| 竹溪县| 永清县| 德庆县| 平阳县| 彭山县| 奈曼旗| 通渭县| 沂源县| 昆明市| 鄂托克旗| 博爱县| 都匀市| 瑞丽市| 玉屏| 定兴县| 都匀市| 谢通门县| 塔河县| 平安县| 南和县| 呼和浩特市| 嘉鱼县| 翁源县| 松滋市| 克什克腾旗| 大连市| 黑河市| 镇赉县| 扶风县| 金门县| 宜宾县| 马鞍山市| 当涂县| 涞水县|