




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
計算機體系結構完整講義計算機體系結構完整講義計算機體系結構完整講義第1章計算機系統設計基礎1.1計算機系統的基本概念1.2計算機系統的設計技術1.3計算機系統的性能評價1.4計算機系統結構的發展2022/12/22本章學習要求了解計算機系統的多級層次結構掌握系統結構、組成和實現的定義及屬性,會透明性分析掌握計算機系統的設計原理、性能計算掌握計算機系統的分類,特別是Flynn分類了解軟件對計算機系統結構發展的影響2022/12/231.1計算機系統的基本概念機器:能存儲和執行相應語言程序的算法和數據結構的執行體計算機語言:是用以描述控制流程的、有一定規則的字符集合語言不是專屬軟件范疇,可以介屬于計算機系統的各個層次,具有不同作用2022/12/24
從使用語言的角度上,將計算機系統看成按功能劃分的多級層次結構機器、匯編、高級、應用語言
低級高級后者比前者功能更強、使用更方便;而前者是后者發展的基礎,在單條指令的執行速度相比較,前者更快。1.1.1計算機系統的多級層次結構計算機系統的多級層次結構圖微程序/硬聯直接由硬件執行解釋部分解釋(操作系統)翻譯(匯編程序)翻譯(編譯程序)翻譯(應用程序包)應用語言級L5虛擬機高級語言機器L4虛擬機匯編語言機器L3虛擬機應用軟件固件系統軟件傳統機器級操作系統機器軟硬件交界面L2虛擬機物理機器硬件軟件2022/12/26多級層次結構(機器—語言)M5:應用語言機器------應用語言(L5)M4:高級語言機器------高級語言(L4)M3:匯編語言機器------匯編語言(L3)M2:操作系統機器------作業控制語言(L2)M1:傳統機器------------機器語言(L1)M0:微程序機器---------微程序語言(L0)2022/12/27從設計人員看到的層次應用程序級用戶高級語言級高級語言程序員匯編語言級匯編語言程序員操作系統級操作員機器語言級機器語言程序員微程序控制級邏輯程序員硬聯邏輯級硬件設計員2022/12/28翻譯(Translation):先用轉換程序將高一級機器級上的程序整個地變換成低一級機器級上可運行的等效程序(中間程序),然后再在低一級機器級上去實現的技術。例:英語翻譯計算機系統中的翻譯功能常由應用程序包、編譯程序、匯編程序等軟件完成。解釋(Interpretation):在低一級機器級上用它的一串語句或指令來仿真高一級機器上的一條語句或指令的功能,通過對高一級機器語言程序中的每條語句或指令逐條解釋來實現的技術解釋過程中不生成中間程序(節省了存儲空間)或者:一條N+1級指令--〉一串N級指令例:解釋一件事翻譯和解釋是語言實現的兩種基本技術。解釋比翻譯費時,但節省存儲空間翻譯為整體行為,可以優化,效率高,與平臺有關解釋為局部行為,不優化,效率低,與平臺無關翻譯+解釋:Java控制流程的三種實現方法全硬件、軟硬件結合、全軟件邏輯上等價,物理意義上不等價硬件實現:速度快、成本高;靈活性差、占用內存少軟件實現:速度低、復制費用低;靈活性好、占用內存多發展趨勢硬件實現的比例越來越高硬件所占的成本越來越低2022/12/212計算機系統的軟硬件成本變化成本年代軟件硬件70年代2022/12/213從概念和功能上將計算機系統看成多級層次結構的優點:1.理解軟件、硬件、固件的地位和作用
2.
理解各種語言的實質和實現途徑
3.
探索虛擬機新的實現方法和新的系統設計由硬件固件實現——高級語言機器多處理機系統——由真正微處理機實現
4.
理解計算機體系結構的定義
5.
在一臺真正的宿主機上通過模擬或仿真另一臺不同的假想機器——自虛擬技術
1.1.2系統結構、組成與實現定義與理解三者的相互關系2022/12/215計算機系統結構的定義
SystemArchitecture是對計算機系統中各機器級之間界面的劃分和定義,以及對各級界面上、下的功能進行分配1964年,IBM/360系列機的總設計工程師G.M.Amdahl、G.A.Blauw、F.P.Brooks等人提出。也稱體系結構。是從程序員的角度所看到的系統的屬性,是概念上的結構和功能上的行為它不同于數據流程和控制的組織,不同于邏輯設計以及物理實現方法2022/12/216定義的理解從兩個角度理解一是計算機系統結構既然是“從程序員的角度所看到的系統的屬性”,那么每一級“機器”都有一個系統結構,而且它們相互不同二是將計算機的系統結構定義在傳統機器界面(M1)程序員所看到的計算機的基本屬性2022/12/217計算機系統結構的基本屬性一般應包括以下幾個方面指令系統、數據表示、操作數的尋址方式寄存器的構成定義、中斷機構和例外條件存儲體系和管理、I/O結構機器工作狀態定義和切換、信息保護在所有系統結構的特性中,指令系統的外特性是最關鍵的2022/12/218計算機組成
ComputerOrganization研究硬件系統各組成部分的內部構造和相互聯系,以實現機器指令級的各種功能和特性,目標是用最合理地方式將各種設備和部件連接為計算機,以達到最優的性價比,從而實現所確定的系統結構。它是計算機系統結構的邏輯實現,包括機器級內的數據流和控制流的組成以及邏輯設計等。2022/12/219計算機組成的基本屬性數據通路寬度各種操作功能部件的共享程度專用部件的設置功能部件的并行性緩沖和排隊技術控制機構的組成方式預測技術可靠性技術2022/12/220計算機實現
ComputerImplementation
研究各部件的物理結構、機器的制造技術和工藝等,它著眼于器件技術和微組裝技術主存的物理實現,如存儲器采用什么樣器件,邏輯電路設計和微組裝技術均屬計算機實現它是計算機組成的物理實現2022/12/221定義理解舉例主存系統主存容量與編址方式的確定-----------系統結構主存速度的確定、邏輯結構的模式---組成器件的選定、電路的設計、組裝技術---實現指令系統指令系統的確定--------系統結構指令的實現--------------組成具體電路、器件設計及裝配技術---實現2022/12/222系統結構、組成和實現相互關系*具有相同系統結構的計算機可以采用不同的組成,一種計算機組成可以采用多種不同的計算機實現(系列機與兼容機)*采用不同的系統結構會使可以采用的組成技術產生差異,計算機組成也會影響系統結構2022/12/223是否設置乘方/開方指令邏輯設計1(硬聯電路)實現方案1(V1,$1,T1)邏輯設計3微程序邏輯設計2(ROM查表)實現方案2(V2,$2,T2)實現方案3(V3,$3,T3)相同系統結構的計算機可以采用不同的組成相同計算機組成可以采用多種不同的計算機實現計算機系統結構計算機組成計算機實現是否2022/12/224舉例:不同系統結構對軟件的影響A:=B+CD:=E*F面向三地址尋址:
ADDB,C,AMPYE,F,D面向寄存器:
LOADR1,BADDR1,CSTORER1,ALOADR2,EMPYR2,FSTORER2,D2022/12/225透明性Transparency本來存在的事物或屬性,從某個角度去看卻看不到。在一個計算機系統中,低層機器的屬性往往對高層機器的程序員是透明的。計算機組成設計的內容,對傳統機器程序員來講一般是透明的。2022/12/226舉例1
在多級層次結構的計算機系統中,傳統機器級的概念性結構和功能特性,對高級語言的程序員來說是透明的,而對匯編語言的程序員來說不是透明的。這說明高級語言的程序員不必知道機器的指令系統、中斷機構等,這些本來存在的屬性,對高級語言的程序員來說好像不存在一樣,所以說是透明的。對計算機系統結構來說,存儲器采用交叉存取還是并行存取、CPU內部的數據通路的寬度是8位還是16位,這些都是透明的,而對計算機組成來說這些不是透明的。2022/12/227舉例2
指令執行采用串行、重疊還是流水控制方式,對系統結構來說是透明的,但對計算機組成來說不是透明的。乘法指令采用專用乘法器實現,對系統結構來說是透明的,而對計算機組成來說不是透明的存儲器采用哪種芯片,對計算機系統結構和組成來說是透明的,而對計算機實現來說不是透明的。2022/12/2281.1.3計算機系統的分類采用的基本器件分類計算機系統成本分類1966年MichaelJ.Flynn分類1978年DavidJ.Kuck分類1972年馮澤云分類2022/12/229一按采用的基本器件分類計算機的更新換代第一代:電子管計算機第二代:晶體管計算機第三代:中小規模集成電路第四代:大或超大規模集成電路第五代:VLSI(甚大規模集成電路)計算機性能的大幅度提高和更新換代,一方面依靠器件的不斷更新,同時也依賴系統結構的不斷改進。硬件設計公理:越小越快2022/12/230二按計算機系統成本分類巨型計算機、超級計算機:SuperComputer大型計算機:MainComputer中型計算機:MidComputer小型計算機:MiniComputer微型計算機:MicroComputer工作站:Workstation介于小型機和微型機之間,具有小型機的性能,微型機的價格2022/12/231MichaelJ.Flynn
(弗林)分類法按照指令流和數據流的多倍性進行分類1.基本概念
指令流(instructionstream):機器執行的指令序列
數據流(datastream):由指令流調用的數據序列
多倍性(multiplicity):在系統瓶頸部件上處于同一執行階段的指令或數據的最大可能個數2022/12/232多指令流多數據流
MIMD(MultipleInstructionstreamMultipleDatastream)(多計算機系統)2.分類單指令流單數據流
SISD(SingleInstructionstreamSingleDatastream)
(傳統計算機,如IA結構的PC機)單指令流多數據流SIMD(SingleInstructionstreamMultipleDatastream)
(陣列計算機,如ILLIACⅣ機
)多指令流單數據流
MISD(MultipleInstructionstreamSingleDatastream)(較先進的流水線處理機,如VLIW機)四DavidJ.Kuck分類
庫克分類:指令流、執行流、多倍性單指令流單執行流SISE單指令流多執行流SIME多指令流單執行流MISE多指令流多執行流MIME2022/12/234五1972年馮澤云分類用最大并行度Pm分類最大并行度Pm:在單位時間內能夠處理的最大的二進制位數2022/12/235
橫坐標代表字寬(n位),即在一個字中同時處理的二進制位數縱坐標代表位片寬度(m位),即在一個位片中能同時處理的字數
字寬n位片寬m。。n=1,m=1,字串位串(WSBS)如串行計算機。n>1,m=1,字并位串(WPBS)如傳統計算機。。1163264116326425628816384。。。。。n>1,m>1,字并位并(WPBP)如陣列計算機。n=1,m>1,字串位并(WSBP)如STARAN等機。MPPSTARANPDP-11IBM360TI-ASCILLIACPEPECmmp。2022/12/2361.2計算機系統的設計技術1.2.1計算機系統的設計原理---加快經常性事件的速度---Amdahl定律---程序訪問的局部性規律1.2.2計算機系統的設計方法---軟硬件舍取的基本原則---計算機系統設計者的主要任務---計算機系統設計的基本方法(三種)2022/12/2371.2.1計算機系統的設計原理加快經常性事件的速度Amdahl定律程序訪問的局部性規律Amdahl/case準則成功轉移法則Cache法則2022/12/2381.加快經常性事件的速度這是計算機設計中最重要也最廣泛采用的設計準則。使經常性事件的處理速度加快能明顯提高整個系統的性能在當今的微處理機實現技術中,經常發生的事件由硬件完成,而不經常發生的事件交由軟件完成。2022/12/2392.Amdahl定律系統對某一部件采用某種更快執行方式所能獲得的系統性能改進程度,取決于這種執行方式被使用的頻率,或所占總執行時間的比例。IBM大型計算機之父2022/12/240Amdahl定律(理解)CPU硬件系統ALU占系統運行時間的30%編譯軟件系統公共子程序30%被加(提)速部件要優化改進的軟件2022/12/241Amdahl定律表達式表示被改進部分在改進前占系統的比例表示被改進部分的加速比2022/12/242Amdahl表達式的解釋改進后的執行總時間=不可改進部分的執行時間+不可改進部分的比例可改進部分的執行時間2022/12/243Amdahl舉例假設將某系統的某一部件的處理速度加快到10倍,但該部件的原處理時間僅為整個運行時間的40%,則采用加快措施后能使整個系統的性能提高多少?解:由題意可知fe=0.4,re=10,根據Amdahl定律2022/12/244思考題
采用哪種實現技術來求浮點數平方根FPSQR的操作對系統的性能影響較大。假若FPSQR操作占整個測試程序執行時間的20%。一種實現方法是采用FPSQR硬件,使FPSQR操作的速度加快到10倍。另一種實現方法是使所有的浮點數據指令的速度加快,使之加快到2倍,還假設FP指令占整個執行時間的50%。2022/12/2453.程序訪問的局部性規律程序訪問局部性主要反映在時間和空間局部性兩個方面時間局部性是指程序中近期被訪的信息項很可能馬上將被再次訪問;空間局部性是指那些在訪問地址上相鄰近的信息項很可能會被一起訪問這是構成存儲體系(存儲層次)的主要規律
2022/12/2464、Amdahl/case準則一個平衡的計算機系統,其CPU每1MIPS的速度應有1MB的主存容量和1Mb/s的I/O吞吐率。這一準則為設計平衡的計算機系統的提出了三者之間的參考指標。由于是統計結果,具體應用還需要適當調整。2022/12/2475、成功轉移法則對于轉移指令:向后轉移指令有90%的成功率;對于向前轉移指令有20%的成功率。這一轉移法則為預測處理提供了參考信息。2022/12/2486、Cache法則容量為C的直接映像Cache的失效率與容量為C/2的二路組相聯Cache的失效率大致相等。這一法則指出在相同命中率條件下控制復雜性的增加可以換取Cache容量的減小。2022/12/2491.軟硬取舍的基本原則原則一:在現有器件和技術條件下,系統要有高的性能價格比原則二:不應對組成和實現技術有過多的限制原則三:對軟件提供更多更好的支持(OS、編譯、高級語言)
1.2.2
計算機系統的設計方法2.計算機系統設計的主要任務要滿足用戶對功能上的要求以及相應的對價格和性能要求
在滿足功能要求基礎上,進行設計的優化
設計應能適應日后發展趨勢
2022/12/251計算機發展的基本趨勢
一個芯片上的晶體管數大約每年增加25%,因此每三年可增加一倍;
器件的開關速度增長基本類似DRAM的密度每年增長約60%,因此每三年將增長三倍;
訪問存儲器周期改進相應較慢,每十年約減少1/3;硬盤密度每年增加25%,每三年增加一倍,訪問時間則每十年減少1/3。2022/12/252計算機系統設計的主要方法方法一:“由上往下”設計:
先考慮如何滿足應用要求,確定好面對使用者那級機器應有什么基本功能和特性,如基本命令、指令或語言結構、數據類型和格式等,然后再逐級往下設計,每級都考慮怎樣優化上一級實現。方法特征:它適合于專用機設計,不適合于通用機設計。
2022/12/253方法二:由下往上設計
不管應用要求,只根據能拿到的器件參照或吸收已有各種機器的特點,先設計出微程序機器級(如果采用微程序控制)及傳統機器級,然后再為不同應用配多種操作系統和編譯系統軟件。方法特征:設計周期長。當一種結構的機器完成以后,硬件技術又已發展了一大步。20世紀60—70年代前常用此方法。2022/12/254方法三:由中間開始設計
先進行合理的軟、硬件功能分配,既要考慮能拿到的硬、器件,又要考慮可能的應用所需的算法和數據結構,先定義好這個交界面。確定哪些功能由硬件實現,哪些功能由軟件實現,同時還要考慮好硬件對操作系統、編譯系統的實現提供些什么支持。然后由這個中間點分別往上、往下進行軟件和硬件的設計。“中間”指傳統機器級界面。方法特征:設計周期短,軟硬件結合。
2022/12/255提高微處理器性能方法1、提高主頻。提高主頻可使系統中的各個部件受益,是提高系統性能最直接的方法。2、多線程。可隱藏訪存延遲,是提高系統吞吐率的有效辦法。3、2Bump技術。時鐘信號的上升、下降沿均控制信息的發送和接收,此技術既可用于邏輯電路也可用于總線。2022/12/2564、提高IPC技術。即為先進的流水技術。5、合理分配軟、硬件功能。6、優化片內Cache。將二、三級Cache盡量放在處理器內部。7、加大通用寄存器數量。8、亂序發送/亂序完成的指令調度技術。9、預取技術。10、分支預測技術。2022/12/2571.3計算機系統的性能評價CPU性能公式(CPU工作時間)MIPS和MFLOPS
基準測試程序
性能評價結果的統計和比較
2022/12/2581.3.1CPU性能公式一個程序在CPU上運行所需的時間:其中,2022/12/259思考題
如果FP操作的比例為25%,平均CPI=4,其它指令的CPI=1.33,FPSQR操作的比例為2%,CPI=20。假若有兩種設計方案,分別將FP操作和FPSQR操作的CPI都減為2。試比較這兩個方案哪個更好?2022/12/2601.3.2MIPS和MFLOPSMIPS每秒(可執行)百萬條指令MFLOPS每秒(可執行)百萬條浮點指令2022/12/261舉例
例1
用一臺4OMHz處理機執行標準測試程序,它含的混合指令數和相應所需的時鐘周期數如下:指令類型指令條數時鐘周期數整數運算450001
數據傳送320002
浮點運算
150002
控制轉移
80002求有效CPI、MIPS速率和程序的執行時間。2022/12/262
解:依題意可知IN=105條,n=4,2022/12/263
例2
某工作站采用時鐘頻率為15MHz、處理速率為10MIPS的處理機來執行一個巳知混合程序。假定每次存儲器存取為1周期延遲、試問:
(1)
此計算機的有效CPI是多少?
(2)假定將處理機的時鐘提高到30MHz,但存儲器子系統速率不變。這樣,每次存儲器存取需要兩個時鐘周期。如果30%指令每條只需要一次存儲存取,而另外5%每條需要兩次存儲存取,還假定已知混合程序的指令數不變,并與原工作站兼容,試求改進后的處理機性能。解(1)2022/12/264(2)依題意可知:30%的指令需要一次存儲存取,則這些指令在處理器提高時鐘頻率之后需要增加1個時鐘周期;另外5%的指令需要增加2個時鐘周期。
改進后性能提高情況可用CPU時間之比表示:
2022/12/2651.3.3基準測試程序用于評價計算機系統性能的基準測試程序(Benchmark)
。采用實際應用程序。如c語言的各種編譯程序及CAD工具軟件等;從實際程序中抽取少量關鍵循環程序段來組成核心程序,以此來評估性能;合成測試程序。它類似于核心程序方法,但這種合成測試程序是人為編制的。較流行的合成測試程序有Whetstone和Dhrystone兩種.
2022/12/266SPEC測試程序在1988年,美國HP、DEC、MIPS以及SUN公司,發起成立了SPEC(StandardPerformanceEvaluationCorporation)(標準性能評估協會)SPEC是一非盈利社團,致力于“建立、維護和認可一個基準測試程序標準化集,以用于最新一代高性能計算機的性能衡量。”SPEC89、92、95和2000共四個版本2022/12/267
SPEC89由10個工程/科學測試程序(GCC,Espresso,Splce2g6,DODUC,NASA7,Li,Eqntott,Matrix300,FPPPP,TOMCATV)組成。
其中4個用C語言編寫(GCC,Espresso,Li和Eqntott)用于整數運算,6個用FORTRAN語言編寫,用于浮點運算。計算所得SPECmark的分值越大越好,它是相對于VAX—11/780的性能,lSPEC分值約相當于0.2~0.3MFLOPS。
SPEC89后來演化出兩個測試程序集:SPECmark測量10個程序的執行速率,SPECthruput考察系統的吞吐率。2022/12/268Pentium與80486性能比較
Pentium/6680486DX2/66推出日期:1993年3月1992年8月制造工藝:0.8umCMOS0.8umCMOS整數/浮點部件:2/1個2/1個片內Cache:16K(指/數分開)8K(指/數混存)外部數據總線:64位32位Dhryston值:100MIPS54MIPSSPECint89值:7033.6SPECfp89值:7018.32022/12/269SPEC92由20個測試程序組成,包括CINT92(6)和CFP92(14)參照機:VAX11/780程序描述/領域CompressEspresoGccEqntottScxlisp自適應壓縮函數最小化GNUC編譯器邏輯設計電子表格Lisp解釋器程序描述/領域AlvinnDoduceEarFppppHydro2dMdljdp2Mdljsp2Masa7OraSpiceSu2corSwm256TomcatWave5神經網絡/機器人核反應堆模擬/物理學耳朵模擬/醫學電子積分/化學噴氣計算/天體物理運動方程/化學(雙)運動方程/化學(單)浮點內核光線跟蹤/光學電路模擬/電路設計粒子質量/量子物理水方程求解/模擬網格生成程序麥克斯韋方程求解2022/12/270SPEC95由18個測試程序組成,包括CINT95(8)和CFP95(10)參照機:SUNSPARC10/40SPEC2000由26個測試程序組成,包括CINT2000(12)和CFP2000(14)參照機:SUNUltra5_10300MHzAlphaStation500/500(System#1)PersonalWorkstation500au(System#2)AlphaServer41005/533(System#3)2022/12/271SPECint2000整數基準測試程序集基準測試程序語言駐留大小虛擬大小描述164.gzipc181(MB)200(MB)壓縮175.vprc5055.2FPGA應用176.gccc155158C編譯器181.mcfc190192組合優化186.craftyc2.14.2下棋游戲197.parserc3762.5字處理252.eonC++0.73.3計算機可視化253.perlbmkc146159Perl編程254.gapc193196解釋器(群論)255.vortexc7281Oob數據庫256.bzip2c185200壓縮300.twolfc1.94.1路由模擬器2022/12/272Gcc.176編譯器2022/12/273SPECfp2000浮點基準測試程序集基準測試程序語言駐留大小虛擬大小描述168.wupwiseF77176(MB)177(MB)量子染色動力學171.swinF77191192淺水建模172.mgridF775656.7三維勢能場173.appluF77181191偏微分方程177.mesac9.524.7三維圖形庫178.galgelF9063155計算流體力學179.artc3.75.9神經網絡應用183.equakec4951.1地震波傳輸模擬187.facerecF901618.5圖象處理:臉部識別188.ammpc2630計算化學189.lucasF90142143數論191.fma3dF90103105有限元模擬200.sixtrackF772659.8核物理應用301.apsiF77191192氣象學:污染物質分布2022/12/274龍芯2號處理器2022/12/2752022/12/2762022/12/277HPC的性能測試LinpackLinpack包括:Linpack100、1000和HPLLinpack是用高斯消元法要求解一元N次稠密線性方程。只能采用編譯優化選項,不能更改程序代碼,甚至是代碼中的注釋必須安裝支持C和Fortran77的編譯器、并行編程環境MPICH2022/12/2781.3.4性能評價結果的統計和比較
1.算術性能平均值Am2.幾何性能平均值Gm3.調和性能平均值HmRi表示由n個程序組成的工作負荷中執行第i個程序的速率,Ti表示執行第i個程序所需的時間
2022/12/279程序機器A執行時間機器B執行時間機器C執行時間程序111020程序2100010020程序3500100050程序4100800100例3已知四個程序在三臺計算機上的執行時間(s)如下表:
假設四個程序中每一個都有100000000條指令要執行,計算這三臺計算機中每臺機器上每個程序的MIPS速率。根據這些速率值,你能否得出有關三臺計算機相對性能的明確結論?你能否找到一種將它們統計排序的方法?試說明理由。2022/12/280程序機器A的MIPS機器B的MIPS機器C的MIPS程序1100105程序20.115程序30.20.12程序410.1251由上述機器的MIPS速率,可知每臺機器對4個程序有不同的處理時間,而且大小順序不同,所以不能得出明確的結論。解:根據式可得出每臺機器每個程序的MIPS速率如下:
2022/12/281平均執行時間機器A機器B機器C算術平均25.32.813.25幾何平均1.190.592.66調各平均0.250.202.1如果按照算術平均比較性能,機器A最快,機器B最慢;如果按照幾何平均比較性能,機器C最快,機器B最慢;如果按照調各平均比較性能,機器C最快,機器B最慢。下面可采用統計的方法比較各機器的性能:
如機器A的算術平均:2022/12/2821.4計算機系統結構的發展傳統計算機結構特點及其演變軟件、器件和應用對系統結構發展的影響計算機的成本和價格2022/12/2831.4.1傳統機結構特點及其演變
傳統的馮.諾依曼計算機結構輸出設備輸入設備控制器運算器存儲器2022/12/284傳統計算機結構模式的主要缺點有:1.存在有兩個瓶頸:物理瓶頸和智能瓶頸;2.低級的機器語言和高級的程序設計語言之間存在著巨大的語義差距;3.復雜的數據結構對象無法直接存放到一維線性地址空間的存儲器中,必須經過地址映象。
針對傳統計算機結構模式的演變兩個瓶頸:“改良”方法“改革”方法Cache存儲器、并行主存技術高級流水技術語義差距:數據結構:面向高級語言機器、虛擬存儲技術以支持高級語言編程自定義數據表示、多維存儲空間非傳統計算機結構:并行處理計算機脈動陣列計算機數據流計算機歸約計算機人工智能計算機2022/12/2861.4.2系統結構的發展軟件對系統結構發展的影響器件對系統結構發展的影響應用對系統結構發展的影響價格對系統結構的影響算法對系統結構的影響2022/12/287一、軟件對系統結構發展的影響軟件對系統結構的影響主要是解決軟件的可移植出性(①軟件成本越來越高②軟件產量和可靠性的提高困難③積累了大量成熟的軟件④排錯比編寫困難、軟件生產率低因而出現了“軟件危機”)實現軟件的可移植性有三個主要途徑:1.統一高級語言2.采用系列機方法3.模擬與仿真2022/12/2882.采用系列機方法
系列機:由同一廠商生產,系統結構相同、組成和實現不同的不同檔次(速度、容量、成本和可靠性)的機器。如IBM公司的360、370系列計算機,DEC公司的PDP-ll系列機和INTEL公司的80X86系列微型計算機。1.統一高級語言(應用、認識和習慣勢力三個問題)系列機方法只是解決了系統結構相同的計算機之間的軟件移植。系列機方法也限制了系統結構的發展。
系列機方法較好地解決了硬件技術更新發展快(系統結構要求不斷更新)而軟件編寫開發周期比較長(軟件環境要求相對穩定)之間的矛盾。兼容機:不同廠商生產,系統結構相同、組成和實現不同的不同檔次的機器。2022/12/290系列機要求:保證向后兼容力爭做到向上兼容當前機器時間機器檔次向上兼容向下兼容向前兼容向后兼容2022/12/2913.模擬與仿真微程序機器級高級語言級匯編語言級操作系統級傳統機器級A機器系統模擬高級語言級操作系統級傳統機器級B機器系統仿真宿主機虛擬機目標機2022/12/292模擬:用一臺機器的指令系統,去解釋另一臺系統結構不同的機器的指令系統,以實現軟件的移植。(實現容易、速度較慢)仿真:直接用微程序去解釋另一臺系統結構不同的機器的指令系統,以實現軟件的移植。(微程序編寫困難、實現速度較快)
模擬與仿真可實現系統結構不同的機器之間軟件的移植。對于使用頻率較高的指令,盡可能用仿真方法以提高運算速度,而對使用頻率低且難于用仿真實現的指令(包括I/O指令等)則用模擬方法加以實現。
開放式系統(opensystem)1978年由國際標準化組織(ISO)首先提出了關于開放式系統的新概念。
是指—種獨立于廠商,且遵循有關國際標準而建立的、具有系統可移植性、交互操作性,從而能允許用戶自主選擇具體實現技術和多廠商產品渠道的系統集成技術的系統。它是相對于原來的封閉系統或專有系統而言的。USB,TCP/IPJava,CORBA,WebServices等2022/12/294系統結構的發展軟件對系統結構發展的影響器件對系統結構發展的影響應用對系統結構發展的影響價格對系統結構的影響算法對系統結構的影響2022/12/295二、器件對系統結構發展的影響
器件發展使得計算機的主頻速度、單芯片的集成度飛速提高。(如1979年推出的8088/8086,主頻約5MHz,單芯片上集成2.9萬個晶體管;1997年推出的PII主頻在300MHz左右,單芯片上集成1500萬個晶體管)器件的發展使得系統結構技術“下移”速度加快。2022/12/296
器件的發展使得器件原有的使用性質發生了轉變(通用型→現場型→專用型)。器件的發展會影響到算法、語言和軟件的發展。
器件的發展改變了傳統的邏輯設計思想和邏輯設計方法。器件是推動系統結構發展的主要動力,最活躍的因素,是計算機更新換代的標志之一。2022/12/2972022/12/2982022/12/299美國NSF向美國政府申請2009年計劃經費2000多萬美元,為超越摩爾定律(SEBML)部署新計劃NSF:摩爾定律將在10到20年后達到物理和概念上的極限具體方向包括:碳納米管、量子計算和并行計算以及大規模多核計算機等2022/12/2100系統結構的發展軟件對系統結構發展的影響器件對系統結構發展的影響應用對系統結構發展的影響價格對系統結構的影響算法對系統結構的影響2022/12/2101三、應用對系統結構發展的影響應用范圍:數值計算、數據庫及事務處理系統、CAD、多媒體處理、人工智能在某個應用領域的確定以后,系統結構設計者的首要任務,是確保系統中的每一個功能部件獲得更高的性能系統結構設計者總是根據用戶(市場)需求設計或改進系統結構,以適應發展2022/12/2102系統結構的發展軟件對系統結構發展的影響器件對系統結構發展的影響應用對系統結構發展的影響價格對系統結構的影響算法對系統結構的影響2022/12/2103四、價格對系統結構的影響性能與價格(性/價比)均衡改善與提高性能或價格較小的變化產生比原系統好的性/價比提高系統的絕對性能,而價格增長又比較合理2022/12/2104五、算法對系統結構的影響充分利用算法和系統結構兩者優勢,構建一種有效的解決問題的方法改進和提高基本的系統結構利用并行性獲得高速度2022/12/2105系統結構發展小結軟件是促使計算機系統結構發展的最重要的因素沒有軟件,機器就不能運行,所以為了能方便地使用現有軟件,就必須考慮系統結構的設計軟件最重要應用需求是促使計算機系統結構發展的最根本的動力機器是給人用的,我們追求更快更好,機器就要做得更快更好需求最根本器件是促使計算機系統結構發展最活躍的因素沒有器件就產生不出電腦,器件的每一次升級就帶來計算機系統結構的改進器件最活躍2022/12/21061.4.3計算機的成本和價格成本敏感設計(Cost-sensitivedesigns):--非設計時的元器件成本,而是產品交付市場時的規劃成本。--封裝成本。隨著時間的推移,設計時安排在一個印制板上的所有器件,生產時可能只用一個單芯片集成。2022/12/2107平均折扣毛利潤直接成本元器件成本計算機產品價格的構成25-40%35-40%6-8%20-30%制造成本:工人工資、元器件采購、器件損耗、維護保修等間接成本:研制費、銷售費、廣告宣傳費、廠房租金、設備使用、管理費等利潤(批零差價):生產廠家利潤、中間商利潤、零售商利潤等目錄價格2022/12/2108部分習題解答1.2如有一個經解釋實現的計算機,可以按功能劃分成4級。每一級為了執行一條指令需要下一級的N條指令解釋。若執行第一級的一條指令需K(ns)時間,那么執行第2、3、4級的一條指令各需要用多少時間(ns)?2022/12/2109本題有兩個問題應特別注意:第一個問題是“上一級”與“下一級”的關系,即哪是上一級,哪是下一級?在圖1.1中第3級是第2級的“上一級”,第1級又是第2級的“下一級”。第二個問題是該計算機是一個“經解釋實現的計算機”,上一級的程序在下一級上實現不是經翻譯完成,只能是解釋。解:∵第二級的一條指令需第1級的N條指令解釋∴第二級的一條指令執行時間為NKns;第三級的一條指令執行時間為N2Kns;第四級的一條指令執行時間為N3Kns。2022/12/21101.3有一個計算機系統可按功能劃分成4級,各級的指令都不相同,每一級的指令都比其下一圾的指令在效能上強M倍,即第i級的一條指令能完成第i-1級的M條指令的計算量。現若需第i級的N條指令解釋第i+1級的一條指令,而有一段第1級的程序需要運行Ks,問在第2、3和4級上的一段等效程序各需要運行多長時間(s)?解:第2級上的一段等效程序運行時間為:第3級上的一段等效程序運行時間為:第4級上的一段等效程序運行時間為:2022/12/21111.6.什么是透明性概念?對計算機系統結構,下列哪些是透明的?哪些是不透明的?
存貯器的模m交叉存取;浮點數據表示;I/O系統是采用通道方式還是外圍處理機方式;數據總線寬度;字符行運算指令;陣列運算部件;通道是采用結合型的還是獨立型的;PDP一1l系列中的單總線結構;訪問方式保護;程序性中斷;串行、重疊還是流水控制方式;堆棧指令;存貯器最小編址單位;Cache存貯器。
答:客觀存在的事物或屬性,從某個角度去看,它好象不存在,稱之為透明性。
分析:有關系統結構屬性所包括的內容,對系統結構都不透明。
2022/12/2112對于計算機系統結構透明的是:存儲器的模m交叉存取、數據總線寬度、陣列運算部件、通道是采用結合型還是獨立型、PDP-11系列的單總線結構、串行、重疊還是流水控制方式、Cache存儲器。對于計算機系統結構不透明的是:浮點數據表示、
I/O系統是采用通道方式還是外圍處理機方式、字符行運算指令、訪問方式保護、程序性中斷、堆棧指令、存儲器最小編址單位。2022/12/21131.17想在系列機中發展一種新型號機器,你認為下列哪些設想是可以考慮的,哪些則是不行的?為什么?
(1)新增加字符數據類型和若干條字符處理指令,以支持事務處理程序的編譯。
(可以)(2)為增強中斷處理功能,將中斷分級由原來的4級增加到5級,并重新調整中斷響應的優先次序。
(不可以)(3)在CPU和主存之間增設Cache存貯器,以克服因主存訪問速率過低而造成的系統性能瓶頸。
(可以)(4)為解決計算誤差較大,將機器中浮點數的下溢處理方法由原來的恒置“1”法,改為增設用只讀存貯器存放下溢處理結果的查表舍入法。(可以)2022/12/2114(5)為增加尋址靈活性和減少平均指令字長,將原來全部采用等長操作碼的指令改成有3類不同碼長的擴展操作碼,并將源操作數尋址方式由原來的操作碼指明改成增加一個如VAX--11那樣的尋址方式位字段來指明。(不可以)(6)將CPU與主存之間的數據通路寬度由16位擴展成32位,以加快主機內部信息的傳送。
(可以)(7)為了減少使用公用總線的沖突,將單總線改為雙總線。(可以)(8)把原來的0號通用寄存器改作為專用的堆棧指示器。(不可以)2022/12/2115本章重點內容回顧學習重點:多級層次結構、定量設計原理、性能計算、弗林分類法學習難點:透明性分析2022/12/2116本章思考題1有一向量處理機,向量執行速度為10MFLOPS,標量執行速度為1MFLOPS。設一程序中可向量化的比例為a,要求(1)平均執行速度?(2)要使平均速度達成7.5,a應為多少?(3)若標量速度不變,a為0.7,要使平均速度達到2,向量速度應為多少?2022/12/2117本章思考題2
假若要將某一執行部件改進后速度提高10倍,改進后被改進部件執行時間占系統總運行時間的50%。問改進后,系統獲得的加速比是多少?2022/12/2118第一章結束,謝謝!TheEnd2022/12/2119第1章計算機系統設計基礎第2章數據表示與指令系統性能分析第3章流水技術和向量處理第4章陣列計算機第5章多處理機系統第6章數據流計算機2022/12/2120第2章數據表示與指令系統性能分析浮點數據表示和IEEE754標準高級數據表示指令格式的優化設計指令系統設計的兩種風格2022/12/2121本章學習要求本章要點:機器的數據表示,特別是浮點數據表示;指令格式的優化設計技術;RISC的關鍵技術。指令系統和數據表示是計算機系統結構的主要屬性。2022/12/21222.1浮點數據表示和IEEE754標準數據表示與數據結構引入數據表示的原則浮點數據基值大小和下溢處理方法的選擇2022/12/2123定義:具有一組值的集合,且定義了作用于該集合的操作集分類:基本類型、結構類型基本數據類型:二進制位、二進制位串、整數、十進制數、浮點數、字符、布爾數等大多數計算機系統結構都支持基本數據類型一、數據類型2022/12/2124結構數據類型:由一組相互有關的數據元素復合而成的數據類型數組、字符串、向量、堆棧、隊列、記錄等大多數系統結構只能部分地支持結構數據類型2022/12/2125二、數據表示定義:機器硬件能直接識別和引用的數據類型分類:基本數據表示、高級數據表示(自定義數據表示)實際系統中,簡單的、常用的、通用的數據類型采用數據表示(如int、float、stack等);復雜的數據結構一般通過數據結構或通過軟硬件聯合設計實現(如table、graph、tree等)2022/12/2126三、數據表示與數據結構數據表示:指的是能由機器硬件直接識別和引用的數據類型。由硬件實現的數據類型數據結構:反映數據元素之間的結構關系,面向計算機系統軟件、面向應用領域所需處理的數據類型。由軟件實現的數據類型2022/12/2127數據結構與數據表示的關系:
--數據表示是數據結構的一個子集
--數據表示是軟、硬件界面的一部分;數據結構是軟件和應用的一分
--數據表示的確定實質上是軟硬件的取舍問題
--數據結構的發展總是優先于機器的數據表示,系統結構設計者應盡可能為數據結構的實現提供更多的支持2022/12/2128四、引入數據表示的原則原則1:系統的效率是否提高,是否減少了實現時間和所需的存儲空間舉例:兩個200*200的二維定點數組相加無陣列型:6條指令,4條循環200*200=40000有陣列型:1條指令,減少4*40000=160000字原則2:通用性和利用率是否高通用性:是否對多種數據結構均適用利用率:硬件設置大小的選擇2022/12/2129五、浮點數尾數基值的選擇三大特點:表數范圍、表數精度和表數效率關鍵問題:在數據字長確定的情況下,找到具有最大表數范圍、最高表數精度和最大表數效率的浮點數表示方式浮點數的表示需要六個基本參數:尾數m、階碼e的值;尾數的基rm、階碼的基re、尾數長度p(不包括符號位)、階碼長度q2022/12/2130浮點數的一般格式:對任意浮點數N,可表示為:其中:表數范圍在尾數采用原碼、純小數,階碼采用移碼的浮點數表示方式中,規格化浮點數N的表數范圍如下:2022/12/2131進一步得出浮點數在數軸上的分布情況如圖示:由以上分析可知,能表示的絕對值最大的浮點數可近似為:可見,規格化浮點數的表數范圍主要與階碼的長度q和尾數的基值rm有關,表數范圍隨著q和rm的增加而擴大2022/12/2132表數精度
表數精度也稱為表數誤差,浮點數存在表數精度的根本原因是由于浮點數的不連續性造成的。例如:當q=1,m=2,rm=2,能表示的正規格化數是:1/8,3/16,1/4,3/8,1/2,3/4,1,3/2(共8個數)如果有1/2+3/4=5/4,則5/4不在這個浮點數集內。只能用1,或3/2來表示。在一般情況下,認為規格化尾數最后一位的精確度是一半,表數精度則可表示為如下形式:2022/12/2133
結論:當浮點數的尾數長度相同時,尾基為2時具有最高的表數精度在機器中,一個rm進制的基值需用m’個二進制位表示,其中因此,尾數m的實際數位k為:2022/12/2134表數效率2022/12/2135結論:浮點數的表數效率主要與尾數的基值有關。當尾基為2時,表數效率最低如:小結:浮點數尾數基值rm越大,表數范圍越大,表數精度降低,表數效率越高.2022/12/2136浮點數表示小結3、浮點數尾數基值rm越大,表數范圍越大,表數精度降低,表數效率越高.2、當浮點數的尾數長度相同時,尾基為2時具有最高的表數精度1、規格化浮點數的表數范圍主要與階碼的長度q和尾數的基值rm有關,表數范圍隨著q和rm的增加而擴大2022/12/2137重點:在機器字長一定的情況下,如何選擇尾數的基值,使浮點數的表數范圍最大,表數精度和表數效率最高?分析:設浮點數表示方式F1:尾數基值rm1=2,尾數長度p1,階碼長度q1,二進制字長:
L1=p1+q1+2
浮點數表示方式F2:尾數基值rm2=2k,尾數長度p2,階碼長度q2,二進制字長:
L2=kp2+q2+2浮點數尾數基值的選擇2022/12/2138(1)當L1=L2,且時,分析尾數基值和表數精度的關系:將上式代入p1+q1=kp2+q2可得:(注:p1用p2來表示,后面分析有用)2022/12/2139F1的表數精度是(由教材公式2.2得):F2的表數精度是:2022/12/21402022/12/2141由上式可見,只有當K=1(rm=2)或K=2(rm=4)時,T=1,否則T>1。由此得出結論:
結論1:在浮點數的字長和表數范圍一定時,尾數基值取2或4具有最高的表數精度(2)當L1=L2,且時,分析尾數基值和表數范圍的關系:
2022/12/2142注:只有當k=1或k=2時,才有2022/12/2143結論2:當浮點數的字長和表數精度確定后,尾數基值取2或4時,具有最大的表數范圍綜合結論:當機器字長確定后,rm取2或4時,具有最大的表數范圍和最高的表數精度(但表數效率低)由于rm=2時,η=50%。但規格化浮點數尾數的最高位一定為1,故可以隱藏或省去,此時η=100%,這就是尾基為2時的隱藏位表示方法基值為2時浮點數的優化表示原理2022/12/2144四種格式單精度格式:32位,階碼E=8位,尾數M=23位擴展單精度:E>=11位,M≥32位雙精度格式:64位,E=11位,M=52位擴展雙精度:E>=15位,M≥63位單精度格式:S(符號1位)E(階碼8位)M(尾數23位)1823S符號位EM指數尾數32位單精度形式IEEE754標準浮點數表示2022/12/2145雙精度格式:S(符號1位)E(階碼11位)M(尾數52位)11152S符號位EM指數尾數64位雙精度形式2022/12/2146IEEE754單精度浮點數格式:S=0,正數;S=1,負數E由8位二進制移碼組成00000000:特殊數00000001:1代表:1-127=-126……規格化數11111110:254代表:254-127=12711111111:特殊數M:尾數,原碼表示的純小數(規格化,隱含1)2022/12/2147若E=0且M=0,N為0;若E=0且M≠0,N=(-1)S·2-127·(0.M),非規格化數;若1≤E≤254,N=(-1)S·2E-127·(1.M),規格化數;若E=255且M≠0,N=NaN(非數值);若E=255且M=0,N=(-1)S∞(無窮大)。2022/12/2148例題:1.將IEEE754單精度數(8位十六進制表示)轉換為十進制數(1)C0A00000H(2)3F880000H2.將十進制數9和5/32轉換為IEEE754標準的單精度數,并用8位十六進制表示1解:(1)C0A00000H=11000000101000000000000000000000=(-1)1×2129-127×(1.25)=-1×22×1.25=-1.25×4=-5.0D
2022/12/2149(2)3F880000H=00111111100010000000000000000000B=(-1)0×2127-127×(1.0625)=20×1.0625=1×1.0625=1.0625D
2解:(1)9=(-1)0×1001=(-1)0×23×1.001
=(-1)0×2130-127×1.001
二進制代碼為:01000001000100000000000000000000B=41100000H2022/12/2150(2)5/32=(-1)0×0101×2-5=(-1)0×2-5×22×1.01
=(-1)0×2124-127×1.01
二進制代碼為:00111110001000000000000000000000B=3E200000H
2022/12/2151考慮運算的處理方法,主要有截斷法、舍入法、恒置1法、查表舍入法,是在速度、誤差、造價、實現方便等多方面的綜合權衡性能指標:最大誤差和平均誤差及實現成本
下溢處理時應注意的問題:先規格化,然后舍入處理;計算平均誤差時,要同時考慮正數區和負數區;在處理負數時,要注意不同的碼制。浮點數尾數下溢處理方法2022/12/2152截斷法(恒舍法)將尾數超出機器字長的部分簡單截去。處理簡單,不增加硬件,不需額外處理時間。在正數區是負誤差,負數區是正誤差。當正、負數分別考慮時平均誤差最大。應用在精度要求不高的場合。小型及微型計算機普遍采用。2022/12/2153舍入法(下舍上入法)機器運算部分的規定字長之外增設一個附加位,存放溢出部分的最高位。每當進行尾數下溢處理時,檢測溢出部分值是否大于或等于二分之一基值實現簡單,增加硬件少,最大誤差小,平均誤差接近0在中低速機器上或要求精度損失盡可能小的場合下使用較多2022/12/2154恒置“1”法機器運算部分的規定字長之最低位恒置成“1”狀態實現簡單,不需要增加硬件和處理時間。最大誤差最大,比截斷法的還要大使用較多,適合于中高速機器2022/12/2155查表舍入法用ROM或PLA存放下溢處理表,是截斷法和舍入法的綜合平均誤差可調節到趨于0(用截斷法的負誤差彌補舍入法的正誤差),是一種很有前途的實現方法需要增加一定的硬件設備量2022/12/2156(p-n)位n位1位(g-1)位(p-n)位ROM/PLAn位p位g位查表舍入法原理2022/12/2157000110110000:000:111:011:1x處理結果截斷法000110110000:000:111:011:1x處理結果舍入法000110110000:000:111:011:1x處理結果恒置“1”法000110110000:000:111:011:1x處理結果查表舍入法2022/12/2158查表舍入法舉例
例:由4位二進制尾數(最低位為附加位)組成的ROM查表法,下溢處理成3位二進制結果。請設計下溢處理平均誤差接近于0的ROM表。地址數據地址數據00000001000100000100110011010010001101010100110101011110010001011001100101011110111101100111110111011110011111112022/12/21592.2高級數據表示自定義數據表示(Self-defining)帶標志符的數據表示數據描述符向量數組數據表示堆棧數據表示2022/12/2160引入思想:減小高級語言和機器語言的語義差距,減輕編譯軟件的工作量分類帶標志符數據表示數據描述符一、自定義數據表示2022/12/2161大多數計算機存儲數據的屬性由指令中的操作碼解釋類型:如定點、浮點、字符、字符串、邏輯數、向量等進位制:如二進制、八進制、十進制、十六進制等字長:如字、半字、雙字、字節等尋址方式:如直接、間接、相對、寄存器尋址等功能:如地址、數值、控制字、標志等2022/12/2162IBM370系列計算機中的加法指令指令助記符數據類型字長進位制尋址方式AR定點數322R-RADR浮點數64階2,尾16R-RAER浮點數32階2,尾16R-RAH定點數162R-XA定點數322R-XAD浮點數64階2,尾16R-XAE浮點數32階2,尾16R-XAP定點十6410S-S2022/12/2163高級語言中數據的屬性在數據引用前給以定義如C語言中常用的基本數據類型:
int基本整型,即定點數;short為短整型;long為長整型;float為短浮點型;double為長浮點型;等等加法指令只有一條:A=A+B編譯器根據定義生成不同的加法指令2022/12/21641.帶標志符數據表示定義:用以定義某個數據的數據類型和數值的數據表示。格式如下:類型標志主要用于指明數據類型(如二進制整數、十進制整數等,也可用于指明機器內部所用信息的各種類型)標志符由編譯程序建立,對高級語言程序來說是透明的2022/12/216570年代生產的R-2試驗性計算機中采用的10標志符功能:操作數、指令、地址、控制字陷井:由軟件定義4種捕獲方式封寫:只讀或可讀可寫類型:16種不同的數據類型,與功能配合校驗:奇偶校驗功能2位陷井2位封寫1位類型4位校驗1位數值2022/12/2166優點:簡化指令系統和程序設計簡化了系統程序和編譯程序的設計便于一致性校驗能由硬件自動完成數據類型的變換支持數據庫系統的實現與數據類型無關的要求為軟件調試和應用軟件開發提供支持缺點:使程序所占用的主存空間增加降低指令的執行速度必須用專門的指令完成標志符的初始化2022/12/2167引入可行性分析存儲空間是否提高?
BA數據指令總數少總數多通常有面積B>面積A采用標志符后數據字增長不采用標志符采用標志符后指令字縮短2022/12/2168實現時間是否減少?專門的指令用于標志符初始化,增加了輔助開銷指令執行過程中,對每個標志符進行逐個解釋,并判斷數據是否相容,因此單條指令的執行速度降低,但宏觀執行時間減少宏觀時間=設計時間+編譯時間+調試時間結論運行時間增加,存儲空間減少。通用機中不使用,專用機(支持動態數據類型)中使用2022/12/2169思考題假若X處理機的數據不帶標志符,指令和數據字長都為32位。Y處理機的數據帶標志符,數據字長增加至35位,3位是標志符,其指令字長減少至30位。并假設一條指令平均訪問兩個操作數,每個操作數平均被訪問R次。現有一程序,它的指令條數為I,計算在這兩種不同類型的處理機中程序占用的存儲空間的比。2022/12/21702.數據描述符目的:描述復雜和多維的結構類型,進一步減少標志符所占的存貯空間格式:描述符標志位特征標記數據塊長度數據塊起始地址382020舉例:現以美國Burroughs公司的B6500,7500為例進行自定義數據表示的說明,格式如下:2022/12/2171數據000數值描述符101PCISRTD長度地址3111120220111:不連續數據0:連續數據1:數據集中的一個0:數據集的全體只準讀出的數據00:數據描述符寫其他描述符0:不在主存中1:在主存中0:單精度數據1:雙精度數據2022/12/2172優點:實現陣列數據的索引比變址方法實現要快,而且能檢查程序設計中陣列越界錯誤為向量、數組數據結構的實現提供一定的支持,有利于簡化編譯中的代碼生成引入可行性分析:同帶標志符的數據表示描述符的工作過程如下圖2022/12/21731010000001
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年郁金香相框項目市場調查研究報告
- 2025年透明盤項目市場調查研究報告
- 2025年遠程工業自動化控制系統項目市場調查研究報告
- 2025年磁卡讀寫機項目市場調查研究報告
- 2025年水性合板膠項目市場調查研究報告
- 2025年提花圈絨地毯項目市場調查研究報告
- 醫療健康類數字出版物的傳播技巧與策略
- 外匯政策培訓課件
- 情境賦能:中學小說閱讀教學的深度變革與實踐探索
- 希沃一體機賦能初中物理教學:創新路徑與實踐成效探究
- 嬰幼兒尿布性皮炎護理
- 國網兼職培訓師培訓課件
- 醫保藥品追溯系統協議
- 幼兒園教師游戲指導經驗總結
- 電子元器件的選型與電路設計
- 焊機檢測報告
- 2024-年廣州市小升初英語真題含答案
- 師范生個人就業能力展示
- 行政管理(專科)畢業實習
- 2024年中國鐵路濟南局集團有限公司招聘筆試參考題庫含答案解析
- 河南近10年中考真題物理含答案(2023-2014)
評論
0/150
提交評論