




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第四講 計(jì)算機(jī)的內(nèi)部存儲(chǔ)與處理 CPU芯片不停的計(jì)算北京大學(xué)信息學(xué)院2022/6/27北京大學(xué)2本講內(nèi)容了解電子計(jì)算機(jī)的數(shù)學(xué)理論模型掌握CPU的內(nèi)部結(jié)構(gòu)和工作原理領(lǐng)會(huì)主存儲(chǔ)器的結(jié)構(gòu)及其與CPU之間的聯(lián)系方式了解指令系統(tǒng)及各種類(lèi)型的指令了解程序的根本控制結(jié)構(gòu)了解VC6.0編程環(huán)境和編程網(wǎng)格環(huán)境1、電子計(jì)算機(jī)的數(shù)學(xué)理論模型圖靈機(jī)2022/6/27北京大學(xué)41、圖靈機(jī)可計(jì)算性所謂可計(jì)算性其實(shí)應(yīng)當(dāng)算是一個(gè)哲學(xué)定義。通俗的說(shuō)如果存在一個(gè)機(jī)械的過(guò)程,當(dāng)我們給一個(gè)輸入,這個(gè)過(guò)程或機(jī)器就能在有限步內(nèi)給出答案,那么這個(gè)問(wèn)題就稱(chēng)作是可計(jì)算的。 2022/6/27北京大學(xué)51.1 理論開(kāi)展里程碑圖靈Alan Tur
2、ing研究了可計(jì)算性:提出了圖靈機(jī)和圖靈機(jī)能解決的計(jì)算問(wèn)題類(lèi),并證明了存在著圖靈機(jī)無(wú)法解決的問(wèn)題類(lèi)。 馮諾伊曼Von Neuman給出了現(xiàn)代電子數(shù)字計(jì)算機(jī)的設(shè)計(jì)藍(lán)圖:提出了數(shù)字計(jì)算機(jī)的組成原理和體系結(jié)構(gòu)。對(duì)指令、指令周期、指令系統(tǒng)和存儲(chǔ)式程序控制原理都給出了明確的方案。庫(kù)克Stephen A.Cook 研究了計(jì)算復(fù)雜性。有一些問(wèn)題,雖然可計(jì)算,但隨著問(wèn)題規(guī)模的增加,就連最快的計(jì)算機(jī)用幾百年也不能結(jié)束計(jì)算。 問(wèn)題復(fù)雜性/算法復(fù)雜性;P/NP/NPC問(wèn)題2022/6/27北京大學(xué)61.2 圖靈機(jī)圖靈機(jī)Turing Machine它是數(shù)學(xué)理論中的計(jì)算模型是現(xiàn)代電子計(jì)算機(jī)的理論根底2022/6/27北
3、京大學(xué)71.2 圖靈機(jī) 圖靈機(jī)由一條雙向都可以無(wú)限延長(zhǎng)的、被分成一個(gè)個(gè)小方格的磁帶;一個(gè)有限狀態(tài)控制器;一個(gè)讀寫(xiě)磁頭等三局部組成。0111000110存儲(chǔ)帶(q1 , q2 , q3 , q4 , ) 讀寫(xiě)頭有限狀態(tài)控制器s1s2s3s8s9s102022/6/27北京大學(xué)81.2 圖靈機(jī)圖靈機(jī)一步一步地進(jìn)行工作,其工作情況取決于三個(gè)條件: 有限狀態(tài)控制器當(dāng)前內(nèi)部狀態(tài) 讀寫(xiě)磁頭掃描在磁帶的哪個(gè)方格上 該方格上有什么信息每一步工作的過(guò)程: 讀 “讀寫(xiě)磁頭當(dāng)前所掃描的磁帶方格的存儲(chǔ)內(nèi)容 si 根據(jù)si的值 以及“有限控狀態(tài)制器當(dāng)前內(nèi)部狀態(tài)qi, 決定 在當(dāng)前方格寫(xiě)入新的內(nèi)容 si 并決定 “讀寫(xiě)磁
4、頭由當(dāng)前位置 或左移(一格)、或右移(一格)、或不移動(dòng)、或停機(jī) 并決定 “有限狀態(tài)控制器新的控制狀態(tài) q i+1 進(jìn)入下一步工作,按同樣的方式工作;如此周而復(fù)始,直到遇到命令機(jī)器停機(jī)。2022/6/27北京大學(xué)91.2 圖靈機(jī)10110q1q2q3q4q5q6q7 當(dāng)前控制器處于狀態(tài)q2,磁頭所指的磁帶方格內(nèi)容為1,現(xiàn)在要采取得動(dòng)作是:將該磁帶方格的內(nèi)容改寫(xiě)為0,磁頭向右移動(dòng)一格,控制器內(nèi)狀態(tài)變?yōu)閝5。例00110q1q2q3q4q5q6q72022/6/27北京大學(xué)101.2 圖靈機(jī) 圖靈機(jī)的這種由狀態(tài)、符號(hào)確定的工作過(guò)程叫做圖靈機(jī)程序,可以由一個(gè)五元組序列來(lái)定義: q:當(dāng)前狀態(tài) b:當(dāng)前方
5、格中的符號(hào) q:下一狀態(tài) a:當(dāng)前方格中修改后的符號(hào) m:磁頭移動(dòng)的方向,左移LLeft、右移RRight,不動(dòng)NNo-motion、停機(jī)HHalt 前面例子中,圖靈機(jī)的一步動(dòng)作可表示為:2022/6/27北京大學(xué)111.2 圖靈機(jī) 如果用Q = q1 , q2 , q3 , q4 , 表示有限狀態(tài)集, = a1 , a2 , a3 , a4 , 表示磁帶方格上的符號(hào)集,用L、R、N、H分別表示左移、右移、不動(dòng)、停機(jī),那么圖靈機(jī)程序也可以用下述映射進(jìn)行定義:Q x x L、R、N、H x Q 外表上看,圖靈機(jī)的計(jì)算功能似乎很弱,實(shí)際上,只要只要時(shí)間足夠長(zhǎng)即允許足夠的工作步數(shù)和有足夠的空間即磁帶
6、足夠長(zhǎng),那么圖靈機(jī)可以替代目前的任何計(jì)算機(jī)。2022/6/27北京大學(xué)121.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x 在二進(jìn)制圖靈機(jī)上計(jì)算函數(shù)f(x) = 2xx0,即x和f(x)都用二進(jìn)制表示,磁帶方格中只能用0和1兩個(gè)符號(hào),B表示空白。 約定:1、開(kāi)始時(shí),磁帶上只有一個(gè)連續(xù)的方格串上放入x的相應(yīng)的二進(jìn)制值符號(hào),其余方格都為空白。2、機(jī)器從狀態(tài)q1開(kāi)始,磁頭指向x最左一位所在的方格。3、停機(jī)時(shí),磁帶上非空方格串所組成的二進(jìn)制值即代表f(x)。2022/6/27北京大學(xué)131.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x 在前面的約定下,計(jì)算f(x) = 2x的圖靈機(jī)程序如下,其中Halt表示停機(jī),
7、Error表示在計(jì)算中不會(huì)出現(xiàn):當(dāng)前狀態(tài)B被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移0被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移1被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移q11,L,q70,R,q11,R,q2q2B,R,q30,R,q21,R,q2q30,L,q40,R,q3Errorq4B,L,q50,L,q4Errorq5Error1,L,q50,L,q6q6B,R,q10,L,q61,L,q6q7HaltB,L,q7Error2022/6/27北京大學(xué)141.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x 為什么以x的二進(jìn)制數(shù)為符號(hào)作為磁帶初始值;為什么停機(jī)后磁帶上的二進(jìn)制值就是最終結(jié)果;為什么有7種狀態(tài);為什么在每種狀態(tài)中要進(jìn)行這
8、些動(dòng)作;這就是所謂的圖靈機(jī)程序設(shè)計(jì)。2022/6/27北京大學(xué)151.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x101010開(kāi)始第1步第2步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)161.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x第3步:?當(dāng)前狀態(tài)q2,B被掃描當(dāng)前狀態(tài)B被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移0被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移1被掃描時(shí)的寫(xiě)、移動(dòng)、狀態(tài)轉(zhuǎn)移q11,L,q70,R,q11,R,q2q2B,R,q30,R,q21,R,q2q30,L,q40,R,q3Errorq4B,L,q50,L,q4Errorq5Error1,L,
9、q50,L,q6q6B,R,q10,L,q61,L,q6q7HaltB,L,q7Error10q1q2q3q4q5q6q72022/6/27北京大學(xué)171.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x10100100第5步第4步第3步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)181.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x010110010第8步第7步第6步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)191.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x010010010第11
10、步第10步第9步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)201.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x01001000100第14步第13步第12步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)211.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x010000000000第17步第16步第15步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)221.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x00000000000
11、0第20步第19步第18步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72022/6/27北京大學(xué)231.3 圖靈機(jī)計(jì)算實(shí)例 f(x) = 2x001000100100結(jié)束f(2) = 22 = 4第21步第22步q1q2q3q4q5q6q7q1q2q3q4q5q6q7q1q2q3q4q5q6q72、中央處理器CPU2022/6/27北京大學(xué)252、中央處理器CPU中央處理器CPU的任務(wù)是執(zhí)行“程序CPUCentral Processing Unit ,計(jì)算機(jī)的核心微型計(jì)算機(jī)使用的CPU通常稱(chēng)為 MPUMicro Processor Unit其他部件與CP
12、U協(xié)同工作2022/6/27北京大學(xué)26CPU內(nèi)頻時(shí)鐘南橋內(nèi)存RAM內(nèi)部總線硬盤(pán)(DISK)外部總線北橋芯片組USBAGP外頻時(shí)鐘北橋芯片組負(fù)責(zé)內(nèi)存和CPU以及顯示卡AGP的聯(lián)系南橋芯片組負(fù)責(zé)硬盤(pán)以及各種外設(shè)、USB的數(shù)據(jù)交換系統(tǒng)時(shí)鐘系統(tǒng)時(shí)鐘相當(dāng)于中央處理單元的心臟。在計(jì)算機(jī)工作過(guò)程中,系統(tǒng)時(shí)鐘有規(guī)律性地“跳動(dòng),按照精確的時(shí)間間隔發(fā)出脈沖式的電信號(hào)時(shí)鐘節(jié)拍。這種脈沖信號(hào)控制著各種系統(tǒng)部件的動(dòng)作速度,使它們能夠協(xié)調(diào)同步。系統(tǒng)時(shí)鐘的頻率不能太快,否那么工作部件跟不上步伐,數(shù)據(jù)傳輸和處理就會(huì)發(fā)生錯(cuò)誤,而系統(tǒng)時(shí)鐘太慢又不能發(fā)揮CPU等部件的能力。系統(tǒng)時(shí)鐘是獨(dú)立的電路,分:內(nèi)頻時(shí)鐘:控制CPU工作外頻時(shí)
13、鐘:控制主存儲(chǔ)器、磁盤(pán)和外部設(shè)備的數(shù)據(jù)交換2、中央處理器CPU2022/6/27北京大學(xué)27CPU內(nèi)部結(jié)構(gòu)存放器組、算術(shù)邏輯運(yùn)算部件、程序控制部件、中斷處理部件程序控制中斷處理ALU算術(shù)邏輯運(yùn)算2.1 CPU的組成及程序控制原理程序控制2022/6/27北京大學(xué)28存放器組由多個(gè)高速存放器組成的高速存儲(chǔ)單元用于暫時(shí)存儲(chǔ)運(yùn)算數(shù)據(jù)或其他類(lèi)型的信息整數(shù)操作數(shù)或結(jié)果浮點(diǎn)數(shù)操作數(shù)或結(jié)果跳轉(zhuǎn)地址程序代碼地址內(nèi)部各種標(biāo)志信息.存放器組2022/6/27北京大學(xué)29程序控制部件Program Control Unit程序控制部件:CPU的控制中心,負(fù)責(zé)解釋指令,根據(jù)指令的解釋去發(fā)出命令,控制計(jì)算機(jī)其他各局部的
14、活動(dòng),并對(duì)CPU的工作進(jìn)度和工作方式進(jìn)行控制:CPU依據(jù)輸入的指令進(jìn)行工作當(dāng)一條指令進(jìn)入 CPU 后,程序控制部件分析解釋該指令的編碼內(nèi)容,確定每一種指令應(yīng)該完成的動(dòng)作,及其連帶的指令有關(guān)參數(shù)。如“加法指令連帶的2個(gè)被加數(shù)的地址指揮主存儲(chǔ)器將數(shù)據(jù)送到CPU中來(lái)。將結(jié)果數(shù)據(jù)存入存放器或內(nèi)存中。程序控制程序控制2022/6/27北京大學(xué)30算術(shù)邏輯運(yùn)算部件ALU算術(shù)邏輯運(yùn)算部件:執(zhí)行算術(shù)運(yùn)算和邏輯運(yùn)算的部件 加法的例子一條加法指令連帶指出參與運(yùn)算的兩個(gè)被加數(shù)的地址進(jìn)入CPU,程序控制部件 分析該指令,判斷操作數(shù)在存放器還是內(nèi)存中如果在內(nèi)存,從內(nèi)存讀入操作數(shù)提交加法運(yùn)算讓ALU進(jìn)行計(jì)算指示把計(jì)算結(jié)果
15、存放到存放器或內(nèi)存中程序控制2022/6/27北京大學(xué)31中斷處理部件CPU還有一個(gè)處理中斷的部件,用于處理意外情況。問(wèn)題背景:處理臨時(shí)出現(xiàn)的緊急事件,如鼠標(biāo)移動(dòng)。中斷的處理:發(fā)現(xiàn)中斷信號(hào),程序控制部件暫停正在運(yùn)行的程序,保存該程序的運(yùn)行現(xiàn)場(chǎng)當(dāng)前所有執(zhí)行狀態(tài)信息,以便其恢復(fù)執(zhí)行;根據(jù)中斷信號(hào)從特定位置啟動(dòng)中斷處理程序操作系統(tǒng)提供處理中斷。中斷處理完畢后,回到原來(lái)的程序工作軌道繼續(xù)工作。中斷的產(chǎn)生:各種軟硬件;中斷信號(hào)中斷的詳細(xì)信息。中斷的接收:CPU中的中斷處理部件接收; 中斷信號(hào)的編碼、中斷處理程序起始地址。中斷的檢測(cè):程序控制部件在每次指令執(zhí)行后, 都檢測(cè)是否出現(xiàn)中斷信號(hào)。參閱6.2.3“
16、程序中斷2022/6/27北京大學(xué)32工作主頻:內(nèi)頻時(shí)鐘頻率,1.73.0GHz運(yùn)算字長(zhǎng):CPU一次能夠處理的二進(jìn)制位數(shù),32bit/64bit運(yùn)算速度:每秒鐘執(zhí)行的指令數(shù),1000MIPSMillion Instructions Per SecondCPU主要性能指標(biāo)2022/6/27北京大學(xué)332.2 數(shù)字化的指令及程序指令用來(lái)規(guī)定CPU所能完成的根本功能。每一條指令用假設(shè)干字節(jié)的二進(jìn)制編碼表示,包括它要完成的動(dòng)作及其連帶參數(shù)指令系統(tǒng)。程序是由假設(shè)干條指令的順序排列組成,是為信息處理任務(wù)而預(yù)先編制的工作執(zhí)行方案。程序是CPU最頻繁使用的信息,應(yīng)當(dāng)放在CPU能快速方便地訪問(wèn)的地方內(nèi)存中。CP
17、U開(kāi)始執(zhí)行程序的時(shí)候,必須知道程序在內(nèi)存中存放的位置信息。程序在內(nèi)存中順序存儲(chǔ),指令存儲(chǔ)的順序決定了它們?cè)诒粓?zhí)行過(guò)程中的根本順序關(guān)系時(shí)間關(guān)系。CPU負(fù)責(zé)順序地對(duì)每一條指令解釋?zhuān)⑼瓿芍噶钏?guī)定的運(yùn)算任務(wù)。程序控制部件控制指令的讀取和指令的執(zhí)行指令周期,并利用程序計(jì)數(shù)器(Program Counter) 順序控制程序的執(zhí)行。在CPU中,程序計(jì)數(shù)器 用于記錄當(dāng)前要執(zhí)行的程序指令在內(nèi)存中的地址,保證指令地址和訪問(wèn)數(shù)據(jù)的地址明確區(qū)分不混淆。指令執(zhí)行結(jié)束后, 程序計(jì)數(shù)器自動(dòng)指到下一條指令,或根據(jù)指令指示轉(zhuǎn)移到相應(yīng)指令地址。2022/6/27北京大學(xué)34程序在形式上變成和數(shù)據(jù)同一個(gè)樣子,并以數(shù)字編碼形式存
18、放在內(nèi)存中程序是CPU程序控制部件的處理對(duì)象,一般的數(shù)據(jù)那么是ALU的處理對(duì)象“指令那么好似指揮員給出的命令信息 數(shù)據(jù)是CPU處理加工的對(duì)象例如:整數(shù),浮點(diǎn)數(shù) “指令以數(shù)字化形式存在,和數(shù)據(jù)一樣存放在內(nèi)存中CPU快速不間斷地從主存儲(chǔ)器取出指令,實(shí)現(xiàn)高速程序控制2.2 數(shù)字化的指令及程序2022/6/27北京大學(xué)352.3 指令工作周期讀取指令指令地址:程序控制器從“程序計(jì)數(shù)器取出下一條指令地址根據(jù)指令地址從主存中取出指令,送入CPU的指令存放器執(zhí)行指令解釋指令獲得指令類(lèi)型及所操作數(shù)據(jù)在主存中的地址讀取數(shù)據(jù)數(shù)據(jù)在哪 (數(shù)據(jù)地址)ALU計(jì)算運(yùn)算結(jié)果存放存放器、主存處理中斷檢測(cè)中斷更新“程序計(jì)數(shù)器程
19、序計(jì)數(shù)器時(shí)鐘節(jié)拍是CPU完成一個(gè)動(dòng)作根本時(shí)間單位一個(gè)指令周期一般要用多個(gè)時(shí)鐘節(jié)拍3、主存儲(chǔ)器內(nèi)存及其與CPU之間的數(shù)據(jù)傳輸2022/6/27北京大學(xué)373、主存儲(chǔ)器內(nèi)存主存儲(chǔ)器用來(lái)在計(jì)算機(jī)中存儲(chǔ)CPU可直接訪問(wèn)的數(shù)據(jù)主存儲(chǔ)器的工作速度和容量對(duì)計(jì)算機(jī)系統(tǒng)整體性能影響極大主存儲(chǔ)器容量根本計(jì)量單位為字節(jié)Byte目前常見(jiàn)的計(jì)算機(jī)標(biāo)配內(nèi)存容量多為512MB、1GB和2GB2022/6/27北京大學(xué)383.1 存儲(chǔ)單元主存儲(chǔ)器具有存儲(chǔ)數(shù)據(jù)和讀寫(xiě)數(shù)據(jù)的功能除非特意改變、去除或意外掉電,存儲(chǔ)在主存儲(chǔ)器根本存儲(chǔ)單元一個(gè)二進(jìn)制位中的信息0或1不會(huì)發(fā)生變化通過(guò)讀操作,可取出存儲(chǔ)單元中的比特信息通過(guò)寫(xiě)操作,可更改存儲(chǔ)
20、單元中的比特信息為1或0通過(guò)去除操作,可把存儲(chǔ)單元的的比特信息置0為了更有效地進(jìn)行管理,主存儲(chǔ)器通常以8個(gè)比特一個(gè)字節(jié)為一個(gè)存儲(chǔ)管理單元存儲(chǔ)單元每個(gè)存儲(chǔ)單元都有其特定的唯一的地址(存儲(chǔ)地址)存儲(chǔ)地址為整數(shù)編碼,可表示為二進(jìn)制整數(shù)表示主存儲(chǔ)器的所有存儲(chǔ)單元的地址,稱(chēng)為地址空間;表示地址空間所需的二進(jìn)制位數(shù),稱(chēng)為地址寬度。內(nèi)存容量越大,地址空間也就越大,地址寬度也必須相應(yīng)加大。2022/6/27北京大學(xué)39主存儲(chǔ)器地址訪問(wèn)方式訪問(wèn)主存儲(chǔ)器使用地址訪問(wèn)方式存儲(chǔ)地址一個(gè)存儲(chǔ)單元或相鄰幾個(gè)存儲(chǔ)單元的開(kāi)始地址CPU的字長(zhǎng)通常為4個(gè)字節(jié)32位 或8個(gè)字節(jié)64位,因此CPU 讀寫(xiě)內(nèi)存數(shù)據(jù)的方式也通常是 每次4
21、個(gè)字節(jié)或8個(gè)字節(jié)程序中的變量和存儲(chǔ)單元相對(duì)應(yīng)變量名字對(duì)應(yīng)于存儲(chǔ)單元地址變量?jī)?nèi)容對(duì)應(yīng)于存儲(chǔ)單元中的數(shù)據(jù)指針的內(nèi)容是存儲(chǔ)地址2022/6/27北京大學(xué)403.2 主存儲(chǔ)器的組成主存儲(chǔ)器由大規(guī)模集成電路的存儲(chǔ)芯片組裝而成容量指標(biāo):?jiǎn)涡酒弦呀?jīng)可達(dá)4G比特的容量存儲(chǔ)芯片必須加電才能保存信息,掉電那么信息喪失速度指標(biāo):一次讀寫(xiě)大約在幾十納秒(ns)左右主存儲(chǔ)器采用隨機(jī)訪問(wèn)技術(shù)RAM Random Access Memory訪問(wèn)時(shí)間不隨訪問(wèn)地址的不同而不同也不受訪問(wèn)地址的變化規(guī)律不同而不同讀寫(xiě)任意地址的存儲(chǔ)單元其訪問(wèn)時(shí)間是一定的2022/6/27北京大學(xué)41存儲(chǔ)校驗(yàn)技術(shù):通過(guò)奇校驗(yàn)或偶校驗(yàn)發(fā)現(xiàn)過(guò)失,多應(yīng)用
22、用于效勞器專(zhuān)用內(nèi)存上方法:增加一個(gè)奇校驗(yàn)位或偶校驗(yàn),使得二進(jìn)制數(shù)據(jù)中1的個(gè)數(shù)總為奇數(shù)個(gè)或偶數(shù)個(gè)例:奇校驗(yàn),10位二進(jìn)制數(shù),增加一個(gè)位,共11位001100101100011001011,5個(gè)1100110110111001101101,7個(gè)1例:偶校驗(yàn),10位二進(jìn)制數(shù),增加一個(gè)位,共11位001100101110011001011,6個(gè)1100110110101001101101,6個(gè)13.2 主存儲(chǔ)器的組成2022/6/27北京大學(xué)423.3 存儲(chǔ)總線與數(shù)據(jù)傳輸指令和數(shù)據(jù)都通過(guò)存儲(chǔ)總線從主存向CPU傳遞存儲(chǔ)總線由并行排列的線路組成分三組數(shù)據(jù)總線:用于傳遞數(shù)據(jù)地址總線:用于傳遞主存儲(chǔ)器地址控制
23、總線:用于各種控制信息的傳遞,如讀、寫(xiě)等2022/6/27北京大學(xué)43CPU和主存儲(chǔ)器間的數(shù)據(jù)傳輸CPU和主存儲(chǔ)器之間通過(guò)控制總線、數(shù)據(jù)總線和地址總線的相互配合交換信息。CPU讀取主存儲(chǔ)器中的數(shù)據(jù)時(shí):首先把存儲(chǔ)單元地址送入地址總線,并通過(guò)控制總線發(fā)出一個(gè)“讀信號(hào)主存儲(chǔ)器接收到“讀信號(hào),根據(jù)地址總線上的地址信息,根據(jù)需要,把連續(xù)幾個(gè)存儲(chǔ)單元的數(shù)據(jù)讀出,送到數(shù)據(jù)總線上CPU從數(shù)據(jù)總線上獲得讀取的數(shù)據(jù)CPU把地址送出后,一定時(shí)間后數(shù)據(jù)總線才有數(shù)據(jù)。CPU寫(xiě)主存儲(chǔ)器的過(guò)程類(lèi)似。2022/6/27北京大學(xué)44總線的寬度總線數(shù)據(jù)傳遞都采用并行傳遞方式。數(shù)據(jù)總線的寬度一般和CPU的字長(zhǎng)相一致目前CPU一般采
24、用32位或64位的數(shù)據(jù)總線數(shù)據(jù)總線寬度決定了一次傳送數(shù)據(jù)量的大小CPU的地址總線寬度決定了主存儲(chǔ)器地址空間的大小16位地址64K;32位地址4G;64位地址天文數(shù)字總線可劃分為內(nèi)部總線和外部總線內(nèi)部總線(在北橋芯片組的控制下)負(fù)責(zé)主存儲(chǔ)器和CPU的地址、數(shù)據(jù)和指令傳輸,以及和AGP顯卡的高速數(shù)據(jù)交換外部總線(在南橋芯片組的控制下)負(fù)責(zé)主存儲(chǔ)器和音頻及外設(shè)的較慢的數(shù)據(jù)交換2022/6/27北京大學(xué)45中央處理器CPU內(nèi)存設(shè)備MEMORY輸入設(shè)備輸出設(shè)備內(nèi)部總線:數(shù)據(jù)總線、地址總線和控制總線 數(shù)據(jù)指令、地址和控制信號(hào)外部總線數(shù)據(jù)流3.3 存儲(chǔ)總線與數(shù)據(jù)傳輸4、指令系統(tǒng)2022/6/27北京大學(xué)47
25、4、指令系統(tǒng)指令program instruction是組成程序的根本單位。每一條指令用來(lái)規(guī)定CPU執(zhí)行指令應(yīng)該完成的工作運(yùn)算、或其它控制動(dòng)作,控制CPU其他局部執(zhí)行微操作,完成指令所規(guī)定的功能。 CPU的指令系統(tǒng)實(shí)際上是CPU芯片的硬件與使用它的軟件之間的一種嚴(yán)格的協(xié)議,反映了CPU能夠完成的全部功能。CPU的“指令系統(tǒng)規(guī)定了它所能執(zhí)行指令的全部類(lèi)別,規(guī)定了指令的編碼方式和每一類(lèi)指令所涉及的參數(shù)等。2022/6/27北京大學(xué)484、指令系統(tǒng)每一條指令用假設(shè)干字節(jié)的二進(jìn)制編碼表示,包括它要完成的動(dòng)作及其連帶參數(shù)。為了便于理解,我們將在下一講結(jié)合匯編語(yǔ)言來(lái)講指令系統(tǒng),并以匯編指令來(lái)介紹指令的分類(lèi)
26、:存儲(chǔ)訪問(wèn)指令算術(shù)運(yùn)算指令邏輯運(yùn)算指令條件判斷和分支轉(zhuǎn)移指令輸入輸出指令其他用于系統(tǒng)控制的指令5、程序的根本控制結(jié)構(gòu)2022/6/27北京大學(xué)505、程序的根本控制結(jié)構(gòu)程序(Program) 是由假設(shè)干條指令的順序排列組成,是為信息處理任務(wù)而予先編制的工作執(zhí)行方案。這種為某個(gè)處理任務(wù)而預(yù)先編制的指令的組合方法,通常稱(chēng)為算法(Algorithm),它用于表示問(wèn)題求解步驟。算法的特點(diǎn)通用性:合理的輸入產(chǎn)生正確的輸出有效性:有限的指令、可預(yù)期的執(zhí)行結(jié)果確定性:每一步動(dòng)作的下一步都是確定的有窮性:算法的執(zhí)行應(yīng)在有限步內(nèi)結(jié)束2022/6/27北京大學(xué)51三種程序控制結(jié)構(gòu)程序的指令組合有三種控制結(jié)構(gòu):1順
27、序結(jié)構(gòu):按指令自然順序執(zhí)行動(dòng)作1之后執(zhí)行動(dòng)作22分支結(jié)構(gòu):依判斷條件決定一條執(zhí)行路線分支結(jié)構(gòu)順序結(jié)構(gòu)2022/6/27北京大學(xué)52C語(yǔ)言例程:順序結(jié)構(gòu)#include / 我們的程序必須引用的一個(gè)頭文件int main() / 主函數(shù) int age; / 定義一個(gè)記錄年齡的變量 printf(Please input your age:n); / 1. 提示輸入你的年齡 scanf(%d, &age); / 2. 把輸入值保存在變量中 printf(Oh! your age is %d.n, age); / 3. 輸出你的年齡2022/6/27北京大學(xué)53C語(yǔ)言例程:分支結(jié)構(gòu)#include
28、 / 我們的程序必須引用的一個(gè)頭文件int main() / 主函數(shù) int age; / 定義一個(gè)記錄年齡的變量 printf(Please input your age:n); / 1. 提示輸入你的年齡 scanf(%d, &age); / 2. 把輸入值保存在變量中 if (age = 18) / 3. 判斷是否為成年人 printf(You are an adult. Welcome!n); / 3.1. 成年人可以進(jìn)入 else / 3.2. 非成年人不能進(jìn)網(wǎng)吧 printf(You are not an adult, you cant stay in the internet b
29、ar.n);2022/6/27北京大學(xué)54三種程序控制結(jié)構(gòu)程序的指令組合有三種控制結(jié)構(gòu):3循環(huán)結(jié)構(gòu):由循環(huán)條件和循環(huán)體兩局部組成2022/6/27北京大學(xué)55三種程序控制結(jié)構(gòu)三種根本控制結(jié)構(gòu)可相互嵌套使用,形成更為復(fù)雜的控制,完成各種復(fù)雜的工作求11000的平方和的例子開(kāi)始S0j1SS + j*jjj+1j1000打印S,結(jié)束YesNo2022/6/27北京大學(xué)56C語(yǔ)言例程:循環(huán)結(jié)構(gòu)#include / 我們的程序必須引用的一個(gè)頭文件int main() / 主函數(shù) int S = 0; / 1. 定義并初始化求和變量S int j = 1; / 2. 定義并初始化循環(huán)變量j do / 3.
30、 用循環(huán)結(jié)構(gòu)進(jìn)行計(jì)算 S = S + (j * j); / 3.1 把循環(huán)變量j的平方累積到變量S中 j = j + 1; / 3.2 讓循環(huán)變量j取下一個(gè)整數(shù)值 while (j =0,要求出在第幾年年末,這個(gè)點(diǎn)將被侵蝕。例如:給定X,Y坐標(biāo)為1.0,1.0,那么輸出:第1年年末。 x, yxy2022/6/27北京大學(xué)80 P238,例7.4 房地產(chǎn)問(wèn)題程序例如 3x, yxy2022/6/27北京大學(xué)81編程及調(diào)試過(guò)程啟動(dòng)VC創(chuàng)立新工程編輯源代碼編譯鏈接運(yùn)行:輸入/輸出7、編程網(wǎng)格環(huán)境介紹編程網(wǎng)格環(huán)境介紹編程作業(yè)、練習(xí)以及期終考試都將在這里進(jìn)行。編程網(wǎng)格: :/ 或者 /編程網(wǎng)格主頁(yè)先注冊(cè)一個(gè)用戶(hù)再登錄到編程網(wǎng)格1點(diǎn)擊進(jìn)入相應(yīng)老師的課程主頁(yè)2在編程網(wǎng)格中建立一個(gè)合法用戶(hù):在主頁(yè)中選擇“注冊(cè)一、用戶(hù)注冊(cè)編程網(wǎng)格中的課程主頁(yè)首次進(jìn)入課程主頁(yè),需要完成選課,才能進(jìn)入“作業(yè)/練習(xí)查看并提交題目確認(rèn)老師的名字正確成為一門(mén)課
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 山地城市歷史名園恢復(fù)性環(huán)境研究
- 個(gè)人藥店合同范例
- 通道門(mén)施工方案
- 養(yǎng)殖鴕鳥(niǎo)訂單合同范例
- 加工煤炭合同范本
- 公產(chǎn)房交易合同范例
- ppp框架合同范例
- 加盟店手藝轉(zhuǎn)讓合同范例
- 武漢城市街區(qū)對(duì)城市形象的建構(gòu)研究
- 企業(yè)轉(zhuǎn)移員工勞動(dòng)合同范例
- 2020-2024年五年高考語(yǔ)文真題分類(lèi)匯編專(zhuān)題04 古代詩(shī)歌鑒賞(解析版)
- 女神節(jié)花藝沙龍活動(dòng)
- 大劇院音視頻系統(tǒng)工程調(diào)試方案
- 社區(qū)商業(yè)招商與運(yùn)營(yíng)管理方案
- 人教PEP版(2024)三年級(jí)上冊(cè)英語(yǔ)Unit 6《Useful numbers》單元作業(yè)設(shè)計(jì)
- 魔發(fā)奇緣電影中英文對(duì)白
- 浙江省寧波市九校2023-2024學(xué)年高二下學(xué)期期末聯(lián)考數(shù)學(xué)試題2
- 事業(yè)單位公開(kāi)招聘分類(lèi)考試公共科目筆試考試大綱2022年版
- 8 歌曲 《郵遞員叔叔來(lái)了》課件(13張內(nèi)嵌視頻)
- 網(wǎng)絡(luò)數(shù)據(jù)安全風(fēng)險(xiǎn)治理與防護(hù)項(xiàng)目需求說(shuō)明
- GB/T 14020-2024氫化松香
評(píng)論
0/150
提交評(píng)論