第2章數(shù)據(jù)操控.ppt_第1頁
第2章數(shù)據(jù)操控.ppt_第2頁
第2章數(shù)據(jù)操控.ppt_第3頁
第2章數(shù)據(jù)操控.ppt_第4頁
第2章數(shù)據(jù)操控.ppt_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、計算機科學概論,第2章 數(shù)據(jù)操控 授課人 陳思亮教授,第2章 數(shù)據(jù)操控,初步了解計算機的體系結構; 了解機器語言、指令、程序及程序的執(zhí)行。,目錄,2.1 計算機體系結構 2.2 機器語言 2.3 程序執(zhí)行 2.4 算術/邏輯指令 本章作業(yè),2.1 計算機體系結構,一、中央處理器(central processing unit,縮寫為 CPU ) 是計算機控制數(shù)據(jù)操縱的電路。 現(xiàn)在的CPU體積很小,其引腳插在計算機主電路板(主板 motherboard)上。,2.1 計算機體系結構,CPU由兩部分組成: 算術/邏輯單元和控制單元。 1、算術/邏輯單元(arithmetic/logic unit)

2、 包含執(zhí)行數(shù)據(jù)操作(如加法和減法運算) 2、控制單元(control unit) 包括協(xié)調(diào)計算機活動的電路。,2.1 計算機體系結構,CPU還包含類似于主存儲器單元的單元,稱為寄存器(register),分為: 通用寄存器(general-purpose register)和 專用寄存器(special-purpose register)兩類。 通用寄存器用于存儲由CPU正在操縱的數(shù)據(jù)。它們存儲算術/邏輯單元電路的輸入值以及該部件所產(chǎn)生的結果。具體操作在控制單元控制下進行。 專用寄存器將在2.3節(jié)討論。,2.1 計算機體系結構,二、總線(bus) 是計算機中各部件之間傳遞信息的基本通道。例如C

3、PU和主存儲器就是通過總線連接的。,2.1 計算機體系結構,主存儲器中的值相加的過程如下: 步驟1:從存儲器取出一個要加的值放入一個寄存器中。 步驟2:從存儲器中取出另一個要加的值放入另一個寄存器中。 步驟3:激活加法電路,以步驟1和步驟2所用的寄存器作為輸入,用另一個寄存器存放相加的結果。 步驟4:將結果存入存儲器。 步驟5:停止。,2.1 計算機體系結構,三、高速緩沖存儲器(Cache memory) 三種存儲設備功能的比較: 寄存器 存儲可立即進行運算的數(shù)據(jù) 主存儲器 存儲即將使用的數(shù)據(jù) 海量存儲器 存儲最近也許不會使用的數(shù)據(jù) 增加一個附加的存儲器高速緩沖存儲器,位于 CPU 內(nèi)部的高速

4、存儲器的一部分,保存主存儲器中當前最重要的那部分內(nèi)容的一個副本,使之不會被與主存儲器的通信所延遲,使 CPU可較快地執(zhí)行其機器周期。,2.1 計算機體系結構,四、存儲程序的概念(stored-program concept) 將計算機程序存儲在主存儲器中的思想稱為存儲程序概念。 這已經(jīng)成為今天所使用的標準方法。這樣程序可以自己修改自己,即只需要改變計算機存儲器中的內(nèi)容,而不必對控制單元進行重新布線。,2.2 機器語言,為應用存儲程序概念,CPU設計成可以識別二進制模式和指令。這組指令以及編碼系統(tǒng)稱為機器語言(machine language) 用語言表達的指令稱為機器級指令或機器指令(mach

5、ine instruction)。,2.2.1 指令系統(tǒng),兩種CPU體系結構: 精簡指令集計算機(reduced instruction computer,RISC) 優(yōu)點:計算機效率高且速度快 如:英特爾公司的奔騰系列 復雜指令集計算機(complex instruction computer,CISC) 優(yōu)點:容易編程 如:蘋果公司、IBM和摩托羅拉公司聯(lián)合開發(fā)的 Power PC系列,2.2.1 指令系統(tǒng),指令的分類 數(shù)據(jù)傳輸類 關于傳輸(trnsfer)、移動(move)、復制(copy)或克隆(clone)的說明 CPU和主存儲器之間的數(shù)據(jù)傳輸有專門的術語,LOAD(由存儲單元填充通

6、用寄存器的請求) STORE(寄存器內(nèi)容傳輸給存儲單元的請求) CPU-主存儲器環(huán)境 之外的設備通信的指令,稱為I/O指令。,2.2.1 指令系統(tǒng),指令的分類 算術/邏輯類 算術運算 邏輯運算 移位(SHIFT)運算或 循環(huán)移位(ROTATE)運算 控制類 JUMP(轉移)、BRANCH(分支) 無條件轉移(unconditional jump)、條件轉移(condional jump),2.2.2 一種演示用的機器語言,機器指令編碼形式: 包括兩部分 操作碼(operation code, op-code) 指明該指令要求的什么基本運算,如存放STORE、位移SHIFT、異或XOR和轉移JU

7、MP 操作數(shù)(operand) 提供關于操作碼指定的運算的更詳細的 信息。 定長指令(2字節(jié)),每執(zhí)行一條指令,程序計數(shù)器累加2。 變長指令。CISC機器的指令長度可變。,符號說明: R、S、T 為十六進制數(shù)字,表示寄存器號 (R)、(S)、(T)分別表示寄存器R、S、T的位模式 X、Y為十六進制數(shù)字,XY表示地址 (XY)表示地址XY的位模式,假定相加的數(shù)值以二進制補碼記數(shù)法形式存儲在地址6C和6D中,其相加的結果存放在地址6E的存儲單元里。,2.3 程序執(zhí)行,控制單元 指令寄存器(instruction register) 用于存儲正在執(zhí)行的指令 程序計數(shù)器(program counter

8、) 記錄下一條個待執(zhí)行指令的地址(跟蹤程序執(zhí)行到什么地方),2.3 程序執(zhí)行,機器周期(machine cycle) 計算機完成執(zhí)行一條指令的時間。 機器周期分三個階段: 取指:根據(jù)程序計數(shù)器規(guī)定的地址從存儲器中取下一條指令,然后增加程序計數(shù)器的值。 譯碼:對指令寄存器中的位模式進行譯碼。 執(zhí)行:實現(xiàn)指令寄存器里指令所規(guī)定的動作。 注意轉移JUMP指令的特殊性。,2.3 程序執(zhí)行,2.3.1 程序執(zhí)行的例子,機器周期取指階段的操作,分兩步。第一步:,第二步:,地址 內(nèi)容 A01A A1A2 A22B A3A2 A49C A5AB A63C A700 A8C0 A900,程序運行舉例1: 啟動時

9、程序計數(shù)器:A0 問題: 1. 當機器停止時,地址為A0的存儲單元有什么? 2. 當機器停止時,程序計數(shù)器中會是什么位模式?,1AA2,2B,A2,A2,A0,2BA2,A4,9CAB,A6,89,3CA0,A8,C000,1A,89,停機!,2B = 00101011,A2 = 10100010,XOR 10001001 8 9,AA,地址內(nèi)容 2012 2120 2232 2330 24B0 2521 2620 27C0 2800,程序運行舉例2: 啟動時程序計數(shù)器:20 問題: 當機器停止時,寄存器0、1和2中是什么位模式? 當機器停止時,地址為30的存儲單元中是什么位模式? 當機器停止

10、時,地址為B0的存儲單元中是什么位模式?,地址 內(nèi)容 20 12 2120 2232 2330 24B0 2521 2620 27C0 2800,地址 指令 功能 20 1220 將地址20的內(nèi)容12存入寄存器2, 即(20) = 122 22 3230 將寄存器2的內(nèi)容存入地址30, 即(2) = 12 30 24 B021 因為(R)= (0),故JUMP到地址21的存儲單元中的指令 21 2032 將數(shù)32存入寄存器0,即32 0 23 30B0 將寄存器0的內(nèi)容存入B0,即(0) = 32 B0 25 2120 將數(shù)20 的內(nèi)容存入寄存器1,即 20 1 27 C000 停機,30 1

11、2,B0 32,當機器停止時: 寄存器0、1、2中的位模式是 32,20,12 地址為30的存儲單元中位模式是 12 地址為B0的存儲單元中位模式是 32,寄存器0 32,寄存器1 20,寄存器2 12,時鐘(clock),生成用于協(xié)調(diào)計算機活動的脈沖單位為赫茲(縮寫為Hz)。 不同的CPU設計在一個時鐘周期里完成的工作量是不同的。因此單單用時鐘速度比較不同CPU的計算機的速度沒有太大的意義。 基準測試(benchmark),指比較不同計算機時,讓他們執(zhí)行同樣的程序(稱為基準),然后比較他們的性能。通過選擇代表不同類型應用的基準,得到對各類市場有意義的結果。,2.3.2 程序與數(shù)據(jù),程序和數(shù)據(jù)

12、在計算機的主存儲器中都是以0和1編碼的,即在計算機的主存儲器中數(shù)據(jù)和程序是不區(qū)分的。 問題: 展現(xiàn)了計算機的學習能力(進行自我修正) 可編寫和執(zhí)行其他程序,解決自身所遇到的問題,2.4 算術/邏輯指令,2.4.1 邏輯運算 AND運算(指令操作碼8) 對操作數(shù)進行按位與運算 P63 屏蔽(masking)與掩碼(mask),掩碼操作數(shù)決定另一個操作數(shù)的哪個部分影響結果。如對IP地址用掩碼取出其相應的部分 可用于復制一個串的一部分 OR運算(指令操作碼7) 與AND運算類似。(只是按位或運算) XOR運算(指令操作碼9) 用于形成一組位串的反碼。(只是按位異或運算),2.4 算術/邏輯指令,2.4.2 循環(huán)移位及移位運算 循環(huán)移位(circular shift或rotation),在右移時,將右側移出的位放置在左端的空位上。 邏輯移位(logical shift),丟棄移出邊界的位,并用0填充空位。 算術位移(arithmetic shift)保留符號位不變的位移。 向左移位可以用2乘以二進制補碼表示。除2運算可以通過二進制右移來完成。要注意一定要小心保留符號位,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論