計(jì)算機(jī)組成原理18-計(jì)算機(jī)組成原理答案-第七章.ppt
8. 某機(jī)指令字長16位,每個(gè)操作數(shù)的地址碼為6位,設(shè)操作碼長度固定, 指令分為零地址、一地址和二地址三種格式。若零地址指令有M種, 一地址指令有N種,則二地址指令最多有幾種?若操作碼位數(shù)可變, 則二地址指令最多允許有幾種? 解:1)若采用定長操作碼時(shí),二地址指令格式如下: 4 6 6,此時(shí),無論指令中有幾個(gè)地址,指令格式都不變。,設(shè)二地址指令有K種,則: K = 24 M N 當(dāng)M=1(最小值),N=1(最小值)時(shí),二地址指令最多有: Kmax=16-1-1=14種 2)若采用變長操作碼時(shí),二地址指令格式仍如1)所示,但操作碼長度可隨地址碼的個(gè)數(shù)而變。 Kmax=16-1=15種(只留一種編碼作擴(kuò)展標(biāo)志用。),10. 試比較基址尋址和變址尋址。 解:比較如下: 1)都可有效地?cái)U(kuò)大指令尋址范圍。 2)基址尋址時(shí),基準(zhǔn)地址由基址寄存器給出,地址的改變反映在位移量A的取值上; 變址尋址時(shí),基準(zhǔn)地址由A給出,地址的改變反映在變址值的自動(dòng)修改上,變址值由變址寄存器給出。 3)基址寄存器內(nèi)容通常由系統(tǒng)程序設(shè)定,變址寄存器內(nèi)容通常由用戶設(shè)定。 4)基址尋址適用于程序的動(dòng)態(tài)重定位,變址尋址適用于數(shù)組或字符串處理,適用場合不同。,11. 畫出先變址再間址及先間址再變址的尋址過程示意圖。 解:1)設(shè)形式地址為A,變址寄存器為IX,則先變址再間址尋址過程示意如下: (一重間址) EA=(IX)+A (IX)+1IX,OP M A,IR,IX,EA,操作數(shù),+1,ALU,MM,2)先間址再變址尋址過程示意: EA=(IX)+(A) (IX)+1IX,OP M A,IR,IX,操作數(shù),+1,ALU,MM,EA,12. 畫出SUB R1指令對(duì)操作數(shù)的尋址及減法過程的流程圖。設(shè)被減數(shù)和結(jié)果存于ACC中,表示間接尋址,R1寄存器的內(nèi)容為2074H。 解: SUB R1指令尋址及減法過程的流程圖:,取指令(可省),尋址操作: 寄存器間址 EA=(R1) =2074H,EA MAR,讀,M(EA) MDR,(ACC)-(MDR) ACC,A,A,(公操作),13. 畫出執(zhí)行ADD *-5指令(*為相對(duì)尋址特征)的信息流程圖。設(shè)另一個(gè)操作數(shù)和結(jié)果存于ACC中,并假設(shè)(PC)=4000H。 解:由于本題未指定數(shù)據(jù)通路結(jié)構(gòu),因此只能大概地排一下信息流程圖,并且流程圖中突出尋址過程的實(shí)現(xiàn)。 ADD *-5指令信息流程圖如下:,取指令(可?。?尋址計(jì)算: EA=(PC)-5 =4000H+FFFBH =3FFBH,EA MAR,讀,M(EA) MDR,(ACC)+(MDR) ACC,A,A,(公操作),14. 設(shè)相對(duì)尋址的轉(zhuǎn)移指令占兩個(gè)字節(jié),第一個(gè)字節(jié)是操作碼,第二個(gè)字節(jié)是相對(duì)位移量,用補(bǔ)碼表示。假設(shè)當(dāng)前轉(zhuǎn)移指令第一字節(jié)所在的地址為2000H,且CPU每取出一個(gè)字節(jié)便自動(dòng)完成(PC)+1PC的操作。試問當(dāng)執(zhí)行JMP *+8和JMP *-9指令時(shí),操作數(shù)的地址是什么? 解:據(jù)題意,相對(duì)尋址的轉(zhuǎn)移指令格式如下:,2000H 2001H 2002H,當(dāng)執(zhí)行JMP指令時(shí),指令第二字節(jié)的內(nèi)容不變,PC的內(nèi)容變?yōu)?002H。此時(shí)轉(zhuǎn)移指令第二字節(jié)內(nèi)容各為: A1= +8 = 0000 1000 = 08H A2= -9 = 1111 0111 = F7H 其有效地址各為: EA1= (PC) +8 = 2002H+0008H = 200AH EA2= (PC) 9 =2002H+FFF7H = 1FF9H,16. 某機(jī)主存容量為4M16位,且存儲(chǔ)字長等于指令字長,若該機(jī)指令系統(tǒng)可完成108種操作,操作碼位數(shù)固定,且具有直接、間接、變址、基址、相對(duì)、立即等六種尋址方式,試回答: (1)畫出一地址指令格式并指出各字段的作用;,解: (1)單字長一地址指令格式: 7 3 6,各字段的作用: OP操作碼字段,提供至少108種指令操作碼; M尋址方式碼字段,指出6種尋址方式; A形式地址字段,給出尋址所需的形式地址。,16. 某機(jī)主存容量為4M16位,且存儲(chǔ)字長等于指令字長,若該機(jī)指令系統(tǒng)可完成108種操作,操作碼位數(shù)固定,且具有直接間接、變址、基址、相對(duì)、立即等六種尋址方式,試回答: (2)該指令直接尋址的最大范圍; (3)一次間址和多次間址的尋址范圍; (4)立即數(shù)的范圍(十進(jìn)制表示); (5)相對(duì)尋址的位移量(十進(jìn)制表示);,解: (2)A為6位,該指令直接尋址的最大范圍為26=64字; (3)一次間址的尋址范圍為216=64K字; 多次間址的尋址范圍為215=32K字; (多次間址尋址時(shí):首位為1:繼續(xù)訪問尋址,首位0:尋址結(jié)束。) (4)立即數(shù)的范圍:若采用補(bǔ)碼表示為1FH20H; 十進(jìn)制表示為31 -32;無符號(hào)數(shù)為063; (5)相對(duì)尋址的位移量范圍在采用補(bǔ)碼表示時(shí)同立即數(shù)范圍。,16. 某機(jī)主存容量為4M16位,且存儲(chǔ)字長等于指令字長,若該機(jī)指令系統(tǒng)可完成108種操作,操作碼位數(shù)固定,且具有直接間接、變址、基址、相對(duì)、立即等六種尋址方式,試回答: (6)上述六種尋址方式的指令哪一種執(zhí)行時(shí)間最短?哪一種最長? 為什么?哪一種便于程序浮動(dòng)?哪一種最適合處理數(shù)組問題? (7)如何修改指令格式,使指令的尋址范圍可擴(kuò)大到4M? (8)為使一條轉(zhuǎn)移指令能轉(zhuǎn)移到主存的任一位置,可采取什么措施? 簡要說明之。,解: (6)六種尋址方式中,立即尋址指令執(zhí)行時(shí)間最短,因?yàn)榇藭r(shí)不需尋址;間接尋址指令執(zhí)行時(shí)間最長,因?yàn)閷ぶ凡僮餍柙L存一次到多次; 相對(duì)尋址便于程序浮動(dòng),因?yàn)榇藭r(shí)操作數(shù)位置可隨程序存儲(chǔ)區(qū)的變動(dòng)而改變,總是相對(duì)于程序一段距離; 變址尋址最適合處理數(shù)組問題,因?yàn)榇藭r(shí)變址值可自動(dòng)修改而不需要修改程序。,16. 某機(jī)主存容量為4M16位,且存儲(chǔ)字長等于指令字長,若該機(jī)指令系統(tǒng)可完成108種操作,操作碼位數(shù)固定,且具有直接間接、變址、基址、相對(duì)、立即等六種尋址方式,試回答: (7)如何修改指令格式,使指令的尋址范圍可擴(kuò)大到4M? (8)為使一條轉(zhuǎn)移指令能轉(zhuǎn)移到主存的任一位置,可采取什么措施? 簡要說明之。,解:(7)為使指令尋址范圍可擴(kuò)大到4M,需要有效地址22位,此時(shí)可 將單字長一地址指令的格式改為雙字長,如下圖示:,圖中,指令的第一字保持原來格式不變,形式地址A擴(kuò)展到第2個(gè)字。這樣, 直接尋址時(shí),EA=A=16+6=22位,正好可訪問4M地址空間。由于A的擴(kuò)展, 變址、基址、相對(duì)、立即數(shù)等尋址方式也擴(kuò)展到22位。 (8)如使一條轉(zhuǎn)移指令能轉(zhuǎn)移到主存的任一位置,可采用上述雙字長一地址 指令,通過選用合適的尋址方式完成。(如選用直接尋址就可轉(zhuǎn)移到主 存任一位置,但選用相對(duì)尋址則只能在2M范圍內(nèi)轉(zhuǎn)移。) 除此之外,(7)、(8)兩題也可通過段尋址方式達(dá)到擴(kuò)大尋址空間的 目的??傊?,不論采取何種方式,最終得到的實(shí)際地址應(yīng)是22位。,17 . 舉例說明哪幾種尋址方式在指令的執(zhí)行階段不訪問存儲(chǔ)器?哪幾種尋址方式在指令的執(zhí)行階段只需訪問一次存儲(chǔ)器?完成什么樣的指令,包括取指令在內(nèi)共訪問四次存儲(chǔ)器? 解:舉例如下: 1)一地址指令在執(zhí)行階段不訪存的尋址方式有: 寄存器尋址、立即尋址。 2)一地址指令在執(zhí)行階段只訪存一次的尋址方式有: 寄存器間接尋址、直接尋址、基址尋址、變址尋址、相對(duì)尋址。,3)包括取指在內(nèi)共訪存四次的指令有: 二重間址的一地址指令; 一重間址的二地址指令,當(dāng)另一操作數(shù)采用直接、基址、變址、相對(duì)、寄存器間接尋址時(shí)。,