【正文】
005: MVRD R0,4000 2007: DEC R0 2008: JRNZ 2007 2009: JR 2001 200A: RET運(yùn)行主程序,等待、響應(yīng)中斷。在命令行提示符狀態(tài)下輸入: G 2000屏幕將連續(xù)顯示“6”.在程序執(zhí)行過程中接下教學(xué)機(jī)右下方任意一個(gè)無鎖按鍵。此時(shí),教學(xué)機(jī)轉(zhuǎn)向執(zhí)行本級中斷服務(wù)程序。在接收鍵盤一個(gè)字符后,退出當(dāng)前級的中斷服務(wù)程序,恢復(fù)中斷現(xiàn)場,接著執(zhí)行斷點(diǎn)處的程序。若在此期間,又有更高一級的中斷請求,則教學(xué)機(jī)轉(zhuǎn)向執(zhí)行該級的中斷服務(wù)程序。需要注意的是,若當(dāng)前中斷為高級的中斷,則不會響應(yīng)低級中斷。擴(kuò)展提高內(nèi)容:在保證上述案例所有功能條件下,補(bǔ)充實(shí)現(xiàn):(1)按鍵盤上的任意鍵退出中斷過程中要求顯示所按鍵字符;(2)將主程序的死循環(huán)修改為按空格鍵退出循環(huán)。四、實(shí)驗(yàn)結(jié)果及分析實(shí)驗(yàn)結(jié)論:通過中斷可以調(diào)用子程序,同時(shí)中斷可以嵌套,同時(shí)中斷也有優(yōu)先級,優(yōu)先級較高的優(yōu)先調(diào)用,優(yōu)先級較低的要等到優(yōu)先級比他高的中斷調(diào)用以后才調(diào)用。實(shí)驗(yàn)心得體會:通過本次實(shí)驗(yàn)懂得了什么是中斷,同時(shí)也學(xué)會了中斷的調(diào)用,以及中斷的優(yōu)先級和中斷的調(diào)用次序。同時(shí)通過本次實(shí)驗(yàn)我懂了計(jì)算機(jī)內(nèi)部線程與進(jìn)程的調(diào)用。在寫入程序的時(shí)候,監(jiān)控程序的A命令只支持基本指令,擴(kuò)展指令應(yīng)用E命令將指令代碼寫入到相應(yīng)的存儲單元中;上述程序中帶*者為擴(kuò)展指令。在擴(kuò)展實(shí)驗(yàn)中,應(yīng)循環(huán)地址寫為實(shí)驗(yàn)指導(dǎo)書上默認(rèn)的“2007”導(dǎo)致輸入的“6”不能一直循環(huán),導(dǎo)致實(shí)驗(yàn)不能成功,最后在老師的指導(dǎo)下,發(fā)現(xiàn)錯(cuò)誤,及時(shí)將地址改正為“2009”,獲取到循環(huán)值后,最后實(shí)驗(yàn)成功,讓我意識到做實(shí)驗(yàn)時(shí),應(yīng)該準(zhǔn)確、細(xì)心的操作和輸入正確的值。教師評閱:第二篇:計(jì)算機(jī)組成原理實(shí)驗(yàn)ALU設(shè)計(jì)module ALU(ALU_OP,AB_SW,F_LED_SW,LED)。input[2:0] ALU_OP,AB_SW,F_LED_SW。output[7:0] LED。reg[7:0] LED。reg[31:0] A,B,F。reg OF,ZF。always@(*)beginendalways@(*)beginZF=0。OF=0。case(ALU_OP)339。b000: begin F=Aamp。B。end 339。b001: begin F=A|B。end 339。b010: begin F=A^B。end 339。b011: begin F=~(A|B)。end 339。b100: begin {OF,F}=A+B。OF=OF^F[31]。end 339。b101: begin {OF,F}=AB。OF=OF^F[31]。end 339。b110: begin F=A339。b000: begin A=3239。h0000_0000。B=3239。h0000_0000。end 339。b001: begin A=3239。h0000_0003。B=3239。h0000_0607。end 339。b010: begin A=3239。h8000_0000。B=3239。h8000_0000。end 339。b011: begin A=3239。h7FFF_FFFF。B=3239。h7FFF_FFFF。end 339。b100: begin A=3239。h8000_0000。B=3239。hFFFF_FFFF。end 339。b101: begin A=3239。hFFFF_FFFF。B=3239。h8000_0000。end 339。b110: begin A=3239。h1234_5678。B=3239。h3333_2222。end 339。b111: begin A=3239。h9ABC_DEF0。B=3239。h1111_2222。end endcase endcaseif(F==3239。b0)ZF=1。endalways@(*)beginend case(F_LED_SW)339。b000: LED=F[7:0]。339。b001: LED=F[15:8]。339。b010: LED=F[23:16]。339。b011: LED=F[31:24]。default:begin LED[7]=ZF。LED[0]