![計算機系統(tǒng)結(jié)構(gòu)(2012年春)----指令集設計:基礎知識_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-12/2/18927869-d6e6-44ef-baa1-31fc4c9e4d46/18927869-d6e6-44ef-baa1-31fc4c9e4d461.gif)
![計算機系統(tǒng)結(jié)構(gòu)(2012年春)----指令集設計:基礎知識_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-12/2/18927869-d6e6-44ef-baa1-31fc4c9e4d46/18927869-d6e6-44ef-baa1-31fc4c9e4d462.gif)
![計算機系統(tǒng)結(jié)構(gòu)(2012年春)----指令集設計:基礎知識_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-12/2/18927869-d6e6-44ef-baa1-31fc4c9e4d46/18927869-d6e6-44ef-baa1-31fc4c9e4d463.gif)
![計算機系統(tǒng)結(jié)構(gòu)(2012年春)----指令集設計:基礎知識_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-12/2/18927869-d6e6-44ef-baa1-31fc4c9e4d46/18927869-d6e6-44ef-baa1-31fc4c9e4d464.gif)
![計算機系統(tǒng)結(jié)構(gòu)(2012年春)----指令集設計:基礎知識_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-12/2/18927869-d6e6-44ef-baa1-31fc4c9e4d46/18927869-d6e6-44ef-baa1-31fc4c9e4d465.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、課程編號:13041000山東大學軟件學院 戴鴻君山東大學計算機學院 戴鴻君 課程編號:13041000山東大學軟件學院 戴鴻君數(shù)據(jù)表示cisc與riscli-2.1,li-2.2,li-2.4pa-b.2, pa-b.32021-12-2課程編號:13041000山東大學軟件學院 戴鴻君數(shù)據(jù)表示與數(shù)據(jù)結(jié)構(gòu) 高級數(shù)據(jù)表示 浮點數(shù)尾數(shù)基值大小和下溢處理方法的選擇(選講)2021-12-課程編號:13041000山東大學軟件學院 戴鴻君定義:機器硬件能直接識別和引用的數(shù)據(jù)類型。條件:相應的運算指令和運算硬件(處理部件)。分類:基本數(shù)據(jù)表示、高級數(shù)據(jù)表示、自定義數(shù)據(jù)表示。目標: 縮小高級語言和機器語
2、言間的語義差別 提高性能/價格比 節(jié)省處理時間和存儲空間實現(xiàn):最小的存儲空間、最簡單的存取算法。2021-12-課程編號:13041000山東大學軟件學院 戴鴻君數(shù)據(jù)表示:由硬件實現(xiàn)的數(shù)據(jù)類型數(shù)據(jù)結(jié)構(gòu):面向計算機系統(tǒng)軟件、面向應用領域所需處理的數(shù)據(jù)類型。由軟件實現(xiàn)的數(shù)據(jù)類型。 目標:最大限度滿足應用要求、最簡化的方法實現(xiàn)。 實現(xiàn):通過數(shù)據(jù)表示和軟件映象相結(jié)合方法實現(xiàn)。數(shù)據(jù)表示是數(shù)據(jù)類型的子集。數(shù)據(jù)表示的確定實質(zhì)上是軟、硬件的取舍問題數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)表示是軟、硬件的界面 2021-12-課程編號:13041000山東大學軟件學院 戴鴻君定義:具有一組值的集合,且定義了作用于該集合的操作集。 目的:
3、防止不同類型數(shù)據(jù)間的誤操作。 分類:基本類型、結(jié)構(gòu)類型?;緮?shù)據(jù)類型 內(nèi)容:二進制位、二進制位串、整數(shù)、十進制數(shù)、浮點數(shù)、字符、布爾數(shù)等。結(jié)構(gòu)數(shù)據(jù)類型定義:由一組相互有關的數(shù)據(jù)元素復合而成的數(shù)據(jù)類型。 分類:系統(tǒng)數(shù)據(jù)類型、用戶自定義數(shù)據(jù)類型 內(nèi)容:數(shù)組、字符串、向量、堆棧、隊列、記錄等2021-12-課程編號:13041000山東大學軟件學院 戴鴻君數(shù)值的表達 進位制數(shù)、負數(shù)、小數(shù)點的方式 字符和符號的表達 ascii碼 數(shù)據(jù)單位的表達 字:邏輯單位,一條指令處理的數(shù)據(jù)單位。 字節(jié)、半字、字、雙字 數(shù)據(jù)的屬性 類型、存放的位置、對數(shù)據(jù)的約束 2021-12-課程編號:13041000山東大學軟
4、件學院 戴鴻君定點數(shù)據(jù)表示 用定點數(shù)表示浮點數(shù) 不方便而低效 50年代提出變址操作,為向量、陣列提供方便。 用循環(huán)遍歷向量和陣列可變長字符串數(shù)據(jù)表示 支持串數(shù)據(jù)結(jié)構(gòu)的實現(xiàn) 用于輸入、輸出、事務處理和編譯2021-12-課程編號:13041000山東大學軟件學院 戴鴻君自定義數(shù)據(jù)表示(self_defining) 帶標識符的數(shù)據(jù)表示 數(shù)據(jù)描述符 向量數(shù)組數(shù)據(jù)表示 堆棧數(shù)據(jù)表示2021-12-課程編號:13041000山東大學軟件學院 戴鴻君 主要用于指明數(shù)據(jù)類型(如二進制整數(shù)、十進制整數(shù)等,也可用于指明及其內(nèi)部所用信息的各種類型。 對高級程序員透明。 類型標志數(shù)據(jù)值2021-12-課程編號:13
5、041000山東大學軟件學院 戴鴻君優(yōu)點:簡化指令系統(tǒng)和程序設計簡化編譯程序便于一致性校驗能由硬件自動完成數(shù)據(jù)類型的變換支持數(shù)據(jù)庫系統(tǒng)的實現(xiàn)與數(shù)據(jù)類型無關的要求為軟件調(diào)試和應用軟件開發(fā)提供支持; 缺點:n使程序所占用的主存空間增加(如下圖)n降低指令的執(zhí)行速度;2021-12-課程編號:13041000山東大學軟件學院 戴鴻君ab采用標識符數(shù)據(jù)字增長不采用標識符數(shù)據(jù)(少)指令(多)采用標識符指令字縮短通常有面積b面積a2021-12-課程編號:13041000山東大學軟件學院 戴鴻君101各種標識符長度地址000數(shù)據(jù)描述符 數(shù)據(jù)目的:描述復雜和多維的結(jié)構(gòu)類型。2021-12-課程編號:1304
6、1000山東大學軟件學院 戴鴻君標識符是和每一個數(shù)據(jù)相連的,合存在一個存儲單元中,描述單個數(shù)據(jù)的類型特征。 描述符是和數(shù)據(jù)分開存放的,專門用來描述所要訪問的數(shù)據(jù)是整塊數(shù)據(jù)還是單個數(shù)據(jù),訪問該數(shù)據(jù)塊或數(shù)據(jù)元素需要的地址以及其他特征信息等。 2021-12-課程編號:13041000山東大學軟件學院 戴鴻君實現(xiàn)陣列數(shù)據(jù)的索引比變址方法實現(xiàn)的好,而且能檢查程序設計中陣列越界錯誤。 為向量、數(shù)組數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)提供一定的支持,有利于簡化編譯中的代碼生成。工作過程:如下圖2021-12-課程編號:13041000山東大學軟件學院 戴鴻君010000000010010010xy操作碼指令描述符描述符地址生成
7、邏輯(數(shù)據(jù))(數(shù)據(jù))數(shù)據(jù)塊數(shù)據(jù)塊主存儲器2021-12-1013101410141014000a11000a12000a13000a14000a21000a22000a23000a24000a31000a32000a33000a343433323124232221141312114*3aaaaaaaaaaaaa二維陣列2021-12-課程編號:13041000山東大學軟件學院 戴鴻君有利于編譯和子程序調(diào)用。 堆棧機器:具有堆棧數(shù)據(jù)表示的機器。有若干高速寄存器組成的硬件堆棧,并附加控制電路讓它與主存中的堆棧區(qū)在邏輯上組成一個整體,使堆棧的訪問速度是寄存器的,堆棧的容量是主存的;有很豐富的堆棧操作
8、類指令(數(shù)十條)且功能很強,直接可對堆棧中的數(shù)據(jù)進行各種運算和處理;2021-12-課程編號:13041000山東大學軟件學院 戴鴻君有力地支持高級語言程序的編譯;算術(shù)賦值表達式 f=a*b+c/(d-e) 逆波蘭表達式 ab*cde-/+有力地支持子程序的嵌套和遞歸調(diào)用。 減少大量輔助性工作 多使用零地址指令 存儲效率高2021-12-課程編號:13041000山東大學軟件學院 戴鴻君二進制的定點數(shù) 符號數(shù)值、反碼、補碼浮點數(shù)數(shù)據(jù)表示 ieee標準754 1985年 提出 三部分:符號位、指數(shù)、尾數(shù)浮點數(shù)尾數(shù)基值的選擇浮點數(shù)尾數(shù)下溢處理方法 2021-12-課程編號:13041000山東大學
9、軟件學院 戴鴻君william kahan 加州大學伯克利分校數(shù)學系教授 幫助intel公司設計了8087浮點處理器 1989年圖靈獎this standard defines a family of commercially feasible ways for new systems to perform binary floating-point arithmetic2021-12-21課程編號:13041000山東大學軟件學院 戴鴻君若e=0且m=0,n為0若e=0且m0,n=(-1)s2-126 (0.m),非規(guī)格化數(shù);若1e254,n=(-1)s2e-127 (1.m),規(guī)格化數(shù);若
10、e=255且m 0,n=nan(非數(shù)值);若e=255且m = 0,n= (-1)s (無窮大)2021-12-課程編號:13041000山東大學軟件學院 戴鴻君000110110000:000:111:011:1x處理結(jié)果恒置“1”法000110110000:000:111:011:1x處理結(jié)果截斷法000110110000:000:111:011:1x處理結(jié)果舍入法000110110000:000:111:011:1x處理結(jié)果查表舍入法2021-12-課程編號:13041000山東大學軟件學院 戴鴻君尋址方式:是指令按什么方式尋找(訪問)到所需的操作數(shù)或信息的。尋址方式分析 邏輯地址與主存
11、物理地址 2021-12-課程編號:13041000山東大學軟件學院 戴鴻君面向主存:主要訪問內(nèi)存,少量訪問寄存器面向通用寄存器:多數(shù)在寄存器,少量在內(nèi)存面向堆棧:主要在堆棧,可減輕編譯負擔 2021-12-課程編號:13041000山東大學軟件學院 戴鴻君尋址方式的種類 立即尋址、直接尋址、間接尋址、相對尋址、變址尋址、寄存器尋址 尋址方式在指令中的指明方式 操作碼占用位:djs200 地址碼設置尋址方式字段:vax-11 尋址靈活、操作碼短 2021-12-課程編號:13041000山東大學軟件學院 戴鴻君邏輯地址:程序員編寫程序時使用的地址。物理地址:程序在主存中的實際地址。 早期,二者
12、一致一般來講,邏輯地址的空間大于物理地址的空間。 因此,映射實際上是壓縮。2021-12-課程編號:13041000山東大學軟件學院 戴鴻君靜態(tài)再定位:用軟件方法把目標程序的邏輯地址變換成物理地址,而在程序的執(zhí)行過程中,物理地址不再改變。動態(tài)再定位:在執(zhí)行每條指令時才形成訪存物理地址的方法。通過基址尋址。2021-12-課程編號:13041000山東大學軟件學院 戴鴻君變址尋址:支持向量、數(shù)組,實現(xiàn)循環(huán);基址尋址:支持邏輯地址到物理地址的變換,實現(xiàn)動態(tài)再定位;存儲保護:設置多對上、下界寄存器。2021-12-課程編號:13041000山東大學軟件學院 戴鴻君信息在存儲器中按整數(shù)邊界存儲的概念
13、讓任何時候所需的信息都只用一個存儲周期訪問到,要求信息在主存中存放的地址必須使該信息寬度的整數(shù)倍。即 字節(jié)信息地址:xxxxx 半字信息地址:xxxx0 單字信息地址:xxx00 雙字信息地址:xx000 保證訪存速度 造成浪費2021-12-課程編號:13041000山東大學軟件學院 戴鴻君字字單 字單字雙半字節(jié)8個字節(jié)主存寬度單 字單 字雙 字字節(jié)浪費半字浪 費8個字節(jié)主存寬度2021-12-2021-12-32課程編號:13041000山東大學軟件學院 戴鴻君堆棧型累加器型存儲器-寄存器型寄存器-寄存器型2021-12-332021-12-342021-12-35課程編號:1304100
14、0山東大學軟件學院 戴鴻君如果將一個32位的整數(shù)0 x12345678存放到一個整型變量(int)中,這個整型變量采用大端或者小端模式在內(nèi)存中的存儲由下表所示。地址偏移 大端模式 小端模式 0 x00 12(op0) 78(op3) 0 x01 34(op1) 56(op2) 0 x02 56(op2) 34(op1) 0 x03 78(op3) 12(op0)2021-12-362021-12-37課程編號:13041000山東大學軟件學院 戴鴻君精簡指令系統(tǒng)思想的提出 ibm公司的john cocke設計一個電話交換系統(tǒng)的控制器,1979年研制出32位的ibm 801 小型計算機,120條
15、指令,10mips(1千萬條指令/秒)。 1979年,美國加州大學伯克利分校david patterson研究小組開始研究risc系統(tǒng)。 1981年patterson等人研制了32位risc i微處理器,共31種指令,3種數(shù)據(jù)類型,2種尋址方式;研制周期10個月,比當時最先進的mc68000和z8002快3至4倍; 1983年又研制了risc ii,指令種類擴充到39種,單一的變址尋址方式,通用寄存器138個課程編號:13041000山東大學軟件學院 戴鴻君指令系統(tǒng)龐大,指令功能復雜,指令格式、尋址方式多;絕大多數(shù)指令需多個機器周期完成;各種指令都可訪問存儲器;采用微程序控制;有專用寄存器,少
16、量;難以用優(yōu)化編譯技術(shù)生成高效的目標代碼程序;課程編號:13041000山東大學軟件學院 戴鴻君指令系統(tǒng)龐大,指令功能復雜,指令格式、尋址方式多;執(zhí)行速度慢;難以優(yōu)化編譯,編譯程序復雜;80%的指令在20%的運行時間使用;無法并行;無法兼容; 課程編號:13041000山東大學軟件學院 戴鴻君cisc指令系統(tǒng)存在的問題: 20與80規(guī)律 cisc中,大約20的指令占據(jù)了80的處理機時間。其余80指令:使用頻度只占20的處理機運行時間 vlsi技術(shù)的發(fā)展引起的問題 vlsi工藝要求規(guī)整性,risc正好適應了vlsi工藝的要求 主存與控存的速度相當,簡單指令沒有必要用微程序?qū)崿F(xiàn),復雜指令用微程序?qū)?/p>
17、現(xiàn)與用簡單指令組成的子程序?qū)崿F(xiàn)沒有多大區(qū)別;由于vlsi的集成度迅速提高,使得生產(chǎn)單芯片處理機成為可能。課程編號:13041000山東大學軟件學院 戴鴻君 軟硬件的功能分配問題 復雜的指令使指令的執(zhí)行周期大大加長一般cisc處理機的指令平均執(zhí)行周期都在4以上,有些在10以上 cisc增強了指令系統(tǒng)功能,簡化了軟件,但硬件復雜了,設計周期加長。課程編號:13041000山東大學軟件學院 戴鴻君程序執(zhí)行時間的計算公式: p = i cpi t 其中: p是執(zhí)行這個程序所使用的總的時間; i是這個程序所需執(zhí)行的總的指令條數(shù); cpi 是每條指令執(zhí)行的平均周期數(shù) t是一個周期的時間長度。risc的速度
18、要比cisc快3倍左右,關鍵是risc的cpi減小了課程編號:13041000山東大學軟件學院 戴鴻君硬件方面:采用硬布線控制邏輯,減少指令和尋址方式的種類,使用固定的指令格式,采用load/store結(jié)構(gòu),指令執(zhí)行過程中設置多級流水線等。軟件方面:十分強調(diào)優(yōu)化編譯技術(shù)的作用risc設計思想也可以用于cisc中類型cisc指令條數(shù)i指令平均周期數(shù)cpi周期時間t121533ns5nsrisc1.31.41.11.410ns2ns課程編號:13041000山東大學軟件學院 戴鴻君例如:intel公司的80 x86處理機的cpi在不斷縮小8088的cpi大于2080286的cpi大約是5.5803
19、86的cpi進一步減小到4左右80486的cpi已經(jīng)接近2pentium處理機的cpi已經(jīng)與risc十分接近 目前,超標量、超流水線處理機的cpi已經(jīng)達到0.5,實際上用ipc (instruction per cycle)更確切。課程編號:13041000山東大學軟件學院 戴鴻君90年代初,ieee的michael slater對risc定義的描述: risc為使流水線高效率執(zhí)行,應具有: 簡單而統(tǒng)一格式的指令譯碼 大部分指令可以單周期執(zhí)行完成 僅load和store指令可以訪問存儲器 簡單的尋址方式 采用延遲轉(zhuǎn)移技術(shù) 采用load延遲技術(shù) risc為使優(yōu)化編譯器便于生成優(yōu)化代碼,應具有:
20、三地址指令格式、較多的寄存器、對稱的指令格式課程編號:13041000山東大學軟件學院 戴鴻君使用頻度很高的指令(精簡指令條數(shù))大大減少尋址方式(指令字等長)所有指令在一個機器周期完成擴大通用寄存器個數(shù)采用硬聯(lián)控制實現(xiàn),提高速度通過精簡指令和優(yōu)化設計編譯程序,以簡單有效的方式支持高級語言 課程編號:13041000山東大學軟件學院 戴鴻君功 能ciscrisc指令系統(tǒng)復雜、龐大簡單、精確指令條數(shù)200444指令字長不固定32bit可訪存指令不加限制只有l(wèi)oad/store各種指令使用頻率相差太大相差不大各種指令執(zhí)行時間相差太大絕大多數(shù)一周期完成優(yōu)化編譯系統(tǒng)很難較容易程序源代碼長度短長控制邏輯實
21、現(xiàn)方式絕大多數(shù)微程序控制絕大多數(shù)為硬連線控制課程編號:13041000山東大學軟件學院 戴鴻君dec公司 dec alpha 21064,21066, 21164 ,21264mips公司(sgi公司) r3000,r4000,r8000,r10000,r12000, rt5ibm, motorola ,apple powerpc 601,602,603,603e,604,615,620,630,640 power3、power4、power5hp公司 pa-risc8000sun公司 sun sparc microsparc, supersparc,ultrasparc課程編號:130410
22、00山東大學軟件學院 戴鴻君采用risc后的好處 簡化指令系統(tǒng)設計 提高機器的執(zhí)行速度和效率 降低設計成本,提高系統(tǒng)可靠性 提供直接支持高級語言的能力,簡化編譯程序的設計 risc的不足 指令少,加重匯編程序員的負擔 浮點運算和虛擬存儲器支持不足 編譯程序難寫 課程編號:13041000山東大學軟件學院 戴鴻君羅伯特巴登 b5000兩個操作數(shù)放在堆棧中 執(zhí)行結(jié)果自動送入堆棧 指令中不需要地址部分。 指令中需要相對指針的地址即可特點 存儲空間節(jié)省(省掉了指令的地址部分) 程序緊湊(去掉了所有中間結(jié)果的存取指令)2021-12-51課程編號:13041000山東大學軟件學院 戴鴻君(a+b)*(c
23、+d)轉(zhuǎn)換為ab+cd+*d+ 入棧和出棧就可以搞定任何普通表達式的運算。運算方式如下: 當前字符為變量或者為數(shù)字,則壓棧,如果是運算符,則將棧頂兩個元素彈出作相應運算,結(jié)果再入棧,最后當表達式掃描完后,棧里的就是結(jié)果。2021-12-52課程編號:13041000山東大學軟件學院 戴鴻君轉(zhuǎn)換過程包括用下面的算法讀入中綴表達式的操作數(shù)、操作符和括號: 1. 初始化一個空堆棧,將結(jié)果字符串變量置空。 2. 從左到右讀入中綴表達式,每次一個字符。 3. 如果字符是操作數(shù),將它添加到結(jié)果字符串。 4. 如果字符是個操作符,彈出(pop)操作符,直至遇見開括號(opening parenthesis)、優(yōu)先級較低的操作符或者同一優(yōu)先級的右結(jié)合符號。把這個操作符壓入(push)堆棧。 5. 如果字符是個開括號,把它壓入堆棧。 6. 如果字符是個閉括號(closing parenthesis),在遇見開括號前,彈出所有操作符
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2 臘八粥 說課稿-2024-2025學年統(tǒng)編版語文六年級下冊001
- 2024年五年級數(shù)學上冊 3 小數(shù)除法7課時 循環(huán)小數(shù)配套說課稿 新人教版
- 2025工礦產(chǎn)品買賣合同
- 2025同村土地承包合同
- 2025學校食品供貨合同簡單版樣本
- 2025版集體勞動合同范文
- 2025加盟經(jīng)銷合同范文
- 6-2《插秧歌》說課稿及反思 2024-2025學年統(tǒng)編版高中語文必修上冊
- 2023九年級數(shù)學上冊 第2章 一元二次方程2.2 一元二次方程的解法2.2.3 因式分解法第2課時 選擇合適的方法解一元二次方程說課稿 (新版)湘教版
- 軟膜天花施工方案
- 北師大版小學六年級下冊數(shù)學全冊教學設計
- YY/T 0681.2-2010無菌醫(yī)療器械包裝試驗方法第2部分:軟性屏障材料的密封強度
- GB/T 20472-2006硫鋁酸鹽水泥
- 煙氣管道阻力計算
- 城鄉(xiāng)環(huán)衛(wèi)一體化保潔服務迎接重大節(jié)日、活動的保障措施
- 醫(yī)院-9S管理共88張課件
- 高考作文復習:議論文論證方法課件15張
- MySQL數(shù)據(jù)庫項目式教程完整版課件全書電子教案教材課件(完整)
- 藥品生產(chǎn)質(zhì)量管理工程完整版課件
- 《網(wǎng)絡服務器搭建、配置與管理-Linux(RHEL8、CentOS8)(微課版)(第4版)》全冊電子教案
- 職業(yè)衛(wèi)生教學課件生物性有害因素所致職業(yè)性損害
評論
0/150
提交評論