x86指令系統(tǒng)習(xí)題解答.ppt
《x86指令系統(tǒng)習(xí)題解答.ppt》由會員分享,可在線閱讀,更多相關(guān)《x86指令系統(tǒng)習(xí)題解答.ppt(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。
第三章習(xí)題講評,3.1 已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H SI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH。 在以上給出的環(huán)境下,試問下列指令或指令段執(zhí)行后的結(jié)果如何?,(1)MOV CL,[BX+20H][SI] 解:EA= BX+20H+SI=56H PA=DS*16+EA=91D0H+56H=9226H CL=(09226H)=F6H (2)MOV[BP][DI],CX 解: EA= BP+DI=56H PA=SS*16+EA=1E4F6H (1E4F6H)= 5678H,(3)LEA BX,[BX+20H][SI] MOV AX,[BX+2] 解:BX= BX+20H+ SI=0056H EA= BX+2=58H PA=DS*16+EA=91D0H+58H=9228H AX=(09228H)=1E40H (4) LDS SI,[BX][DI] MOV[SI],BX 解:EA= BX+DI=56H, PA=DS*16+EA=91D0H+56H =9226H SI=(09226H)=00F6H, DS=(09228H)=1E40H EA= SI=00F6H, PA=DS*16+EA=1E400H+00F6H=1E4F6H (1E4F6H)= BX=0024H,(5) XCHG CX,[BX+32H] XCHG[BX+20H][SI],AX 解:EA= BX+32H=56H, PA=DS*16+EA=91D0H+56H =9226H (09226H)= CX=5678H , CX=(09226H)=00F6H EA= BX+20H+SI=56H,PA=DS*16+EA=91D0H+56H =9226H AX=(09226H)=5678H ,(09226H) = AX=1234H,3.2設(shè)DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=OE7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H, (21351H)=51H 下列各指令都在此環(huán)境下執(zhí)行,在下列各小題的空格中填入相應(yīng)各指令的執(zhí)行結(jié)果。 (1)MOV AX,1352H AX= 解:AX=1352H,(2)MOV AX,[1352H] ;AX= 解:PA=DS*16+EA=10000H+1352H=11352H (11352H)=0FFH,(11353H)=26H AX=26FFH (3)MOV 0150H[BX],CH (11350H)= (11351H)= 解: EA=BX+0150H=1350H PA=DS*16+EA=10000H+1350H=11350H, CH=33H (11350H)=33H, (11351H)的值不變 ,(11351H)=3CH,(4) MOV AX,0150H[BP] AX=____ 解:EA= BP+0150H=1350H PA=SS*16+EA=20000H+1350H=21350H AX=5188H,(5)POP AX ; AX=____,SP=____ 解:EA= SP=1350H PA=SS*16+EA=20000H+1350H=21350H AX=5188H, SP=1350H+2H=1352H,(6)ADD[SI],CX (11354H)=____,(11355H)=____,SF=____ ZF=____, PF=____, CF=____, OF=____ 解:EA=SI=1354H, PA=DS*16+EA=10000H+1354H=11354H CX=339AH, (11354H)=52H,(11355H)=OE7H 0E752H+339AH=11AECH-(11355H): (11354H) (11354H) =0ECH, (11355H)= 1AH,(11354H) =0ECH, (11355H)= 1AH CF=1,ZF=0, PF(低八位奇偶校驗):0ECH= 11101100B?PF=0 SF(最高位狀態(tài)),1H=0001B?SF=0 OF(溢出標(biāo)志) 0E752H=1110011101010010B 339AH=11001110011010B 1110011101010010 + 11001110011010 10001101011101100,(7)SUB BH,0150H[BX][SI] BH=____,SF=____,ZF=____,PF=____,CF=____,0F=____ 解:EA=0150H+BX+SI=26A4H;PA=DS*16+EA=10000H+26A4H=126A4H; (126A4H)=9DH,BH=12H BH=75H, SF=0,ZF=0,PF=0, CF=1 ,OF=0,(8)INC BYTE PTR 0152H[BX] (11352H)=____,(11353H)=____,CF=____ 解:EA=0152H+ BX= 1352H,PA=DS*16+EA=11352, (11352H)=0FFH, (11352H)=00H, (11353H)= 26H, 不影響CF (9)INC WORD PTR 0152H[BX] (11352H)=____,(11353H)=____,CF=____ 解:EA=0152H+ BX= 1352H, PA=DS*16+EA=11532, (11352H)=0FFH, (11353H)= 26H (11352H)=00H, (11353H)= 27H, 不影響CF,(10)SAR BYTE PTR 0150H[BX],1 (11350H) =____, CF=____, OF=____ 解:EA=BX+0150H=1350H PA=DS*16+EA=11350H, (11350H)=0A5H= 10100101B 11010010B=0D2H, CF=1,OF=0 (當(dāng)移位數(shù)為1是,最高位不變則OF=0) (11)SAL BYTE PTR 0150H[BX],1 (11350H)=____,CF=____,OF=____ 解:EA=BX+0150H=1350H,PA=DS*16+EA=11350, (11350H)=0A5H= 10100101B 01001010B=4AH, CF=1,OF=1,,3、3 設(shè)下列各轉(zhuǎn)移指令的第一字節(jié)在內(nèi)存中的地址為CS=2000H和IP=016EH,且環(huán)境均為DS=6000H,BX=16C0H,(616C0H)=46H,(616C1H)=01H,(616C2H)=00H,(616C3H)=30H,(61732H)=70H,(61733H)=17H。寫出下列各無條件轉(zhuǎn)移指令執(zhí)行后CS和IP值。個指令左首的16進(jìn)制編碼是該指令的機(jī)器碼。指令中的目的地址用相應(yīng)的標(biāo)號表示。 (1)EBE7 JMP SHOURT AGAIN (2)E90016 JMP NEARPTR OTHER (3)E3 JMP BX (4)EA46010010 JMP FAR PROB (5)FF67 JMP WORD PTR 0072H[BX] (6)FFEB JMP DWORD PTR [BX],,解: (1)E7補(bǔ)碼為-19,IP目標(biāo)=IP源+2+EA(即-19) =016EH+2-19=0157H 因為段內(nèi)尋址,所以cs=2000H不變 (2)IP目標(biāo)=IP源+3 +EA=016EH+3+1600H=1771H 因為段內(nèi)尋址 所以cs=2000H不變 (3) IP=16C0H, 因為段內(nèi)尋址 所以cs=2000H不變 (4)段間尋址,有機(jī)器碼可看出IP=0146H CS=3000H (5)段內(nèi)尋址,所以CS=2000H不變 DS*16+0072H+BX=61732H (61732H)=70H,(61733H)=17H IP=1770H (6)PA=DS*16+BX=60000H+16C0H=616C0H (616C0H)=46H (616C1H)=01H IP=0146H (616C2H)=00H (616C3H)=30H CS=3000H,3.4 閱讀下列各小題的指令序列,在后面空格中填入 該指令序列的執(zhí)行結(jié)果。 (1) MOV BL,85H MOV AL,17H ADD AL,BL DAA AL=____, BL=____, CF=____ 解:17H+85H=9CH?AL DAA 壓縮的BCD碼加法十進(jìn)制調(diào)整指令。 (AL的低4位9或AF=1,AL?AL+06H,AF?1; AF是輔助進(jìn)位標(biāo)志用以標(biāo)志D3向D4的進(jìn)位 AL的高4位9或CF=1,AL?AL+60H,CF?1;) AL=9CH+ 06H=0A2H AL=0A2H+60H=02H, BL=85H CF=1,(2) MOV AX,BX;NOT AX; ADD AX,BX; lNC AX AX=____,CF=____ 解:INC不影響標(biāo)志位 AX=0000H, CF=0 (3)MOV AX,0FF60H ; STC ; MOV DX,96 XOR DH,0FFH ; SBB AX DX AX=____,CF=____ 解:XOR 命令 會使 CF?0,OF?0 96=60H,AX=0000H, CF=0 (4)MOV BX,0FFFEH ; MOV CL,2;SAR BX,CL BX=____,CF=____ 解:0FFFEH=1111111111111110B 1111111111111111B,CF=0 1111 1111 1111 1111B,CF=1,3.5 閱讀分析下列指令序列 ADD AX,BX JNO Ll JNO L2 SUB AX,BX JNC L3 JNO L4 JMP L5,(1)AX=14C6H,BX=80DCH 解: ADD AX,BX OF=0,CF=0; L1 (2)AX=0B568H,BX=5487H 解: ADD AX,BX OF=0,CF=1; L1,(3)AX=42C8H,BX=608DH 解:ADD AX,BX CF=0 ,OF=1, AX=0AC55H SUB AX,BX;CF=0,OF=0;L3 (4) AX=0D023H,BX=9FDOH 解:ADD AX,BX OF=1,CF=1,AX=6FF3H SUB AX,BX ;CF=1,OF=1;L5 (5)AX=9FDOH,BX=0D023H 解:ADD AX,BX OF=1,CF=1,AX=6FF3H SUB AX,BX ;CF=1,OF=1;L5,,3.6 AND AL,AL JZ BRCHl RCR AL,1 JZ BRCH2 RCL AL,1 INC AL JZ BRCH3 上述程序運(yùn)行后,試回答:,(1)當(dāng)AL =00H時, 程序轉(zhuǎn)向BRCHl (2)當(dāng)AL =01H時, 程序轉(zhuǎn)向BRCH2 (3)當(dāng)AL =0FFH時, 程序轉(zhuǎn)向BRCH3,,3.7完成下列操作,選用什么指令: (1)將AX的內(nèi)容減去0520H,和上次運(yùn)算的借位; SBB AX,0520H (2)將變量名TABL的段地址送AX。 MOV AX SEG TABL 3.8 D1 DB 20H DUP(?) D2 DW D1 請寫出用一條指令實現(xiàn)取D1的偏移地址 SI中的三種方法。 (A) LEA SI,D1 (B) MOV SI,OFFSET D1 (C) MOV SI,D2,,3.9 程序段1 程序段2 MOV AX , 147BH MOV AX , 99D8H MOV BX , 80DCH MOV BX , 9847H ADD AX , BX SUB AX , BX JNO L1 JNC L3 JNC L2 JNO L4 上述兩個程序段執(zhí)行后,分別轉(zhuǎn)移到哪里? 解:1) L1 2) L3,,3.10 MOV BX , 0FFH AND BX , 0FFFH OR BX , 0F0FH XOR BX , 00FFH 上述程序段運(yùn)行后,BX= 0F00H,CF= 0 (注意:對于8086 的加法和減法操作,使用CF 來標(biāo)識將兩個操作數(shù)看成無符號數(shù)時計算是否發(fā)生了溢出,而OF 則標(biāo)識將兩個操作數(shù)看成有符號數(shù)時的情況。計算CF 位時,加法操作是直接將最高位的進(jìn)位賦給CF,而對于減法操作而言,轉(zhuǎn)換后的補(bǔ)碼加法有進(jìn)位表示實際進(jìn)行的減法沒有借位(即沒有溢出),因此需要將最高位進(jìn)位取反以后賦給CF;對于OF 位的計算則是相同的,通過將最高位的進(jìn)位和次高位的進(jìn)位進(jìn)行異或運(yùn)算,結(jié)果賦給OF(當(dāng)然也可以使用雙符號位來進(jìn)行計算)。當(dāng)然對于減法操作而言,我們也可以簡單地認(rèn)為:對于CF 位,將減數(shù)與被減數(shù)都看成無符號數(shù),如果減數(shù)被減數(shù),則CF=1,否則CF 為0;對于OF 位,若兩個數(shù)的符號相反,而結(jié)果的符號與減數(shù)相同則OF=1,其他情況OF=0。),,3.11 CMP AX , BX JGE NEXT XCHG AX , BX NEXT: CMP AX , CX JGE DONE XCHG AX , CX DONE: …. 試回答: (1)上述程序段執(zhí)行后,原有AX 、BX 、CX中最大數(shù)存放在哪個寄存器中? 最大數(shù)在AX中 (2)這3個數(shù)是帶符號數(shù)還是無符號數(shù)? 是帶符號數(shù),- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- x86 指令系統(tǒng) 習(xí)題 解答
鏈接地址:http://m.zhongcaozhi.com.cn/p-2962335.html