匯編語言程序設(shè)計(jì)模擬試題七_(dá)第1頁
匯編語言程序設(shè)計(jì)模擬試題七_(dá)第2頁
匯編語言程序設(shè)計(jì)模擬試題七_(dá)第3頁
匯編語言程序設(shè)計(jì)模擬試題七_(dá)第4頁
匯編語言程序設(shè)計(jì)模擬試題七_(dá)第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、模擬試題七一 選擇題。(單項(xiàng)選擇,30分)1. 用來存放下一條將要執(zhí)行的指令代碼段位置的寄存器是( )。A. SP B. ES C. IP D. CS2. 要使串處理指令從高位置向低位置順序連續(xù)執(zhí)行,應(yīng)先執(zhí)行的指令是( )。A. STI B. CLC C. STD D. CLD3. 已知(AL)41H,(AH)5AH,CPU執(zhí)行SUB AL,AH指令后,標(biāo)志寄存器各位的值正確的是( )A. SF1,ZF0,CF1,OF0B. SF0,ZF0,CF1,OF0C. SF1,ZF0,CF0,OF1D. SF0,ZF1,CF0,OF14. 使?fàn)顟B(tài)標(biāo)志位CF清零的錯誤指令是( )。A. SUB AX,A

2、X B. CLC C. OR AX,AX D. MOV CF,05. 下面的數(shù)據(jù)傳送指令中,錯誤的操作是( )。A. MOV WORD PTRBX,1000H C. OUT 200, ALB. MOV CX,1000H D. MOV BP+DI,1000H6. SAR(算術(shù)移位指令)可作一定程度上的除2運(yùn)算,若AL中的內(nèi)容為-3,則指令SAR AL,1執(zhí)行后,AL中補(bǔ)碼數(shù)的值為( )A. -3 B. -1.5 C. -1 D. -27. 宏MyMacro定義如下:MyMacro Macro A,B,CCMP A,BJL LESSMOV C,AJMP DONELESS: MOV C,BDONE:

3、 ENDM則下列調(diào)用方式正確的是:( )A. MyMacro 1000H, bx, cxB. CALL MyMacro ax, 2, cxC. MyMacro 1000H, 1002H, cxD. MyMacro ax, bl, 18. 執(zhí)行下列指令后,SP寄存器的值正確的是( )。MOV SP, 2000HPUSH BXA. 1FFFH B. 1FFEH C. 2001H D. 2002H9. 完成BL+CLAL的錯誤操作是( )。A. ADD AL,BLC. XCHG AL,CLADD AL,CLADD AL,BLB. ADD BL,CLD. MOV AL,BLMOV AL,BLADD A

4、L,CL10. 執(zhí)行下面指令序列后,正確的結(jié)果是( )。MOV AH,40HADD AH,AHADC AH,AHADC AH,AHA. AH=00H B. AH=100H C. AH=200H D. AH=01H11. 執(zhí)行下列程序段后,正確的結(jié)果是( )。MOV AL,80HMOV BL,08HCBWIDIV BLA. AH=00H B. AH=0FFH C. AH=00H D. AH=0FFHAL=10HAL=0F0HAL=0F0HAL=10H12. 完成當(dāng)BX0時轉(zhuǎn)GREAT,當(dāng)BX0時轉(zhuǎn)LITTLE,錯誤的操作是( )。A. OR BX,BXC. CMP BX,0JS LITTLEJG

5、E GREATGREAT: LITTLE:B. TEST BX,8000HD. MOV AX,BXJZ GREATJS LITTLE LITTLE: GREAT:13. 定義如下位置表:ADDRTABLE DW L1,L2,L3,L4,L5,L6,則指令JMP ADDRTABLE4轉(zhuǎn)入的標(biāo)號是( )A. L2 B. L3 C.L4 D.L514. 下面指令組完成將字單元BUF1和BUF2的內(nèi)容互換,錯誤的操作是( )。A. XCHG BUF1,BUF2C. MOV AX,BUF1XCHG AX,BUF2MOV BUF1,AXB. MOV AX,BUF1D. MOV AX,BUF1MOV BX,

6、BUF2MOV BX,BUF2MOV BUF2,AXXCHG AX,BXMOV BUF1,BXMOV BUF1,AXMOV BUF2,BX15. 兩個模塊中分別定義兩個邏輯段S1,S2,下列不是S1、S2合并的必要條件的是( )A. S1、S2的組合屬性必須都為PUBLIC或者STACKB. S1、S2的對齊屬性必須相同C. S1、S2的類別必須相同D. S1、S2的段名必須相同二 填空題。(20分)1. 為了方便用戶使用外設(shè),IBMPC機(jī)提供了兩種典型的例行子程序供用戶編程調(diào)用,它們是 和 系統(tǒng)功能調(diào)用。它們都是系統(tǒng)編制的子程序,通過 方式來調(diào)用所需的子程序。2. 在算術(shù)運(yùn)算中,判斷無符號數(shù)

7、運(yùn)算是否溢出應(yīng)根據(jù)標(biāo)志位 ,判斷有符號數(shù)運(yùn)算是否溢出應(yīng)根據(jù)標(biāo)志位 。3. 8086/8088系統(tǒng)中,一個20位的物理位置是由 和 組成的。已知(BX)0008H,(SI)=0002H,變量Buffer的偏移位置為1000H,當(dāng)前(DS)1000H。CPU在執(zhí)行XCHG AX,BufferBXSI時,尋址的物理位置為 。4. 80386系統(tǒng)中,(EAX)=00001234H, (EBX)=00000002H, 則操作數(shù)4EAXEBX*4的位置為: 。5. 模塊1中定義了WORD型的變量BUFFER,在模塊2中要直接使用BUFFER。為支持模塊1和模塊2通訊,模塊1中使用的偽指令為: ,模塊2為:

8、 。6. 寫出對應(yīng)指令,完成如下功能。a) 將AX的低四位清零,其它不變。 b) 將BX的低四位置1,其它不變。 c) 將CX的低四位求反,其它不變。 7. 用數(shù)據(jù)定義偽指令定義數(shù)據(jù)塊BLOCK,要求數(shù)據(jù)依次為:3個BYTE型的1,5個WORD型的0,7個DWORD型的1。 8. 設(shè)有宏定義如下:SHIFT MACRO X,YMOV CL,XSAL Y,CLENDM請將宏調(diào)用語句:SHIFT 5,BX進(jìn)行宏展開后的指令序列為: 。9. 8088/8086系統(tǒng)中,8號定時器中斷的中斷向量的偏移位置和段位置存放在內(nèi)存中的物理位置分別為 和 。10. DEBUG調(diào)試環(huán)境中,反匯編命令是: ;單步執(zhí)行

9、命令是 ;內(nèi)存查看命令是 。三 分析下面程序段,回答指定問題。(15分)1.MOV AL,BLNOT ALADD AL,BL問:該程序段執(zhí)行后:AL= ,CF= 。2.MOV AL,10HMOV BL,ALSHL AL,1SHL AL,1ADD AL,BLSHL AL,1問: 該程序段完成的功能是 。該程序段執(zhí)行后:AL= ,BL= 。3.設(shè)AX=1234H,BX=3456H,CX=5678H執(zhí)行: MOV CH,AHMOV CL,ALXCHG BX,CXMOV AH,CHMOV AL,CL問: 該程序段完成的功能是 。 AX= ,BX= ,CX= 。四 編寫完成下述功能的程序片段。(15分)

10、1. 編寫一中斷服務(wù)子程序ISR,從100號端口讀入一個字節(jié),取反后輸出到101號端口。2在數(shù)據(jù)段中定義了一個字節(jié)緩沖區(qū)AA,附加段中定義了個字節(jié)緩沖區(qū)BB,長度都為100。用MOVSB指令將AA中的數(shù)據(jù)全部復(fù)制到BB。3在C語言中定義了一個字節(jié)型數(shù)組DATA,要求用_asm嵌入?yún)R編程序,來找出其中正數(shù)的個數(shù),送入字節(jié)變量nPos中。C程序給出如下,編寫嵌入的匯編代碼。int main()char DATA100 = -1,0,1,2,-2,; /定義字節(jié)型緩沖區(qū)char nPos = 0; /保存結(jié)果_asm /嵌入?yún)R編語言 /在此處編寫嵌入的匯編代碼return 0;五 程序設(shè)計(jì)。(編寫完

11、整的程序,20分)1SCORE緩沖區(qū)中有100個無符號WORD數(shù),求它們的平均值,送入AVERAGE字單元。 2DATA緩沖區(qū)存放有10個無符號字節(jié)型數(shù)據(jù), RESULT緩沖區(qū)存放有10個無符號字型數(shù)據(jù)。現(xiàn)定義函數(shù)Y=f(X)=X2 +X1。編程完成將DATA中的數(shù)依次按f(X)計(jì)算,并將結(jié)果分別送入RESULT中。要求:計(jì)算f(X)部分用子程序CalcF實(shí)現(xiàn),并且傳入傳出參數(shù)全部通過堆棧進(jìn)行傳遞。模擬試題七參考答案一 選擇題(15*2 =30)DCADD DABAD CDBAB二 填空(每題2)1. DOS, BIOS, 中斷2. CF OF3. 段位置 偏移位置 1100AH4. 0000

12、1240H5. public BUFFER extern/extrn BUFFER: word6.a) AND AX,0FFF0Hb) OR BX,000FHc) XOR CX,000FH7. BLOCK DB 3 DUP(-1) DW 5 DUP(0) DD 7 DUP(1) 8. MOV CL,5SAL BX,CL9. 00020H 00022H10. U T D三 分析下面程序段,回答指定問題 (每題5)1 AL= 0FFH,CF= 0。2 該程序段完成的功能是AL10, AL= 0A0H 或 160 ,BL= 10H3 該程序段完成的功能是AX和BX的內(nèi)容互換。 AX= 3456H ,

13、BX= 1234H ,CX= 3456H 四 編寫完成下述功能的程序片段1. (5)ISR PROC FARSTI PUSH AXIN AL, 100NOT ALOUT 101,ALPOP AXIRET ISR ENDP2. (5)MOV CX,100CLDLEA SI,AALEA DI,BBREP MOVSB3. (5)MOV CX,100MOV ESI,0MOV AL,0AGAIN:CMP DATAESI,0JLE/JNG NEGATIVEINC ALNEGATIVE:INC ESILOOP AGAIN五 程序設(shè)計(jì)。1. (10)DATA SEGMENT (程序框架2)SCORE DW 1

14、00 DUP(?)DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV CX,100 MOV SI,0AGAIN:ADD AX, SCORESI ADC DX,0 ADD SI,2LOOP AGAINMOV BX,100DIV BXMOV AVERAGE, AXMOV AH,4CHINT 21HCODE ENDSEND START2. (10)DATASEG SEGMENT DATA DB 10 DUP(1)RESULT DW 10 DUP(?)DATASEG ENDSCODE SEGMENTASSUME DS:DATASEG,CS:CODESTART:MOV AX,DATASEGMOV DS,AXMOV CX,10 MOV SI,0MOV DI,0AGAIN:SUB SP,2 MOV AL,DATASIPUSH AX CALL CalcFPOP RESULTDI INC SI ADD DI,2 LOOP A

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論