匯編語言學(xué)習(xí)資料_第1頁
匯編語言學(xué)習(xí)資料_第2頁
匯編語言學(xué)習(xí)資料_第3頁
匯編語言學(xué)習(xí)資料_第4頁
匯編語言學(xué)習(xí)資料_第5頁
已閱讀5頁,還剩107頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1匯編語言期末復(fù)習(xí)資料整理(1)通用寄存器器I(2)專用寄存器溢出(是/否)V方向(減量/增量)中斷(允許/關(guān)閉)符號(負/正)G零(是/否)ZF輔助進位(是/否)CA奇偶(偶/奇)CF進位(是/否)CYNCCS(16位)代碼段DS(16位)數(shù)據(jù)段SS(16位)堆棧段ES(16位)附加段4、段寄存器和相應(yīng)存放偏移地址的寄存器之間的默認組合段1、七種尋址方式(舉例)OVOVAX,3069HAL,BH在內(nèi)存中的五種尋址OVOVAX,[2000H]AX,[BX]2尋址址尋址傳送指令OVOVOVMOVAX,COUNT[SI]或者MOVAX,[SI+COUNT](不推薦)AX,[BP][DI]AX,MASK[BX][SI]MOVSX帶符號擴展傳送MOVZX帶零擴展傳送PUSH進棧POP出棧PUSHA/PUSHAD所有寄存器進棧IPOPA/POPAD所有寄存器出棧XCHG交換(只限于使用累加器)IN輸入MOVDATA_WORD,AXOUT輸出3指令LEAREG,SRC寄存器把源操作數(shù)的有效地址送到指定的寄存器中①LDSREG,SRC(1)標(biāo)志寄存器傳送指令PUSHF/PUSHFDPOPFPOPFD(2)指令CBW字節(jié)轉(zhuǎn)換為字CWD字轉(zhuǎn)換為雙字CDQ雙字轉(zhuǎn)換為4字BSWAP字節(jié)交換(1)加法指令A(yù)DD加法ADC帶進位加法INC加14習(xí)題集一DXDX:單項選擇題DU:多項選擇題TK:填空題MC:名詞解釋vvJD:簡答題CXFX:程序分析題CXTK:程序填空題BC:編程題A、宏定義,宏調(diào)用B、宏定義,宏展開C、宏定義,宏調(diào)用,宏展開D、宏定義,宏展開,宏調(diào)用2、匯編語言源程序中,每個語句由四項組成,如語句要完成一定功能,那么該語句中不可省略的項是A、名字項B、操作項C、操作數(shù)項D、注釋項設(shè)備通信。TK進制數(shù)-120規(guī)定如下,請找出其中錯誤的說法(B)DXA.名字的第一個字符可以是大寫英文字母及小寫英文字母B.名字的第一個字符可以是字母、數(shù)字及、@、_C.名字的有效長度≤31個字符D名字中不允許出現(xiàn)$5HFHHFHHDXHEHDXMOVDXDSBPSI)。DXABC.3D.由指令長度決定的3、下列屬于合法的指令是(D)DXA.MOVDS,ESB.MOV[SI],[DI]C.MOVAX,BLD.MOV[DI],BLBHDX6、下列寄存器組中在段內(nèi)尋址時可以提供偏移地址的寄存器組是(B)DXA、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SSA、MOVCS,AXB、MOVDS,AXC、MOVSS,AXD、MOVES,AXA、TESTAL,02HB、ORAL,ALC、CMPAL,BLD、ANDAL,BLMOVAL,82HA、MOVBX,VARB、LDSBX,VARC、LESBX,VARD、LEABX,VARBUFDWHDUPDUP10H),3,5)ADDAL,AH行后完成的運算,正確的算術(shù)表達式應(yīng)是(y=x2-1)。DX6MOVAL,BYTEPTRXSHLAL,1MOVBX,AXA.1234HB.0EDCCHC.6DCCHD.A.DIV2B.DIVDX,2C.SARDX,1D.SHLDX,1DA1DW0AB12H,8574HMOVAXDA1MOVBX,OFFSETDA1上述指令執(zhí)行后,寄存器AX和BX的值分別為(AB12H,40H)。表達式和地址表達式中,錯誤的是(D)。DXA.MOVAL,8*14+4B.MOVSI,OFFSETBUF+13CMOVCX,NUM2-NUM1D.MOVCX,NUM2+NUM1DB10H,50,1X3DD?A、INCCXJZMINUSCANDCXOFFFFHJZMINUSBSUBCX,OFFFFHJZMINUSDXORCX,OFFFFHJZMINUSDRDB10H,30HDRDWHDUPDUP(2))MOVBL,LENGTHDR17SHAXADCAX,0PUSHAXDA1DW’C’,’D’PDADW$-DA2MOVBX,DA3MOVAX,DA1DATAARRAY1ARRAY2EGMENTDB1,26,‘3456’DW7,89H,10EQUARRAY2-ARRAY139、AND,OR,XOR,NOT為四條邏輯運算指令,下面的解釋正確的是(C)DXA.ROLCL,1B.MUL4ROLCL,1C.SHLCL,1D.MOVCL,2SHLCLSHLCL,CL41、下面各傳送指令中,正確的是(C)DXA.MOV[DI],[SI]B.MOV[DX+DI],ALC.MOVWORDPTR[BX],0100HD.MOVAL,BXMOVAX,8833HADDAL,AH8MOVALH②ANDAL,00H③XORAL,AL④SUBAL,ALMOVAXBX②MOVBX,AXPOPBXMOVAX,BXMOVBX,CXADDAL,BLAAA是(AH=01,AL=05)。DXX中,合理而有意義的指令是(④)。DX①REPLODSB②REPSCASB③REPCMPSB④REPMOVSB52、在下列串操作指令中,同時使用源串和目的串地址指針的指令是(D)DXA.STOSWB.LODSWC.SCASWD.CMPSW3、AL=0AH,下列指令執(zhí)行后能使AL=05H的是(C)DXA.NOTALB.ANDAL,0FHC.XORAL,0FHD.ORAL,0FH54、DA1DW‘AB’,‘CD’,‘EF’,‘GH’┇MOVAX,DA1+3XD據(jù)傳送指令中,錯誤的操作是(④)。DX①MOVSS:[BX+DI],1000H②MOVDX,1000H③MOVWORDPTR[BX],1000H④MOVDS,2000HWAHDBFAH:MOVAL,BYTEPRTDAWAL確的結(jié)果是(②)。DXMOVAL,100MOVBL,-2H9HHDA1DB12H,34HDA2DW56H,78H。DX①ADR1DWDA1②MOVDA1+1,AX③MOVBYTEPTRDA2+1,AL④MOVWORDPTRDA1+1,AXTADW0102H,0304H,0506HTA2DB02H,03H,04H:MOVBX,DS:[0006H]ANDBX,0FFHANDBH,[BX]MP(1)MOVAL,[BX](2)MOVCS:[BX+DI],AH0P1DB1,2PDWH8H┇MOVAX,OP1+1;字單元(OP1+1)AXMOVBL,OP2+1;字節(jié)單元(OP2+1)BLMOVAX,WORDPTR(OP1+1)MOVBL,BYTEPTR(OP2+1)句在存儲器中分別為變量分配多少字節(jié)?JD(1)AD2DW10DUP(?),1022(2)AD3DD100DUP(?)400面兩條指令分別是什么語法錯誤?JDMOV[BX],[SI]MOVAX,DLARYDW10DUP(?)┇MOVAL,TYPEARYMOVBL,LENGTHARYMOVCL,SIZEARYALBLDATASEGMENTRGHNUM=8NUM2=NUM1+10HDADB'COMPUTER'DB0AH,0DHDA2DW'CO','MP','UT','ER'TAENDS碼_碼AX=0FF60H,CF=1MOVDX,96XORDHFFHDXXORAL,0FHANDBL,0FHCLFHAX=0A33AH,DX=0F0F0HANDAH,DLXORALDHSHRDX,1(2)RCRDL,1(3)RCLDX,CL答:(1)005CH(2)00DCH(3)05CCH并請寫出最后(AX)=?GDXSBBDX,0PUSHBX\保護現(xiàn)場:POPDXPOPCXPOPBXXAXUPID80、ADW1234HBDW5678H:USHAPUSHBAPOPB①上述程序段執(zhí)行后(A)=__________,(B)=_____②設(shè)執(zhí)行前SP=200H,執(zhí)行后SP=____________AH分)(B)=1234H(2分)②SP=2000H(2分)LBL試問上述程序段運行后,(AX)=_5400H_(BL)=_06H_(DX)=_2106H_MOVAL,200SARAL,1MOVBL,ALMOVCL,2CLADDAL,BL試問程序段執(zhí)行后(BL)=__0E4H_(AL)=__0DDH___83、DA3EQUWORDPTRDA4DADB0ABH,89H┇SHRDA3,1MOVDX,DA3SHLDA4,1SHAXADCAX,0PUSHAX:ANDAL,0FHCALHAHMOVBX,OFFSETSTRINGADDBX,AXMOVBL,[BX]:(1)上述程序段的功能是什么?CXFX顯示器顯示字符‘D’BX=4567HNEGBXNEGBXXFX中定義DAT1DB12H,34H,56H,78HMOVCX,0MOVAX,WORDPTRDAT1DADBH72H,61H,94H,5AH┇MOVCX,WORDPTRDA1ANDCX,0FHMOVAL,DA1+3DATASEGMENTDA3EQU1234HORG0HDA4EQU$-DA2DA1DW12H,23HDA5DB31H,32HDADBH21HDATAENDSRGHMOVBXOFFSETNUMNUMDW12HMOVCL,BYTEPTRNUM+1MOVAX,NUMHLTMOVSI,10HMOVAX,1234HMOV[SI+12H],AXABXSIMOV[SI+14H],BXORDPTRSIHDIDABYMOVCX,32BUFDW5,-265,……SUMDWDUP)TAENDSMOVBH,ALMOVCH,AHMOVAL,AHANDAL,0F0HMOVBL,AHANDBL,0FHMOVCL,BHANDCL,0F0HMOVDL,BHANDDL,0FH┇AXNUMW____MOVBX,500_________DXDXVBXMOVQUI,AX____MOVREM,DX_________中定義DAT1DB12H,34H,56H,78HMOVCX,0MOVAX,WORDPTRDAT1MOVCL,DAT1+3HDADBH72H,61H,94H,5AH┇MOVCX,WORDPTRDA1ANDCX,0FHMOVAL,DA1+3LCL98、DA3EQUWORDPTRDA4DADB0ABH,89H┇SHRDA3,1MOVDX,DA3SHLDA4,1MOVCX,DA3WXDDYDDZDDWDDTA…………ASSUMECS:CODE,DS:DATAOVAXDATAMOVDS,AXMOVAX,XADDAX,YMOVBX,X+2ADCBX,Y+2ADDAX,36ADCBX,0MOVW,AXMOVW+2,BXNDSSTART的是(C)。DXCHDX4、某存儲單元的物理地址是12345H,可以作為它的段地址有(D)DXA2345HB.12345HC.12340HD.1234HDS的指令是(D)DXA.STOSWB.ADDAL,CLC.NEGBXD.INCDA[BX]DOS的軟中斷指令是(B)DXA.INT21B.INT10HCINT16HD.INT21HPUF有哪些?JD答:尋址方式是指尋找指令中操作數(shù)所在地址的方法。A、CMPB、SUBC、ANDD、MOV指令是(JCLOP1)DXTESTBH01H__JNE_______K1XMOVBL,64HMOVCL,03HAXAXAGAIN:ADDAL,BLADCAH,0DECCLNX(2)AX=___012CH_____。MOVDL,ALNOTDLTESTDL,04H┇TESTAX000H__JEK1或JZK1_________MOVPLW,BXK1:__MOVPLW,A___________E___XORAH,AL____ANDAH,08HJEZERO__MOVAH,OFFHZERO:MOVAH,0BUFDBH45H,127,……COUNTEQU$-BUFMAXDB┇MONBX,OFFSETBUFMOVCX,COUNT-1MOVAL,[BX]INCBX____CMPAL,[BX]_________MOVAL,[BX]NEXT:DECCXJNZLOP_____MOVMAX,ALMOVAX,0MOVBX,OFFSETBUFMOVCX,20LOP:ADDAX,[BX]MOVSUM,AX用大寫字母顯示出來。CXPPSUBALHMOVDL,ALMOVAH,2INETANDAL,ALRCRAL,1CHRCLAL,1CH:1)當(dāng)(AL)=__0________時,程序轉(zhuǎn)向BRCH12)當(dāng)(AL)=__1________時,程序轉(zhuǎn)向BRCH23)當(dāng)(AL)=__-1________時,程序轉(zhuǎn)向BRCH3MOVCH,4LAB:MOVCL,4CLMOVDL,BLANDDL,0FHADDDL,30HDLAHTADDDL,7PRINTMOVAH2DECCHBONMOVCX,NUMNEXT:MOVRETT,BLMOVBX,-1HLTDON:INCBXSUBPROCPLUS:TESTBL,80HTESTAL,80HJEEXITOJEPLUSXCHANGEXCHGAL,BLTESTBL,80HEXITO:RETPANGE(1)子程序的功能是什么?(2)若調(diào)用子程序前AL=9AH,BL=77H,則返回主程序時,AL=______,BL=______。STARTLEASIBLOCKNEXT:INCSIMOVCX,[SI]LOOPLOP1MOVAL,[SI]HLT請問:(1)該程序完成的功能是什么?(2)該程序循環(huán)的次數(shù)是多少?ORG100HCOUNTEQU($-BLOLOK)/2LEABX,BLOK-2MOVCX,RESULTRAXAXGOON:ADDBX,2CMPAX,[BX]MOVAX,[BX]NEXT:LOOPGOONMOVRESULT+2,AXBX_________BX=100H+2×(COUNT-1)程序循環(huán)次數(shù)=COUNTOVAXXBAXYSTRINGDB‘COMPUTER’,‘$’┇MOVBX,0FFSETSTRINGLOP:MOVDL,[BX]MOVAH,02HINCBX___________CMP[BX],24H________P____XORAH,AL_______________ANDAH,08HJEZERO______MOVAH,OFFHZERO:MOVAH,0MOVCX,10JCEND0MOVSUM,AXDON:INCBX ADCAH,0ENDO:HLT程序,要求對鍵盤輸入的小寫字母用大寫字母顯示出來。BCPPSUBALHMOVDL,ALMOVAH,2INETDATASEGMENTDADWXXXXDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXEASIDAMOVCX,16RBLBLAGAIN:MOVAL,[SI]HLAL1NEXT:INCSILOOPAGAINTESTBLHNELPDONELSTCDONE:MOVAH,4CHEENDSNDSTARTKEY:MOVAH,1ATASEGMENTBUF1DW-56,24,54,-1,89,-8,BUF2DW45,-23,124,345,-265,UMDWDUPTAENDSTACKSEGMENTPARASTACKDW0HDUP(0)NDSSEGMENTASSUMECS:CODE,DS:DATA,SS:STACK1MOVAXDATAMOVDS,AXMOVCX,10SIBUFDIBUFLEABXSUMNEXT:MOVAX,[SI]MOVDX,[DI]TESTAX0HGAXTDX:TESTDX,8000HNEGDXADDS:ADDAX,DXMOV[BX],AXADDSI,2ADDDI,2ADDBX,2XTMOVAH,4CHNDSSTARTASISTRMOVAL,ODHXORCX,CXGOON:CMPAL,[SI]ONNEXT:MOVCOUNT,CXKSEGMENTARRAYDW23ABH,1570H,567,1765H,46,5210HCOUNTEQU($-ARRAY)/2DB?DB?IARRAYMOVCX,COUNTLOP1:MOVAX,[SI] TESTAX01HPLOPOPINCBHDECCXLOPMOVDA1,BLMOVDA2,BHx0序y=0x=0X;EDB45HDB?EGMENTASSUMECS:CODE,DS:DATASTART:MOVMOVMOVMOVCMPJGEMOVJMPNEXT1:CMPAX,DATADS,AXAL,XXXAH,0AL,0NEXT1BL,-1AL,0NEXT2MOVBL,1EXTMOVVERMOVVAHCHNDSSTARTWRPROCUSHOVAGAIN:MOVCMPJBCMPJAORXAL,[SI]ALALAL,’A’XTAL,’Z’XTAL,20H(或者ADDAL,30H)STRLWRENDPA、MOVAL,BUFSHRAL,1MOVAL,0BMOVAL,BUFANDAL,11MOVAL,0VALBUFTESTVALBUFTESTAL1HMOVAL,MOVAL,0K3:……MOVAL,0 A.MOVCX,0B.MOVCX,1LOPLOOPLOPLOP:LOOPLOPC.MOVCX,0FFFFHD.MOVCX,256LOPLOOPLOPLOP:LOOPLOPEGMENTS9DB0,1,2,3,4,5,6,7,8,9TAENDS┇LEASI,S9LEADIS1MOVCX,5XCHGAL,[DI]MOV[SI],ALADDSI,2ADDDI,2S9DB1,0,3,2,5,4,7,6,9,8ROLDX,2SHLDX,2LOP:SHLAX,1RCLDX,1LOOPLOPSHLAX,1RCLDX,1RCLDX,1A.JMPNEXTB.JCNEXTC.INCBXD.SHLAX,1令執(zhí)行時出錯的是(A)。DXTESTAL指令的表示中,不正確的是(C)。DXA.MOVAL,[BX+SI]B.JMPSHORTDONIC.DEC[BX]D.MULCLA。DXA之內(nèi)MOVAX,0MOVBX,1MOVCX,100A:ADDAX,BX行后(BX)=(101)。DXAX50)。DXAGAIN:MOVAL,[SI]MOVES:[DI],ALDA1DB‘ABCDEFGHI’DADB9DUP(0)┇SIDADIDAMOVCX,9SUBAL,10HPLOP...程序功能情況下,程序中可否改寫為BLK1DB46,84,34,-5,20,122,73:MOVCX,7ASBLKTESTAL,81HMOVBL,[SI]:請回答程序段運行后:(AL)=___5或0FBH__(BL)=___14H或20______STRINGDB100DUP(?)MOVAX,SEGSTRINGMOVDS,AXLEASI,STRINGMOVCX,100LAB:MOVAL,[SI]MPALaBCMPAL,’z’MOV[SI],AINCSIDATASEGMENTSTR1DB‘ABCDEFGHIJKL'NTEQUSTRBUFDBCOUNTDUP(0)ATAENDSMOVSI,OFFSETBUF-1MOVDI,OFFSETBUFMOVCX,COUNT___CLD_或STD_____LOOP:MOVSB______SUBSI,2__或____ADDDI,2__PLOPMOVBX,0 ADDBX,2MOVCX,32HASIBEGMOVDI,SIDON:MOVAL,[SI] MOV[SI],AL DI答:(1)ADDDI,99DATASEGMENTDADWXXXXDSTECSCODEDSDATASTART:MOVAX,DATAMOVDS,AXEASIDAMOVCX,16RBLBLAGAIN:MOVAL,[SI]HLAL1NEXT:INCSIGAINTESTBLHNELPDONELSTCDONE:MOVAH,4CHEENDSNDSTARTMOVBX,0 ADDBX,223、如下程序應(yīng)用冒泡法對一個無符號數(shù)組排序(由小到大排序),請完成該程序。SEGSEGMENTSTACK DWDUP(?)NDSDSEGSEGMENTBASSUMECS∶CSEG,DS∶DSEG,SS∶SSEGMOVDSAXCMPAXARRAYSI2]SWAPXCHGAXARRAYSI] MOVARRAY[SI],AXMOVSWAP,1RMOVAH,4CHXA.TYPEB.WORDC.NEARD.FARMOVBL,49HSUBODECCL┇ADDAL,BLMOVCL,ALHDXMOVDX,AXCMPAX,0JZDONEDECAXPOPDXDONE:MOVAX,1POPDXXDATASEGMENTDATDBXXHSQRTABDB,4,9,...81ATAENDSDATASEGMENTDATDBXXHATAEMDSSTACLSEGMENTPARASTACKDWHDUPNDSSEGMENTASSUMECS:CODE,DS:DATA,SS:STACK1MOVDS,AX┇SUBROT┇MOVAH,4CHOCHAXSHBXXSQRTABMOVAL,DATTESTAL,80HMOVSQR,ALNDPENDSSRARTSQTABDB0,1,4,9,16,25,36,49,64,81DB100,121,144,169,196,225ADB12DBDATAENDSDESEGMENTASSUMECS:CODE,DS:DATASTARTPROCFARUSHDXORAXAXHAXMOVAX,DATAMOVDS,AXMOVBX,OFFSETSQTABMOVAL,AMOVB,ALTENDPENDSDSTARTNMACROPPPMOVAX,P1P2P3集二1、十六進制數(shù)94H,可表示成下面幾種形式,請找出錯誤的表示()。2、標(biāo)志(又稱程序狀態(tài))寄存器的是(B進制數(shù)-108)。A、IPB、SPC、BPD、PSWA、CF,OFB、SF,ZFA、AXB、BXCCXD、DX5、完成同指令XCHGAX,BX相同功能的指令或指令序列是()。PBXMOVAXBXMOVBX,CXA、OFB、AFC、PFD、CFE、ZFF、SF8、在匯編語言程序中,對END語句的敘述正確的是()。有語法錯誤的是()。A、PUSHCSC、LEABX,4[BX]B、PUSHWORDPTR20[BX+SI-2]DADDBXOFFSETA10、下面指令執(zhí)行后,變量DTB中的內(nèi)容是()。ADW4B1AHBDB08FH:MOVAL,BYTEPRTDTATBALA、44HB、45HC、74HD、75H11、執(zhí)行下列指令后,正確的結(jié)果是()。MOVAL,100MOVBL,-10A、AL=100H,BL=8AHB、AL=64H,BL=8AHCAL4H,BL=0FEHD、AL=100H,BL=0FEH)。)。A、TESTAL,02HCMPALBLBORAL,BLDANDALAL未選擇,就表示是隱含類型,其隱含類型是()。A、PRIVATEB、PUBLICC、MEMORYD、COMMON14、當(dāng)一個帶符號數(shù)大于0F4H時程序轉(zhuǎn)移,需選用的條件轉(zhuǎn)移指令是()。A、JLEB、JNLEC、JLD、JNLTESTBH01H____K1A、JNEB、JCC、JED、JSA、308HB、134HC、154D、26417、下列指令正確的是()AINAL,DXB、JMPBYTEPTR[BX]C、SARAX,5D、MUL25A、SHRAX,1SHRAX,1B、SHLAX,1SHL,AX,1C、SARAX,1ROLAX,1D、SALAX,1RCRAX,1的關(guān)系是()。A、OF=SF=1B、OF=NOTSFC、OF=SFD、OF=SF=020、假設(shè)(SS)=1140H,(SP)=0140H,如果在堆棧中存入5個數(shù)據(jù),則棧頂?shù)奈锢淼刂窞?H),如H)。A、11535,11538C、11536,1153CBB,1153ED、11530,1153621、設(shè)DH=10H,執(zhí)行NEGDH指令后,正確的結(jié)果是()。A、DH=10HCF=1B、DH=0F0HCF=0C、DH=10HCF=0D、DH=0F0HCF=122、下列傳送指令中有語法錯誤的是())。A、MOVCS,AXB、MOVDS,AXCMOVSSAXD、MOVES,AX23、下面指令執(zhí)行后,改變AL寄存器內(nèi)容的指令是()。A、TESTAL,02HB、ORAL,ALCCMPALBLD、ANDAL,BLA、CF,OFB、SF,ZF25、執(zhí)行下面指令序列后,結(jié)果是()。MOVAL,82HA、AX=0FF82HB、AX=8082HC、AX=0082HFH)。A、MOVBX,VARB、LDSBX,VARC、LESBX,VARD、LEABX,VAR27、在段定義時,如果定位類型用戶未選擇,就表示是隱含類型,其隱含類型是()。A、WORDB、PAGEC、BYTED、PARASPHHAX執(zhí)行上述指令序列后,SP寄存器的值是()。A、3211HB、320EHC、320FHD、3212HBUFDWHDUP3DUP(2,10H),3,5)上述語句匯編后,為變量BUF分配的存儲單元字節(jié)數(shù)是()。A、80HB、100HC、124D、19230、在匯編語言程序的開發(fā)過程中使用宏功能的順序是()。A、宏定義,宏調(diào)用B、宏定義,宏展開C、宏定義,宏調(diào)用,宏展開D、宏定義,宏展開,宏調(diào)用31、匯編語言源程序中,每個語句由四項組成,如語句要完成一定功能,那么該語句中不可省略的項是 ()。ABC、操作數(shù)項D、注釋項32、編寫分支程序,在進行條件判斷前,可用指令構(gòu)成條件,其中不能形成條件的指令有()。A、CMPB、SUBC、ANDD、MOVA、INCCXJZMINUSCANDCX,OFFFFHJZMINUSB、SUBCX,OFFFFHJZMINUSXOFFFFHJZMINUS號位的關(guān)系是()。A、OF=SFB、OF=NOTSFC、OF=SF=1D、OF=SF=0A、MOVAL,BUFB、MOVAL,BUFJSK1ANDAL,11SHRAL,1NCKMOVAL,0MOVAL,0OVALBUFTESTAL,81HNZKMOVAL,0DMOVALBUFPKTESTALHMOVAL,036、十六進制數(shù)88H,可表示成下面幾種形式,請找出錯誤的表示()。37、指令指針寄存器是()。B進制數(shù)-120A、IPB、SPC、BPD、PSWA、MOVAL,00HB、ANDAL,00HC、XORAL,ALD、SUBAL,AL39、下列指令執(zhí)行后總是使CF=0,OF=0的是()。A、ANDB、NEGC、NOTD、INC40、完成同指令XCHGAX,BX相同功能的指令或指令序列是()。A、MOVAX,BXSHAXPOPBXBMOVBX,AXDMOVCXAXMOVAX,BXMOVBX,CX41、在串操作指令前使用重復(fù)前綴指令REPE,終止串的重復(fù)操作條件是()。42、下面指令中,合理而有意義的指令是()。A、REPLODSBB、REPSCASBC、REPCMPSBD、REPMOVSB43、在匯編語言程序中,對END語句的敘述正確的是()。44、下面的數(shù)據(jù)傳送指令中,錯誤的操作是()。A、MOVSS:[BX+DI],1000HB、MOVDX,1000HC、MOVWORDPTR[BX],1000HDMOVDS,2000H45、下面指令執(zhí)行后,變量DAB中的內(nèi)容是()。DAWDW2A05HDABDB0FAH:MOVAL,BYTEPRTDAWLA、0DAHB、0FAHC、0F5HD、0D0H46、執(zhí)行下列指令后,正確的結(jié)果是()。MOVAL,100MOVBL,-2A、AL=100H,BL=02HB、AL=64H,BL=0FEHCAL=64H,BL=82HD、AL=100H,BL=0FEHDA1DB12H,34HDA2DW56H,78H下面有語法錯誤的語句是()。AADRDWDA1BMOVDA1+1,AXCMOVBYTEPTRDA2+1,ALD、MOVWORDPTRDA1+1,AXSEGMENTTADW0102H,0304H,0506HTA2DB02H,03H,04H:MOVBX,DS:[0006H]ANDBX,0FFHMOVBH,[BX]上述指令序列運行后,BX的內(nèi)容是()。A、0605HB、0402HC、0606HD、0204H49、當(dāng)一個帶符號數(shù)大于0FBH時程序轉(zhuǎn)移,需選用的條件轉(zhuǎn)移指令是()。A、JLEB、JNLC、JNLED、JL50、下面指令序列測試BH中的數(shù)是否為奇數(shù),若為奇數(shù)則轉(zhuǎn)移至K1處,橫線處的指令應(yīng)為()。TESTBH1H_____K1A、JNZB、JZC、JSD、JCBLFHNEXT。A、TESTBL,4FHCANDBL4FHBXORBL,4FHDORBLFHDSHDIHNEGBYTEPTRDI址是()A、85B92HB、86192HC、BB690HD、12169HA、SHRAX,1SHRAX,1B、SHLAX,1SHL,AX,1C、ROLAX,1ROLAX,1D、RCRAX,1RCRAX,1的關(guān)系是()。A、OF=SFB、OF=NOTSFC、OF=SF=1D、OF=SF=0:MOVAL,BYTEPRTDAWA.0DAHB.0FAHC.0F5HD.0D0HMOVAL,100MOVBL,-2A.AL=100HB.AL=64HBL02HBL=0FEHCALHD.AL=100HBLHBL=0FEHDADB2H,34HDA2DW56H,78HA.ADR1DWDA1BMOVDA1+1,AXCMOVBYTEPTRDA2+1,ALDMOVWORDPTRDA1+1,AXXA.SHLAX,2ROLDX,2B.RCLAX,2SHLDX,2C.MOVCX,2LOP:SHLAX,1RCLDX,1LOPDSHLAX,1LAXLDXLDXTADW102H,0304H,0506HTADB02H,03H,04H:MOVBX,DS:[0006H]ANDBX,0FFHANDBH,[BX]A.0605HB.0402HC.0606HD.0204HA.JLEB.JNLC.JNLED.JLTESTBH,01H_________K1A.JNEB.JZC.JSD.JCATESTBL,4FHBXORBL,4FHCANDBL4FHDORBL4FH64.CPU要訪問的某一存儲單元的實際地址稱()65.某存儲單元的物理地址是12345H,可以作為它的段地址有()A2345HB.12345HC.12340HD.1234H66.執(zhí)行后使BX=0的同時也使CF=0OF=0的指令是()A.XORBXBXB.ORBXBXCANDBXBXD.CMPBXBX67.循環(huán)控制指令LoopNZ/LoopNE控制循環(huán)繼續(xù)執(zhí)行的條件是()H是()69.ANDORXORNOT為四條邏輯運算指令,下面的解釋正確的是()71.REPZCMPSW指令,重復(fù)執(zhí)行的終止條件是()MOVAX8833HADDALAHA.21B.21HC.0C1HD.0DDHA.ZF=1B.ZF=0C.SF=1D.SF=0ALBLLOP處那么在“CMPAL,BL”指令后應(yīng)跟的分支指令是()A.JNCLOP1B.JALOP1CJCLOP1D.JGELOP175.在下列串操作指令中,同時使用源串和目的串地址指針的指令是()A.STOSWB.LODSWCSCASWD.CMPSW76.在執(zhí)行下列指令時,需要使用段寄存器DS的指令是()A.STOSWB.ADDALCLC.NEGBXD.INCDA[BX]A.ADDBH,01HB.ORBH,01HCXORBH,01HD.TESTBH,01HA.ROLCL,1B.MUL4ROLCL,1C.SHLCL,1D.MOVCL,2SHLCLSHLCL,CL79.下面各傳送指令中,正確的是()A.MOV[DI],[SI]B.MOV[DX+DI],ALCMOVWORDPTR[BX],0100HD.MOVAL,BX80.匯編語言語句格式中對名字項的規(guī)定如下,請找出其中錯誤的說法()A.名字的第一個字符可以是大寫英文字母及小寫英文字母D.在名字中不允許出現(xiàn)$A.BETADB56B.BETADB56HC.BETAEQU56D.BETAEQU56H82.DA1DW‘AB’,‘CD’,‘EF’,‘GH’()┇MOVAX,DA1+383.使用DOS系統(tǒng)功能調(diào)用時,使用的軟中斷指令是()A.INT21B.INT10HC.INT16HD.INT21HLAHALHA.NOTALB.ANDAL,0FHC.XORAL,0FHD.ORAL,0FH1.十進制數(shù)369轉(zhuǎn)換成二進制數(shù)為(101110001)2,轉(zhuǎn)換成十六進制數(shù)為(171)16.2.計算機中的指令由(操作碼)和(地址碼)兩部分組成。3.8086的地址總線有20根,尋址范圍為(1M)字節(jié)。4.下一條將要執(zhí)行的指令的地址存放在寄存器(指令指針寄存器)中。5.寫出IBMPC機的三種子程序返回的指令(RET),(IRET),(IRETD)。6.匯編語言源程序需經(jīng)過(匯編)程序匯編,(連接)程序連接才能生成可執(zhí)行文件。8.REP指令前綴與()指令配合使用。9.在顯示器上查看和修改內(nèi)存單元的內(nèi)容可以使用DEBUG的(D)和(E)命令。(XORAL,3F)11.宏匯編適合于(程序短),(參數(shù)多)的子功能段使用;圍為-128~+127,寫成十六進制形式為80H~7FH。數(shù)),以產(chǎn)生轉(zhuǎn)移條件。這條指令執(zhí)行后將利用標(biāo)志位ZF實現(xiàn)轉(zhuǎn)移。axDSFEHSI000H,COUNT=0A8H,指令MOVAX,(SI+COUNT)中,源操作數(shù)的有效地址EAAH物理地址為____11488H____。IP的是___CS_____。CFA.SHRBL,1BL=()CF=()B.SARBL,CLBL=()CF=()C.RORBL,1BL=()CF=()D.R0LBL,CLBL=()CF=()25.現(xiàn)有數(shù)據(jù)定義偽指令如下,寫出對應(yīng)的數(shù)據(jù)在存儲單元中的存放形式。BUF1DB01,52HBUF2DWDUPBUF3DB2DUP(0,DUP,2),3)FFFVCL,20H[BX][SI]VBX,20H[BX][SI]VAX,2[BX]MOVSI,BX(AX)=_______________(BX)=_________________(CX)=________________(1E4F6H)=____________(091E2H)=______________1.PUSH5588H錯誤,操作數(shù)不能用立即數(shù);4.ANDAX,[DX]8.ORBX,[CXXSHRDX,1(2)RCRDL,1(3)RCLDX,CL后,(AX)=612H=1554答:NEGDXNEGAXSBBDX,0(1)MOVAL,[BX](2)MOVCS:[BX+DI],AH答:(1)21357H;(2)43357H.0P1DB1,2PDWH,5678H┇MOVAX,OP1+1;字單元(OP1+1)AXMOVBL,OP2+1;字節(jié)單元(OP2+1)BLMOVAX,WORDPTR(OP1+1)MOVBL,BYTEPTR(OP2+1)(1)AD2DW10DUP(?),10(2)AD3DD100DUP(?)(1)22;(2)400MOV[BX],[SI]MOVAX,DL含那些內(nèi)容?不同——傳送指令“movax,offsetvar”是在匯編階段由匯編程序計算出偏移地址而“l(fā)eaax,var”循環(huán)控制部分——判斷循環(huán)條件是否成立、確定是否退出循環(huán)。①movax,[1200h]②movax,[bx+1101h]③movax,[bx][si+1100h]XcahAXbchAXb7hBDW5678HUSHAPUSHBOPAPOPB試回答:上述程序段執(zhí)行后(A)=5678H,(B)=1234HMOVAL,200SARAL,1MOVBL,ALMOVCL,2ALCLADDAL,BL試問程序段執(zhí)行后(BL)=0E4H(AL)=0DDHANDAL,0FHRAHAHMOVBX,OFFSETSTRINGADDBX,AXMOVBL,[BX](2)如從鍵盤輸入字符‘4',程序段有什么結(jié)果?顯示器顯示字符‘D’下程序:ANDAL,ALRCRAL,1RCLAL,1(1)當(dāng)(AL)=(AL)=0時,程序轉(zhuǎn)向BRCH1(2)當(dāng)(AL)=(AL)=1時,程序轉(zhuǎn)向BRCH2(3)當(dāng)(AL)=(AL)=-1時,程序轉(zhuǎn)向BRCH3中DAT1DB30DUP(?)DAT2DB10DUP(?)┇MOVCX,10MOVBX,20MOVSI,0NEXT:MOVAL,DAT1〔BX〕〔SI〕MOVBX,00FFHANDBX,0FFFHRBXFFHXORBXFFHSTARTDW10H,20H,30H,40H,50HEE1DW3┇RTADDBX,EE1MOVAX,〔BX〕┇9.閱讀如下程序片段MOVAL,4CHMOVBL,0B5HADDAL,BL執(zhí)行上述程序片段后,(AL)=01H(1分),(BL)=0B5H(1分),段MOVAL,0F3HMOVDL,0C4HADDAL,DLANDAL,0FH執(zhí)行上述程序片段后,(AL)=07H(1分),(AF)=不確定(1分),段MOVAL,7EHMOVCL,04HROLAL,CL執(zhí)行上述程序片段后,(AL)=0F9H(2分),(CL)=04H(1分),段MOVAX,0632HMOVBX,0C202HAXBXINCAX執(zhí)行上述程序片段后,(AX)=4431H(2分),(CF)=1(2分),13.閱讀如下程序片段,假設(shè)(DS)=0100H,字節(jié)單元(01024H)=56H,字節(jié)單元(01025H)=28HMOVBX,0024HLEABX,[BX]ORBX,0ADCBX,[BX]執(zhí)行上述程序片段后,(BX)=287AH(3分),(CF)=0(2分),14.閱讀如下程序片段,假設(shè)(SP)=0064HMOVAX,0001HMOVBX,0002HXXBX執(zhí)行上述程序片段后,(AX)=0002H(2分),(BX)=0001H(2分),(SP)=0064H(1分)段MOVAL,4CHMOVBL,86HADDAL,BL執(zhí)行上述程序片段后,(AL)=0D2H(1分),(BL)=86H(1分),PF段MOVAL,0F3HMOVDL,0C4HADDAL,DLANDAL,0FH執(zhí)行上述程序片段后,(AL)=07H1分),(AF)=不確定1分),段MOVAL,6FHMOVCL,04HROLAL,CL執(zhí)行上述程序片段后,(AL)=0F6H2分),(CL)=04H1分),段OVAX632HOVBX,0C202HALBLAH,BHAX執(zhí)行上述程序片段后,(AX)=4431H2分),(CF)=12分),19.閱讀如下程序片段,假設(shè)(DS)=0100H,字節(jié)單元(01024H)=56H,字節(jié)單元(01025H)=28HMOVBX,0024HLEABX,[BX]ANDBX,0FFHADCBX,[BX]執(zhí)行上述程序片段后,(BX)=287AH3分),(CF)=0(2分),20.閱讀如下程序片段,假設(shè)(SP)=0064HMOVAX,0001HMOVBX,0002HXXBX執(zhí)行上述程序片段后,(AX)=0002H2分),(BX)=0001H2分),(SP)=0064H1分)LALNOTDLTESTDL4H┇22DA1DB?ABCDEFGHI?DADB9DUP(0)┇EASIDAEADIDAMOVCX,9SUBAL,10HPLOP...功能情況下,程序中可否改寫為

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論