破解计算机组成原理
特別聲明:雖然劃分了可能考試的題型,但是填空題考成論述題,計算題考成論述題都有可能。
填空題
最大正數(shù):22m?1×(1?2?n)2^{2^m-1}×(1-2^{-n})22m?1×(1?2?n),
最小正數(shù):2?(2m?1)×2?n2^{-(2^m-1)}×2^{-n}2?(2m?1)×2?n,
最大負數(shù):?2?(2m?1)×2?n-2^{-(2^m-1)}×2^{-n}?2?(2m?1)×2?n,
最小負數(shù):?22m?1×(1?2?n)-2^{2^m-1}×(1-2^{-n})?22m?1×(1?2?n)。
例如m=4,n=10,
最大正數(shù):21111×0.1111111112^{1111}×0.11111111121111×0.111111111,
最小正數(shù):2?1111×0.10000000002^{-1111}×0.10000000002?1111×0.1000000000,
最大負數(shù):?2?1111×0.1000000000-2^{-1111}×0.1000000000?2?1111×0.1000000000,
最小負數(shù):?21111×0.1111111111-2^{1111}×0.1111111111?21111×0.1111111111。
論述題
虛擬機器M4(高級語言機器):用編譯程序翻譯成匯編語言程序。
虛擬機器M3(匯編語言機器):用匯編語言翻譯成機器語言程序。
虛擬機器M2(操作系統(tǒng)機器):用機器語言解釋操作系統(tǒng)。
虛擬機器M1(機器語言機器):用微程序解釋機器指令。
虛擬機器M0(微指令系統(tǒng)):由硬件直接執(zhí)行微指令。
- 計算機由運算器,存儲器,控制器,輸入設(shè)備和輸出設(shè)備五大部件組成。
- 指令和數(shù)據(jù)以同等的地位存放于存儲器內(nèi),并可按地址尋訪。
- 指令和數(shù)據(jù)均用二進制數(shù)表示。
- 指令由操作碼和地址碼組成,操作碼用來表示操作的性質(zhì),地址碼用來表示操作數(shù)在存儲器中的位置。
- 指令在存儲器內(nèi)按順序存放。通常,指令是順序執(zhí)行的,在特定條件下,可根據(jù)運算結(jié)果或根據(jù)設(shè)定的條件改變執(zhí)行順序。
- 機器以運算器為中心,輸入輸出設(shè)備與存儲器間的數(shù)據(jù)傳送通過運算器完成。
- 運算器用來完成算術(shù)運算和邏輯運算,并將運算的中間結(jié)果暫存在運算器內(nèi)。
- 存儲器用來存放數(shù)據(jù)和程序。
- 控制器用來控制,指揮程序和數(shù)據(jù)的輸入,運行以及處理運算結(jié)果。
- 輸入設(shè)備用來將人們熟悉的信息形式轉(zhuǎn)換為機器能識別的信息形式。
- 輸出設(shè)備可將機器運算結(jié)果轉(zhuǎn)換為人們熟悉的信息格式。
- 五大部件的分散連接和總線連接滿足隨時增減設(shè)備的需要。
- 總線是連接多個部件的公共信息傳輸線,是各個部件共享的傳輸介質(zhì)。在某一時刻,只允許有一個部件向總線發(fā)送信息,而多個部件可以同時從總線上接受相同的信息。
- 總線是多個部件共享的公共信息傳輸線,連接著多個部件,但每一時刻只能有一個部件向總線發(fā)送信息,如何避免發(fā)送沖突,給信息傳送定時,防止信息丟失,需要總線控制器統(tǒng)一管理。
- 總線控制包括判優(yōu)控制和通信控制。
- 總線判優(yōu)控制:如果多個主設(shè)備要同時使用總線,就由總線判優(yōu)器的判優(yōu)邏輯按照一定的優(yōu)先等級順序確定哪個主設(shè)備能使用總線。
- 總線判優(yōu)控制可分集中式和分布式兩種。前者將控制邏輯集中在一處(如CPU),后者將控制邏輯分散在與總線連接的各個部件或設(shè)備上。常見的集中控制優(yōu)先仲裁方式有三種:鏈式查詢,計數(shù)器定時查詢和獨立請求方式。
- 鏈式查詢方式的特點:只需要3根控制線,就能按照一定的優(yōu)先級次序?qū)崿F(xiàn)總線控制;容易擴充設(shè)備;對電路故障敏感;優(yōu)先級固定,優(yōu)先級低的設(shè)備難以獲得請求。
- 計數(shù)器定時查詢的特點:優(yōu)先級有多種可能:固定—計數(shù)每次從0開始;循環(huán)—每次計數(shù)從上一次計數(shù)的終點開始;可變—計數(shù)器初值由程序設(shè)定。對電路故障不敏感;增加了控制線數(shù)量,需要log2nlog_2nlog2?n根地址線,n為設(shè)備數(shù)量 ;控制更為復(fù)雜。
- 獨立請求方式特點:響應(yīng)速度快,因為BG信號是一對一的;優(yōu)先級次序控制靈活(可程序控制);增加了控制線數(shù)量(2n根),控制比較復(fù)雜。
- 總線通信控制:總線上存在多個主設(shè)備時,在通信時間的分配方面,各設(shè)備按照獲得總線使用權(quán)的先后順序分時占用總線,輪流交替?zhèn)鬏斝畔ⅰ?/li>
- 總線周期就是完成一次總線操作所用的時間,可以分為以下四個階段:申請分配階段(主模塊申請。總線仲裁決定),尋址階段(主模塊向從模塊給出地址和命令),傳數(shù)階段(主模塊和從模塊交換數(shù)據(jù)),結(jié)束階段(主模塊撤銷有關(guān)信息)。
- 總線通信控制是指通信雙方如何獲知傳輸開始和傳輸結(jié)束,以及通信雙方如何協(xié)調(diào)如何配合。
- 總線通信的四種方式:同步通信(由統(tǒng)一時標控制數(shù)據(jù)傳送),異步通信(采用應(yīng)答方式,沒有公共時鐘標準),半同步通信(同步,異步結(jié)合),分離式通信(充分挖掘系統(tǒng)總線每個瞬間的潛力)。
- 同步通信的特點:同步通信對在每個時鐘周期要完成什么動作有明確規(guī)定;主從模塊時間配合屬于強制性同步;對于速度不同的部件而言,必須根據(jù)最慢速度的部件設(shè)計公共時鐘,影響總線工作效率;適用于總線長度較短,各部件存取時間一致的場合。
- 異步通信的特點:異步通信沒有公共的時鐘標準,不要求所有部件嚴格的統(tǒng)一操作時間,因此允許各模塊速度不一致;采用應(yīng)答方式(握手方式):主模塊發(fā)出請求信號時,一直等待從模塊反饋回響應(yīng)信號,才開始通信;異步通信的應(yīng)答方式:不互鎖、半互鎖、全互鎖。
- 半同步通信的特點:同步:發(fā)送方 用系統(tǒng) 時鐘前沿發(fā)信號;接收方 用系統(tǒng) 時鐘后沿 判斷、識別;異步:允許不同速度的模塊和諧工作; 增加一條 “等待”響應(yīng)信號WAIT?^-?;等待慢速設(shè)備時,采用插入時鐘周期的措施協(xié)調(diào)通信雙方的配合。
- 分離式通信的特點:各模塊有權(quán)申請占用總線;采用同步方式通信,不等對方應(yīng)答;各模塊準備數(shù)據(jù)時,不占用總線;總線被占用時,無空閑等待時間;充分提高了總線的有效占用效率。
- 存儲系統(tǒng)層次結(jié)構(gòu)主要體現(xiàn)在緩存-主存和主存-輔存這兩個存儲層次上。
- 緩存-主存層次主要解決CPU和主存速度不匹配的問題。
- 主存-輔存層次主要解決存儲系統(tǒng)的容量問題。
- CPU響應(yīng)中斷的條件和時間:CPU響應(yīng)I/O設(shè)備提出中斷請求的條件是必須滿足CPU中允許中斷觸發(fā)器EINT為“1”。I/O設(shè)備準備就緒的時間(即D=1)是隨機的,而CPU是在統(tǒng)一的時刻(每條指令執(zhí)行階段結(jié)束前)向接口發(fā)中斷查詢信號,以獲取I/O的中斷請求。因此CPU響應(yīng)中斷的時間一定是在每條指令執(zhí)行階段的結(jié)束時刻。
- 一次中斷處理的完整過程包括如下階段:中斷請求,中斷判優(yōu),中斷響應(yīng),中斷服務(wù),中斷返回。
- 中斷服務(wù)程序最后一條指令是一條中斷返回指令,用于從中斷服務(wù)程序返回原程序斷點。
- 中斷服務(wù)程序的流程:保護現(xiàn)場(程序斷點地址的保護:由中斷隱指令完成;寄存器內(nèi)容的保護:由進棧指令完成或者寫入存儲器),中斷服務(wù)(對不同的I/O設(shè)備具有不同內(nèi)容的設(shè)備服務(wù)),恢復(fù)現(xiàn)場(出棧或者取數(shù)指令),中斷返回(中斷返回指令,返回到原程序斷點處,繼續(xù)執(zhí)行原程序)。
- 多重中斷嵌套前提:只有優(yōu)先級更高的新中斷才能中斷當前中斷服務(wù)程序,且只有在EINT=1時才可以。
- 單重中斷和多重中斷在中斷服務(wù)程序流程方面存在區(qū)別:開中斷的時刻不同。(多重中斷在保護現(xiàn)場之后開中斷,單重中斷在中斷返回時開中斷)。
- 操作碼長度固定的優(yōu)劣:譯碼時間短,便于硬件設(shè)計;降低了指令位數(shù)使用效率(指令操作數(shù)個數(shù)變化會導(dǎo)致空出一些位,卻沒有利用),導(dǎo)致指令較長。
- 操作碼長度可變的優(yōu)劣:可以有效壓縮操作碼的平均長度;但增加指令譯碼、分析的難度,控制器設(shè)計復(fù)雜。
- 采用擴展操作碼技術(shù),使得操作碼長度隨地址數(shù)的減少而增加,不同地址數(shù)的指令可以具有不同長度的操作碼,從而在滿足要求的前提下,有效縮短指令字長。
- RISC 的主要特征:選用使用頻度較高的一些簡單指令,復(fù)雜指令的功能由簡單指令來組合; 指令長度固定、指令格式種類少、尋址方式少;只有LOAD / STORE指令訪存;CPU中有多個通用寄存器;采用流水技術(shù)一個時鐘周期內(nèi)完成一條指令;采用組合邏輯實現(xiàn)控制器,采用優(yōu)化的編譯程序 。
- CISC 的主要特征:系統(tǒng)指令復(fù)雜龐大,各種指令使用頻度相差大; 指令長度不固定、指令格式種類多、尋址方式多;訪存指令不受限制;CPU中設(shè)有專用寄存器;大多數(shù)指令需要多個時鐘周期執(zhí)行完畢; 采用微程序控制器; 難以用優(yōu)化編譯生成高效的目的代碼。
- RISC和CISC 的比較:RISC更能充分利用 VLSI芯片的面積;RISC 更能提高計算機運算速度:指令數(shù)、指令格式、尋址方式少,通用寄存器多,采用組合邏輯 ,便于實現(xiàn)指令流水;RISC便于設(shè)計,可降低成本,提高可靠性;RISC有利于編譯程序代碼優(yōu)化 ;RISC不易實現(xiàn)指令系統(tǒng)兼容。
- 中斷響應(yīng):響應(yīng)中斷的條件:允許中斷觸發(fā)器EINT = 1;響應(yīng)中斷的時間:指令執(zhí)行周期結(jié)束時刻由CPU 發(fā)查詢信號;中斷隱指令:保護程序斷點,尋找服務(wù)程序入口地址,硬件關(guān)中斷。
- 保護現(xiàn)場——置屏蔽字——開中斷——中斷服務(wù)——關(guān)中斷——恢復(fù)現(xiàn)場——恢復(fù)屏蔽字——中斷返回。
- 保護現(xiàn)場應(yīng)該包括保護程序斷點和保護CPU內(nèi)部各寄存器內(nèi)容的現(xiàn)場兩個方面。
- 恢復(fù)現(xiàn)場是指在中斷返回前,必須將寄存器的內(nèi)容恢復(fù)到中斷處理前的狀態(tài)。
- 在中斷服務(wù)程序中設(shè)置適當?shù)钠帘巫?#xff0c;能起到對優(yōu)先級別不同的中斷源的屏蔽作用。
- 只有中斷觸發(fā)器EINT = 1時,才可以響應(yīng)中斷。
- 采用微程序設(shè)計方法設(shè)計控制單元的過程就是編寫每一條機器指令對應(yīng)的微程序。
- 任何一條機器指令的取指周期的操作都是一樣的,因此把取指令操作的命令統(tǒng)一編成一個微程序。間址周期、中斷周期也是如此。
- 控制存儲器中微程序的個數(shù)應(yīng)為機器指令數(shù)再加上對應(yīng)取指、間址尋址和中斷周期的3個微程序。
計算題
異步串行傳輸系統(tǒng)
**考試題型:**求總線帶寬,比特率或波特率。
預(yù)測可能考試指數(shù):★★★
需要注意:
- 總線帶寬=總線頻率×總線寬度/8。
- 波特率:單位時間內(nèi)傳送的二進制數(shù)據(jù)的位數(shù),單位:bps(位/秒)。
- 比特率:異步串行通信單位時間內(nèi)傳送的二進制有效數(shù)據(jù)的位數(shù),單位: bps(位/秒)。
存儲器與CPU的連接
**考試題型:**給定CPU的地址線數(shù)目,數(shù)據(jù)線數(shù)目,一系列存儲芯片和主存地址分配要求。選定存儲芯片連接到CPU的地址線,數(shù)據(jù)線,訪存控制信號和讀/寫控制信號。
預(yù)測可能考試指數(shù):★★★★★
需要注意:
- 存儲芯片位擴展增加存儲字長,連入相同的地址線,分別連入不同的數(shù)據(jù)線,片選信號和讀寫信號相連。
- 存儲芯片字擴展增加存儲器字的數(shù)量,連入相同的數(shù)據(jù)線的地位地址線,高位地址線連接片選信號,讀寫信號相連。
- 系統(tǒng)程序區(qū)選擇ROM,用戶工作區(qū)和系統(tǒng)工作區(qū)選擇RAM。
- ROM的讀寫信號應(yīng)接地。
- CPU高位地址線和訪存控制信號經(jīng)譯碼器連接到片選信號(注意譯碼器控制端應(yīng)為有效電平)。
解題步驟:
- 由主存的地址線數(shù)目寫出所有的地址二進制碼,并根據(jù)分配要求分配地址。
- 選取存儲芯片和擴展方式。
- 連接數(shù)據(jù)線,地址線,片選信號,讀寫信號。
Cache——主存地址映射
**考試題型:**給定主存容量,Cache容量,塊長和字大小,根據(jù)不同的映射方式設(shè)計主存地址格式。
預(yù)測可能考試指數(shù):★★★★
需要注意:
- 分清字,位,和字節(jié)及其轉(zhuǎn)換關(guān)系。
- 看清題中給出的尋址方式,按字尋址或按字節(jié)尋址,默認為按字節(jié)尋址。
解題步驟:
以按字節(jié)尋址為例:
- 計算主存2m2^m2m字節(jié),Cache2c2^c2c字節(jié),塊長2i2^i2i字節(jié)。
- 直接映射方式:
- 主存字塊標記|Cache字塊地址|字塊內(nèi)地址:m?c?i∣c?i∣im-c-i|c-i|im?c?i∣c?i∣i
- 全相聯(lián)映射方式:
- 主存字塊標記|字塊內(nèi)地址:m?i∣im-i|im?i∣i
- 二路組相聯(lián)映射方式:
- 主存字塊標記|組地址|字塊內(nèi)地址:m?c?i+1∣c?i?1∣im-c-i+1|c-i-1|im?c?i+1∣c?i?1∣i
- 四路組相聯(lián)映射方式:
- 主存字塊標記|組地址|字塊內(nèi)地址:m?c?i+2∣c?i?2∣im-c-i+2|c-i-2|im?c?i+2∣c?i?2∣i
**考試題型:**計算Cache的命中率和Cache-主存系統(tǒng)的效率。
預(yù)測可能考試指數(shù):★★★★
需要注意:
- Cache的命中率:h=NcNc+Nm\LARGE h=\frac{N_c}{N_c+N_m}h=Nc?+Nm?Nc??,NcN_cNc?為訪問Cache總命中次數(shù),NmN_mNm?為訪問主存次數(shù)。
- Cache-主存系統(tǒng)的效率:e=訪問Cache的時間平均訪問時間\LARGE e=\frac{訪問Cache的時間}{平均訪問時間}e=平均訪問時間訪問Cache的時間?。
- 如果需要訪問的字塊已經(jīng)在Cache中,則不需要再訪問主存。
定點運算
**考試題型:**進行定點數(shù)的移位,加減運算。
預(yù)測可能考試指數(shù):★★★
需要注意:
- 正數(shù)移位補0,負數(shù)原碼補0,反碼補1,補碼左移補0,右移補1。
- 補碼定點加減溢出:(一位符號位)操作數(shù)符號相同,與運算結(jié)果的符號不同;(兩位符號位)兩位符號位不同,高位永遠代表真正的符號。
解題步驟:
- 轉(zhuǎn)化為補碼。
- 運算。
- 判斷溢出。
浮點運算
**考試題型:**進行浮點數(shù)的加減運算。
預(yù)測可能考試指數(shù):★★★★★
需要注意:
- 浮點數(shù)表示:階符,階碼;數(shù)符.尾數(shù)。
- 對階時,小階的尾數(shù)右移轉(zhuǎn)化為大階。
- 規(guī)格化時:符號位與尾數(shù)第一位相同,表示尾數(shù)太小,需要左移尾數(shù),同時階碼減少;兩位符號位不相同時,表示尾數(shù)太大,需要右移尾數(shù),同時階碼變大。
- 舍入原則:0舍1入法;恒置1法。
- 溢出判斷:標準化之后若階符為01,需作溢出處理。
解題步驟:
- 對階。
- 尾數(shù)計算。
- 規(guī)格化。
- 舍入。
- 溢出判斷。
指令格式
**考試題型:**由指令字長,操作碼和地址碼位數(shù),進行零地址,一地址,二地址和三地址的指令個數(shù)的計算。
預(yù)測可能考試指數(shù):★★★
需要注意:
- 采用操作碼固定還是擴展操作碼技術(shù)。
- 固定操作碼時,所有的指令個數(shù)之和為操作碼位數(shù)。
- 擴展操作碼技術(shù)時,一地址的指令個數(shù)是二地址剩下的指令個數(shù)的操作碼之差位數(shù)倍。
尋址方式
**考試題型:**根據(jù)主存容量和操作數(shù)目進行地址指令格式相關(guān)的計算。
預(yù)測可能考試指數(shù):★★★★★
需要注意:
- 操作碼|尋址特征|形式地址。
- 注意指令取單字長還是雙字長。
- 一次間接尋址的尋址范圍是字長,多次間接尋址的尋址范圍是字長減一。
- 立即數(shù)尋址指令執(zhí)行最快,多次間接尋址方式速度最慢,變址尋址便于解決數(shù)組問題,相對尋址的最大特點是轉(zhuǎn)移地址不固定,便于程序浮動。
- 如果要求尋址所有存儲字,可以嘗試采用雙字長指令或間接尋址。
解題步驟:
- 根據(jù)尋址方式確定尋址特征的位數(shù)。
- 根據(jù)操作數(shù)目確定操作碼位數(shù)。
- 剩下的為形式地址位數(shù)。
**考試題型:**相對尋址的轉(zhuǎn)移指令占三字節(jié),求第二三字節(jié)的機器代碼。
預(yù)測可能考試指數(shù):★★★
需要注意:
- 采用以低字節(jié)地址為字地址還是高字節(jié)地址為字地址。
解題步驟:
- PC當前值為n,該指令取出后PC值為n+3,要求轉(zhuǎn)移到m,即相對位移量為m-n-3,轉(zhuǎn)換為補碼。若以低字節(jié)地址為字地址,則第二字節(jié)為補碼,第三字節(jié)為00H或FFH 。
多級時序系統(tǒng)
考試題型: CPU主頻,機器周期,時鐘周期,指令周期和平均指令執(zhí)行速度之間的運算。
預(yù)測可能考試指數(shù):★★★★★
需要注意:
- CPU主頻×?xí)r鐘周期=1。
- 指令周期×平均指令速度=1。
- 主頻單位為Hz,平均指令速度單位為IPS。
- 一個機器周期含多個時鐘周期。
- 一個指令周期含多個機器周期。
- 結(jié)論:機器的速度不僅與主頻有關(guān),還與機器周期中所含的時鐘周期數(shù)以及指令周期中所含的機器周期數(shù)有關(guān)。同樣主頻的機器,由于機器周期所含時鐘周期數(shù)不同,運行速度也不同。機器周期所含時鐘周期數(shù)少的機器,速度更快。。
微指令序列地址的形成
**考試題型:**設(shè)置微指令的編碼方式。
預(yù)測可能考試指數(shù):★★★★★
需要注意:
- 操作控制|下地址。
- 直接編碼方式:每一位代表一個微操作命令,速度快,但是控存容量大。
- 字段直接編碼方式:將微操作的操作控制字段分成若干段,將一組互斥的微操作命令放在一個字段內(nèi),通過對這個字段譯碼,便可對應(yīng)每一個微命令。
- 分支轉(zhuǎn)移:操縱控制字段|轉(zhuǎn)移方式|轉(zhuǎn)移地址。
- 若微程序可在整個控存空間實現(xiàn)轉(zhuǎn)移:下地址×微指令字長=控制存儲器容量。
解題步驟:
- 直接編碼方式:微指令數(shù)目為操作控制位數(shù)。
- 字段直接編碼方式:由互斥的微命令的位數(shù)相加得到操作控制位數(shù)。
- 分支轉(zhuǎn)移:由互斥的可判定的外部條件得轉(zhuǎn)移方式位數(shù)。
- 剩下的為下地址位數(shù)。
總結(jié)
- 上一篇: oracle siebel crm 8.
- 下一篇: IDEA清除Local History