資源描述:
《實(shí)驗(yàn)1MIPS指令系統(tǒng)和MIPS體系結(jié)構(gòu)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、實(shí)驗(yàn)1MIPS指令系統(tǒng)和MIPS體系結(jié)構(gòu)092854趙亞明1.實(shí)驗(yàn)?zāi)康?1)了解和熟悉指令級(jí)模擬器;(2)熟練掌握MIPSsim模擬器的操作和使用方法;(3)熟悉MIPS指令系統(tǒng)及其特點(diǎn),加深對(duì)MIPS指令操作語義的理解;(4)熟悉MIPS體系結(jié)構(gòu)。2.實(shí)驗(yàn)內(nèi)容首先要閱讀MIPSsim模擬器的使用方法,然后了解MIPSsim的指令系統(tǒng)和匯編語言。(1)啟動(dòng)MIPSsim(用鼠標(biāo)雙擊MIPSsim.exe)。(2)選擇“配置”->“流水方式”選項(xiàng),使模擬器工作在非流水方式。(3)參照使用說明,熟悉MIPSsim模擬器的操作和使用方法??梢韵容d入一個(gè)樣例程序(在本模擬器所在
2、的文件夾下的“樣例程序”文件夾中),然后分別以單步執(zhí)行一條指令、執(zhí)行多條指令、連續(xù)執(zhí)行、設(shè)置斷點(diǎn)等的方式運(yùn)行程序,觀察程序的執(zhí)行情況,觀察CPU中寄存器和存儲(chǔ)器的內(nèi)容的變化。(4)選擇“文件”->“載入程序”選項(xiàng),加載樣例程序alltest.asm,然后查看“代碼”窗口,查看程序所在的位置(起始地址為0x00000100)。(5)查看“寄存器”窗口PC寄存器的值:[PC]=0X00。(6)執(zhí)行l(wèi)oad和store指令,步驟如下:1)單步執(zhí)行一條指令(F7)。2)下一條指令地址為=0X04,是一條有(有,無)符號(hào)載入字節(jié)(字節(jié),半字,字)指令。3)單步執(zhí)行一條指令(F5)
3、。4)查看R1的值,[R1]=0XFFFFFFFFFFFFFF80。5)下一條指令地址為0x00000008,是一條有(有,無)符號(hào)載入字(字節(jié),半字,字)指令。6)單步執(zhí)行1條指令。7)查看R1的值,[R1]=0X80。8)下一條指令地址為,是一條無(有,無)符號(hào)載入字節(jié)(字節(jié),半字,字)指令。9)單步執(zhí)行1條指令。10)查看R1的值,[R1]=0X80。11)單步執(zhí)行1條指令。12)下一條指令地址為0X14,是一條保存字(字節(jié),半字,字)指令。13)單步執(zhí)行一條指令(F5)。14)查看內(nèi)存BUFFER處字的值,值為0X80。(7)執(zhí)行算術(shù)運(yùn)算類指令。步驟如下:1)雙
4、擊“寄存器”窗口中的R1,將其值修改為2。2)雙擊“寄存器”窗口中的R2,將其值修改為3。3)單步執(zhí)行一條指令。4)下一條指令地址為0x_20___,是一條加法指令。5)單步執(zhí)行一條指令。6)查看R3的值,[R3]=0x___05_。7)下一條指令地址為0x__24__,是一條乘法指令。8)單步執(zhí)行一條指令。9)查看LO、HI的值,[LO]=0x0000000000000006,[HI]=0x0000000000000000。(8)執(zhí)行邏輯運(yùn)算類指令。步驟如下:1)雙擊“寄存器”窗口中的R1,將其值修改為0XFFFF0000。2)雙擊“寄存器”窗口中的R1,將其值修改為
5、0XFFFF0000。3)單步執(zhí)行一條指令。4)下一條指令地址為0x__30__,是一條邏輯與運(yùn)算指令,第二個(gè)操作數(shù)尋址方式是__寄存器直接尋址___(寄存器直接尋址,立即數(shù)尋址)。5)單步執(zhí)行一條指令。6)查看R3的值,[R3]=0xFF000000____。7)下一條指令地址為0x_34___,是一條邏輯或指令,第二個(gè)操作數(shù)尋址方式是__立即數(shù)尋址___(寄存器直接尋址,立即數(shù)尋址)。8)單步執(zhí)行一條指令。9)查看R3的值,[R3]=0x__00__。(9)執(zhí)行控制轉(zhuǎn)移類指令。步驟如下:1)雙擊“寄存器”窗口中R1,將其值修改為2。2)雙擊“寄存器”窗口中R2,將其
6、值修改為2。3)單步執(zhí)行一條指令。4)下一條指令地址為0x___40_______,是一條BEQ指令,其測(cè)試條件是__相等轉(zhuǎn)移________,目標(biāo)地址為0x___4C_______。5)單步執(zhí)行1條指令。6)查看PC的值,[PC]=0x____4C______,表明分支__成功________(成功,失?。?。7)一條指令是一條BGEZ指令,其測(cè)試條件是_____大于等于0轉(zhuǎn)移_____,目標(biāo)地址為0x____58______。8)單步執(zhí)行1條指令。9)查看PC的值,[PC]=0x_____58_____,表明分支____成功____(成功,失?。?0)下一條指令是一
7、條BGEZAL指令,其測(cè)試條件是__小于0轉(zhuǎn)移并鏈接___,目標(biāo)地址為0x___64____。11)單步執(zhí)行1條指令。12)查看PC的值,[PC]=0x____64______,表明分支_____成功_____(成功,失?。徊榭碦31的值,[R31]=0x000000000000005C____。13)單步執(zhí)行1條指令。14)查看R1的值,[R1]=0x00000074__________。15)下一條指令地址為0x___68_______,是一條JALR指令,保存目標(biāo)地址的寄存器為R1______,保存返回地址的目標(biāo)寄存器為R31__