freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第二章指令系統(tǒng)-文庫(kù)吧資料

2024-10-19 09:50本頁(yè)面
  

【正文】 機(jī) 型(生產(chǎn)年代)IBM370/168( 1973 )VAX11( 1978 )iAPX 432( 1982 )Dorado( 1978 )指令種類 208 303 222 270微程序容量 420K 480K 64K 136K指令長(zhǎng)度 1648 16456 6321 824采用的工藝 ECL MSI TTL MSI NMOS VLSI ECL MSI指令操作類型存儲(chǔ)器 存儲(chǔ)器存儲(chǔ)器 寄存器寄存器 寄存器存儲(chǔ)器 存儲(chǔ)器存儲(chǔ)器 寄存器寄存器 寄存器面向堆棧存儲(chǔ)器 存儲(chǔ)器面向堆棧Cache 容量 64KB 64KB 0 64KB1975年, IBM公司率先組織力量開始研究指令系統(tǒng)的合理性問題 1979年研制出世界上第一臺(tái)采用 RISC思想的計(jì)算機(jī) IBM 801 1986年, IBM正式推出采用 RISC體系結(jié)構(gòu)的工作站 IBM RT PC CISC指令系統(tǒng)存在的問題: 1979年, 美國(guó)加洲伯克利分校 David Patterson 提出: 1. 20%與 80%規(guī)律 在 CISC中,大約 20%的指令占據(jù)了 80%的處理機(jī)執(zhí)行時(shí)間。 程序調(diào)用和返回指令 本身可以不帶條件,也可以帶有條件 CALL 轉(zhuǎn)入子程序 RETURN 從子程序返回 CALL CC 當(dāng)條件 CC滿足時(shí)轉(zhuǎn)入子程序 RETURN CC 當(dāng)條件 CC滿足時(shí)從子程序返回 中斷控制指令: 開中斷、關(guān)中斷 改變屏蔽 中斷返回 自陷等 4. 輸入輸出指令 啟動(dòng)、停止、測(cè)試設(shè)備,數(shù)據(jù)輸入、輸出等 采用單一的直接尋址方式, 在多用戶或多任務(wù)環(huán)境下,輸入輸出指令屬于特權(quán)指令 5. 處理機(jī)控制和調(diào)試指令 處理機(jī)狀態(tài)切換指令, 處理機(jī)有多個(gè)狀態(tài),管態(tài)和用戶態(tài) 硬件和軟件的調(diào)試指令 硬件調(diào)試指令:開關(guān)狀態(tài)讀取、寄存器和主存單元的顯示等 軟件調(diào)試指令:斷點(diǎn)設(shè)置、跟蹤,自陷指令等 指令系統(tǒng)的優(yōu)化設(shè)計(jì) 優(yōu)化指令系統(tǒng)設(shè)計(jì)的 3個(gè)階段: CISC:復(fù)雜指令系統(tǒng) 60年代至 70年代中期 RISC:精簡(jiǎn)指令系統(tǒng) 70年代后期至現(xiàn)在 VLIW: 80年代初期至現(xiàn)在 關(guān)鍵在軟硬件的功能分配,系統(tǒng)的綜合性能 時(shí)間與空間;執(zhí)行、編譯、編寫時(shí)間。 地址個(gè)數(shù)太多時(shí),可以把其中的 1個(gè)或幾個(gè)地址隱含起來。如果 (Rd)=0轉(zhuǎn)移 循環(huán)控制指令 用 1條指令完成循環(huán)的控制 代替 3條指令的功能:運(yùn)算、比較和轉(zhuǎn)移。如果 (R1)=(R2)轉(zhuǎn)移 JAD EQ, Rd, Rs, ADR 。R←(R) 1,如果 R≠0 轉(zhuǎn)移 INB R ADR 。沒有溢出轉(zhuǎn)移 復(fù)合條件轉(zhuǎn)移指令 代替 2條指令,首先進(jìn)行運(yùn)算,并根據(jù)運(yùn)算的結(jié)果決定是否轉(zhuǎn)移 不需要條件碼,與高級(jí)語(yǔ)言一致。不帶符號(hào)小于等于轉(zhuǎn)移 BCC ADR 。小于等于轉(zhuǎn)移 BLSU ADR 。等于零轉(zhuǎn)移 BLS ADR 。 基本指令系統(tǒng) 通用計(jì)算機(jī)必須有5類基本指令 數(shù)據(jù)傳送類指令 運(yùn)算類指令 程序控制指令 輸入輸出指令 處理機(jī)控制和調(diào)試指令 1. 數(shù)據(jù)傳送類指令 由如下三個(gè)主要因素決定: (1)數(shù)據(jù)存儲(chǔ)設(shè)備 的種類 (2)數(shù)據(jù)單位 :字、字節(jié)、位、數(shù)據(jù)塊等 (3)采用的尋址方式 例如,考慮數(shù)據(jù)存儲(chǔ)設(shè)備的種類: 寄存器 ?寄存器 寄存器 ?主存儲(chǔ)器 寄存器 ?堆棧 主存儲(chǔ)器 ?寄存器 主存儲(chǔ)器 ?主存儲(chǔ)器 主存儲(chǔ)器 ?堆棧 堆棧 ?寄存器 堆棧 ?主存儲(chǔ)器 2. 運(yùn)算類指令 : 考慮四個(gè)因數(shù)的組合: 操作種類 : 加、減、乘、除、與、或、非、異或、比較、移位、檢索、轉(zhuǎn)換、匹配、清除、置位等 數(shù)據(jù)表示 : 定點(diǎn)、浮點(diǎn)、邏輯、十進(jìn)制、字符串、向量等 數(shù)據(jù)長(zhǎng)度 : 字、雙字、半字、字節(jié)、位、數(shù)據(jù)塊等 數(shù)據(jù)存儲(chǔ)設(shè)備 : 寄存器、主存儲(chǔ)器、堆棧等 例 P 104 以寄存器加法指令為例,一般設(shè)置如下幾種: 寄存器 寄存器型的 定點(diǎn)單字長(zhǎng)加法指令 寄存器 寄存器型的 定點(diǎn)雙字長(zhǎng)加法指令 寄存器 寄存器型的 定點(diǎn)半字加法指令 寄存器 寄存器型的 字節(jié)加法指令 寄存器 寄存器型的 浮點(diǎn)單字長(zhǎng)加法指令 寄存器 寄存器型的 浮點(diǎn)雙字長(zhǎng)加法指令 寄存器 寄存器型的 單字長(zhǎng)邏輯加法指令 寄存器 寄存器型的 定點(diǎn)向量加法指令 寄存器 寄存器型的 浮點(diǎn)向量加法指令 以移位指令為例: 需要組合以下三個(gè)因素: (1)移位方向: 左移 (L)、右移 (R) (2)移位種類: 算術(shù)移位 (A)、邏輯移位 (L)、 循環(huán)移位 (R) (3)移位長(zhǎng)度: 單字長(zhǎng) (S)、雙字長(zhǎng) (D) 組合起來共有: 3 2 2= 12種, 其中,邏輯左移與算術(shù)左移相同 一般機(jī)器中要設(shè)置 10條移位指令 一般機(jī)器中要設(shè)置 10條移位指令 SLAS 單字長(zhǎng)算術(shù)左移 SRAS 單字長(zhǎng)算術(shù)右移 SLLS(SRLS)單字長(zhǎng)邏輯左移 ,單字長(zhǎng)算術(shù)左移 SLRS 單字長(zhǎng)循環(huán)左移 SRRS 單字長(zhǎng)循環(huán)右移 SLAD 雙字長(zhǎng)算術(shù)左移 SRAD 雙字長(zhǎng)算術(shù)右移 SLLD(SRLD)雙字長(zhǎng)邏輯左移 ,雙字長(zhǎng)算術(shù)左移 SLRD 雙字長(zhǎng)循環(huán)左移 SRRD 雙字長(zhǎng)循環(huán)右移 3. 程序控制指令 有多種轉(zhuǎn)移指令 : 無(wú)條件轉(zhuǎn)移,條件轉(zhuǎn)移指令 調(diào)用與返回指令 循環(huán)控制指令 …… 轉(zhuǎn)移條件: 零 (Z)、正負(fù) (N)、進(jìn)位 (C)、溢出 (V)及其組合 由條件轉(zhuǎn)移指令之前的指令產(chǎn)生條件碼 由條件轉(zhuǎn)移指令本身產(chǎn)生轉(zhuǎn)移條件 多組條件碼 條件轉(zhuǎn)移指令舉例 一般條件轉(zhuǎn)移指令 條件碼由轉(zhuǎn)移指令之前的指令產(chǎn)生, 對(duì)指令流水線的影響小。 3. 高效率: 指令的執(zhí)行速度要快 指令的使用頻度要高 各類指令要有一定的比例 如:運(yùn)算類指令占 40%以上, 數(shù)據(jù)傳送類指令占 30%等。如:所有的寄存器同等對(duì)待。 ? R0的值永遠(yuǎn)是 0。 ? MIPS 有 32個(gè) 64位通用寄存器, R0,R1…,R31 。 編程容易、節(jié)省程序存儲(chǔ)量。 部分 RISC處理機(jī)也采用三地址指令。 ?如果強(qiáng)調(diào)硬件結(jié)構(gòu)簡(jiǎn)單,并且以連續(xù)運(yùn)算(如求累加和等)為主,宜采用一地址結(jié)構(gòu)。保存最后運(yùn)算結(jié)果 用不同地址個(gè)數(shù)指令編寫的程序 的存儲(chǔ)容量和執(zhí)行速度 地址數(shù)目 指令條數(shù) 訪存次數(shù) 程序存儲(chǔ)量 執(zhí)行速度 ( 訪存信息量 ) 三地址 5 20 5P + 15A = 65B 5P + 15A + 15D = 185B 二地址 7 26 7P + 14A = 63B 7P + 14A + 19D = 215B 一地址 9 18 9P + 9 A = 45B 9P + 9 A + 9 D = 117B 零地址 12 41 12P + 7A = 40B 12P + 7A + 29D = 272B 二地址 寄存器型 8 15 8P+7A+9R = 40B 8P+7A+9R+7D = 96B P 表 示操作碼長(zhǎng)度, A 表示地址碼長(zhǎng)度, D 表示數(shù)據(jù)長(zhǎng)度, R 表示通用寄存器的地址碼長(zhǎng)度, B 表示字節(jié)數(shù)。棧頂是分子運(yùn)算的結(jié)果 PUSH E PUSH F ADD DIV 。操作數(shù) b壓入堆棧 MUL 。保存最后運(yùn)算結(jié)果到 X中 65 ?用 0地址指令編寫程序: ab*c+def+/ PUSH A 。累加器中是分子運(yùn)算結(jié)果 DIV X 。保存分母運(yùn)算結(jié)果到 X中 LOAD A 。取一個(gè)操作數(shù)到累加器中 ADD F 。最后結(jié)果存入 X中 ?用一地址指令編寫的程序: LOAD E 。R2中存放分母運(yùn)算結(jié)果 DIV R1, R2 。操作數(shù) a取到寄存器 R1中 MUL R1, B ADD R1, C SUB R1, D 。Y中存放分母運(yùn)算結(jié)果 DIV X, Y 。X中存放分子運(yùn)算結(jié)果 MOVE Y, E 。最后結(jié)果在 X單元中 ?用普通二地址指令編寫的程序: MOVE X, A 。分子的計(jì)算結(jié)果在中 ADD Y, E, F 。X←(A) (B) ADD X, X, C 。 ?從根結(jié)點(diǎn)開始,沿箭頭所指方向?qū)ふ业竭_(dá)屬于該指令概率結(jié)點(diǎn)的最短路徑,把沿線所經(jīng)過的代碼排列起來就得到了這條指令的操作碼編碼。 ?最后得到的根結(jié)點(diǎn)的概率值為 1。 ?選取兩個(gè)概率最小的結(jié)點(diǎn)合并成一個(gè)概率值是二者之和的新結(jié)點(diǎn),并把這個(gè)新結(jié)點(diǎn)與其它還沒有合并的結(jié)點(diǎn)一起形成一個(gè)新的結(jié)點(diǎn)集合。已知各種操作碼在程序中出現(xiàn)的概率如下表,計(jì)算采用 Huffman編碼法的操作碼平均長(zhǎng)度,并計(jì)算固定長(zhǎng)操作碼和 Huffman操作碼的信息冗余量。程序執(zhí)行時(shí),用地址加法器將指令中的邏輯地址與基址寄存器中的主存起始地址相加即得物理地址。 必須有硬件支持,與變址尋址方式 方法 相同。在程序運(yùn)行前,裝入主存儲(chǔ)器的過程中集中一次完成地址變換,確定指令和數(shù)據(jù)在主存中的物理地址。數(shù)據(jù)傳送型指令 ? 主要優(yōu)點(diǎn):支持高級(jí)語(yǔ)言,有利與編譯程序,節(jié)省存儲(chǔ)空間,支持程序的嵌套和遞歸調(diào)用,支持中斷處理 ? 主要缺點(diǎn):運(yùn)算速度比較低,棧頂部分設(shè)計(jì)成一個(gè)高速的寄存器堆 ? 面向主存儲(chǔ)器的尋址方式 : 直接尋址、 間接 尋址 、變址 尋址 、 相對(duì)尋址 基址尋址、自動(dòng)變址、 … OPC M OPC M, M OPC M, M, M 定位方式 程序的主存物理地址在什么時(shí)間確定?采用什么方式來實(shí)現(xiàn)? 程序需要定位的主要原因: 程序的獨(dú)立性 程序的模塊化設(shè)計(jì) 表、隊(duì)列、堆棧等數(shù)據(jù)結(jié)構(gòu)在程序運(yùn)行過程中,其大小往往是變化的 有些程序本身很大,大于分配給它的主存物理空間 ? 主要的定位方式 ?直接定位方式: 在程序裝入主存儲(chǔ)器之前,程序中的指令和數(shù)據(jù)的主存物理就已經(jīng)確定了的稱為直接定位方式。 尋址方式 尋找操作數(shù)及數(shù)據(jù)存放地址的方法 1. 尋址方式的設(shè)計(jì)思想 ? 立即數(shù)尋址方式 用于數(shù)據(jù)比較短,且為源操作數(shù)的場(chǎng)合 ? 面向寄存器的尋址方式 OPC R OPC R, R OPC R, R, R OPC R, M 寄存器尋址 P83 ? 主要優(yōu)點(diǎn): 指令字長(zhǎng)短(寄存器數(shù)量相對(duì)要少),指令執(zhí)行速度快,支持向量和矩陣等運(yùn)算 ? 主要缺點(diǎn): 不利于優(yōu)化編譯,現(xiàn)場(chǎng)切換困難 ,硬件復(fù)雜 面向堆棧的尋址方式 P85: OPC 。 ? 低位交叉編址 : 主要是提高存儲(chǔ)器速度。 ? 一個(gè)零地址空間 : 最低端是通用寄存器,最高端是輸入輸出設(shè)備,中間為主存儲(chǔ)器 ? 隱含編址方式: 堆棧、 Cache等 3. 并行存儲(chǔ)器的編址技術(shù) ? 高位交叉編址 : 主要用來擴(kuò)大存儲(chǔ)器容量。 0 7 8 1 5 1 6 2 3 2 4 3 1 3 2 3 9 4 0 4 7 4 8 5 5 5 6 6 3 字節(jié) 000 001 010 011 100 101 110 111 (a) 從左邊開始編址 6 3 5 6 5 5 4 8 4 7 4 0 3 9 3 2 3 1 2 4 2 3 1 6 1 5 8 7 0 字節(jié) 111 110 101 100 011 010 001 000 (b) 從右邊開始編址 一個(gè)存儲(chǔ)字的兩種編址方式 1234 5678 p uter 31 0 3 1 0 3 1 0 78 56 34 12 p m o c r
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1