2023年匯編語言題庫_第1頁
2023年匯編語言題庫_第2頁
2023年匯編語言題庫_第3頁
2023年匯編語言題庫_第4頁
2023年匯編語言題庫_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《匯編語言程序設(shè)計(jì)》習(xí)題一、選擇題1.機(jī)器數(shù)為10000000B,它代表-127D,則它是()。A.補(bǔ)碼B.原碼C.反碼D.原碼或反碼2.已知VAR為字節(jié)變量,下面是關(guān)于①M(fèi)OVBX,OFFSETVAR和②LEABX,VAR指令的說明,對的的是()。A.指令①執(zhí)行速度比指令②執(zhí)行速度快B.指令①中OFFSET只能與簡樸的符號(hào)地址相連,不能與諸如VAR[SI]等復(fù)雜數(shù)相連。指令②LEA沒有這個(gè)限制C.指令①有錯(cuò)誤,由于VAR為字節(jié)變量,而BX為字D.指令①與指令②的作用完全相同3.下列指令中對的的是()。A.MOV100,CLB.MOVCL,100HC.MOVCL,1000D.MOVCL,1004.設(shè)(BX)=8D16H,執(zhí)行指令序列MOVCL,7SARBX,CL后BX寄存器的內(nèi)容是()。A.011AHB.0FF1AHC.2D1AHD.0B00H5.在程序運(yùn)營過程中,擬定下一條指令的物理地址的計(jì)算表達(dá)式是()。A.CS*16+IPB.BX*16+DIC.SS*16+SPD.ES*16+SI6.提醒下列指令序列執(zhí)行后的對的結(jié)果是()。MOVBX,OFFFCHMOVCL,2SARBX,CLA.3FFFHB.0FFFHC.0FFFCHD.0FFF5H7.下列指令中不影響標(biāo)志位的是()。A.SUBAX,BXB.RORAL,1C.JNCLABLED.INTn8.將寄存器AX的內(nèi)容取負(fù)的對的操作是()。A.NEGAXB.CMPAX,0FFFHC.NOTAXD.CMPAX,AX9.指令SCAS的尋址方式是()。A源操作數(shù)為寄存器尋址,目的操作數(shù)為寄存器間接尋址B源操作數(shù)為寄存器間接尋址,目的操作數(shù)為寄存器間接尋址C源操作數(shù)為寄存器間接尋址,目的操作數(shù)為寄存器尋址D源操作數(shù)為寄存器尋址,目的操作數(shù)為寄存器尋址10.TABLE為字變量,下面是關(guān)于指令①MOVAX,TABLE與指令②LEAAX,TABLE的說明,錯(cuò)誤的是()。A指令①送TABLE為偏移地址的單元的內(nèi)容,指令②送TABLE的偏移地址給AXB指令①送TABLE的偏移地址,指令②送TABLE為偏移地址的單元的內(nèi)容給AXC源操作數(shù)尋址方式是:指令①為直接尋址,指令②為立即數(shù)尋址D源操作數(shù)尋址方式是:指令①為直接尋址,指令②為直接尋址11.下列指令中對的的是()。AMOVBX,ALBMOVBL,AXCMOVBL,ALDMOVBL,BP12.下列指令中不合法的指令是()。AINAX,03F8HBMOVBX,AXCREPCMPSBDSHRBX,CL13.下列指令中對的的是()。AMOVSS,2400HBMOVSS,[2400H]CMOVSS,DSDMOVSS,SP14.下列指令中對的的是()。AXCHGAH,ALBXCHGAL,20HCXCHGDS,AXDXCHGSP,[20H]15.下列指令中對的的是()。AIN100H,ALBINAX,21HCOUT21H,AXDOUT26016.假定(SS)=2023H,(SP)=0100H,(AX)=2107H,執(zhí)行指令PUSHAX后,存放數(shù)據(jù)21H的物理地址是()。A20232HB20231HC200FEHD200FFH17.在下列指令中,有語法錯(cuò)誤的是()。AMOV[SI],[DI]BINAL,DXCJMPWORDPTR[BX]DPUSHWORDPTR20[BX+SI-2]18.兩個(gè)有符號(hào)的整數(shù)A和B比較后,為了鑒定A是否大于B,應(yīng)使用下列()條指令。AJGBJACJNBDJNBE19.下列程序段執(zhí)行完后,BX寄存器中的內(nèi)容是()。MOVCL,3MOVBX,0B7HROLBX,1RORBX,CLA002DHB00EDHCC02DHD000DH20.執(zhí)行下列程序:MOVAX,0MOVBX,1MOVCX,100A:ADDAX,BXINCBXLOOPAHLT執(zhí)行后的結(jié)果為:(AX)=(),(BX)=().A5050,99B2500,100C5050,101D2550,10232.已知JNC指令的機(jī)器代碼是73FCH(FC是根據(jù)條件轉(zhuǎn)移擬定的偏移量),CF=0,IP=1000H,試問執(zhí)行該指令后,IP=()。A0FFFHB10FEHC0FFEHD10FCH33.滿足轉(zhuǎn)移指令JNE的測試條件是()。AZF=1BCF=0CZF=0DCF=134.將累加器AX的內(nèi)容清零的對的指令是()。AANDAX,0BXORAX,BXCSUBAX,BXDCMPAX,BX35.邏輯位移指令SHR用于(),而算術(shù)位移指令SAR用于帶符號(hào)數(shù)除2。A帶符號(hào)數(shù)減2B帶符號(hào)數(shù)除2C無符號(hào)數(shù)乘2D無符號(hào)數(shù)除236.對于下列程序段:AGAIN:MOVAL,[SI]MOVES:[DI],ALINCSIINCDILOOPAGAIN也可用指令()完畢同樣的功能。AREPMOVSBBREPLODSBCREPSTOSBDREPESCASB37.JMPWORDPTR[DI]是()。A段內(nèi)間接轉(zhuǎn)移B段間間接轉(zhuǎn)移C段內(nèi)直接轉(zhuǎn)移D段間直接轉(zhuǎn)移39.執(zhí)行下列指令后:MOVAX,1234HMOVCL,4ROLAX,CLDECAXMOVCX,4MULCX寄存器AL的值是()。A60HB00HC04HD08DH40.下列程序執(zhí)行后,(AL)=()。MOVAX,1234HMOVBX,5678HADDAL,BLDAAMOVCL,ALMOVAL,AHADCAL,BHDAAA69HB78HC56HD34H42.下面程序段中,當(dāng)滿足條件轉(zhuǎn)到NEXT標(biāo)號(hào)執(zhí)行時(shí),AL中的值對的的是()。CMPAL,OFBHJNLNEXT……NEXT:……AAL=80HBAL=8FHCAL=0F0HDAL=0FFH43.對于下列程序段:AGAIN:MOVES:[DI],ALINCDILOOPAGAIN可用指令()完畢相同的功能。AREPMOVSBBREPLODSBCREPSTOSBDREPESCASB44.設(shè)AL和BL中都是帶符號(hào)數(shù),當(dāng)AL≤BL時(shí)轉(zhuǎn)至NEXT處,在CMPAL,BL指令后應(yīng)選用對的的條件轉(zhuǎn)移指令是()。AJBEBJNGCJNADJNLE45.使得JB指令執(zhí)行轉(zhuǎn)移操作的條件是()。ACF=1BCF=1且ZF=0CZF=0DCF=0或ZF=146.在“先判斷后工作”的循環(huán)程序結(jié)構(gòu)中,循環(huán)執(zhí)行的次數(shù)最少是()。A1B0C2D不定47.下列指令中,指令()先執(zhí)行CX-1賦給CX操作,然后再根據(jù)CX的值決定是否轉(zhuǎn)移、循環(huán)或進(jìn)行反復(fù)操作。AJNCBREPCJCXZDLOOP48.指令LOOPZ的循環(huán)執(zhí)行條件是()。ACX≠0并且ZF=0BCX=0或ZF=0CCX≠0并且ZF=1DCX=0或ZF=149.向量中斷是()。A外設(shè)提出中斷B由硬件形成中斷服務(wù)程序入口地址C由硬件形成向量中斷地址,再由向量地址找到中斷服務(wù)程序入口地址D以上都不對的50.寄存器間接尋址方式中,操作數(shù)在()中。A通用寄存器B堆棧C主存單元D段寄存器53.匯編語言語句格式中的名字項(xiàng),下列哪一個(gè)不對的?()A.FFFFFHB.@VariableC.0FFFFHD.Third_stree(cuò)t54.下列語句中錯(cuò)誤的有()A.MOVBL,0A7HB.MOVCX,COUNTC.MOV[BX],5D.INAL,PORT-VAL55.()不是數(shù)值變量的類型屬性。A.字符型B.字型C.字節(jié)型D.雙字型56.用ASSUME偽指令指定某個(gè)段分派給那個(gè)寄存器后,還需要通過MOV指令來給段寄存器賦值,其中()不能這樣做,而是在程序初始化時(shí)自動(dòng)完畢的。A.?dāng)?shù)據(jù)段寄存器DSB.堆棧段寄存器SSC.代碼段寄存器CSD.附加段寄存器ES58.下列哪一個(gè)偽指令對符號(hào)名可以反復(fù)定義()A.=B.EQUC.DBD.PURGE59.下面指令序列執(zhí)行后的對的結(jié)果是()。MOVBX,0FFFCHMOVCL,2SARBX,CLA.3FFFHB.0FFFFHC.0FFFCHD.0FFF5H60.一般用條件轉(zhuǎn)移指令JZ、JNZ、JC、JNC等來實(shí)現(xiàn)程序的()結(jié)構(gòu)。A.順序B.分支C.循環(huán)D.模塊化61.下列哪一種不是多分支程序設(shè)計(jì)的形式?()A.開關(guān)法B.轉(zhuǎn)移表法C.地址表法D.邏輯分解法62.下面程序段中,當(dāng)滿足條件轉(zhuǎn)到NEXT標(biāo)號(hào)執(zhí)行時(shí),AL中的值對的的是()。CMPAL,0FBHJNLN(yùn)EXT…NEXT:......A.AL=80HB.AL=8FHC.AL=0F0HD.AL=0FFH63.循環(huán)程序的基本結(jié)構(gòu)形式不涉及下面哪一部分?()A.循環(huán)參數(shù)置初值部分B.循環(huán)工作部分C.循環(huán)控制部分D.設(shè)立段寄存器部分64.?dāng)?shù)值計(jì)算中的反復(fù)迭代計(jì)算的過程是循環(huán)結(jié)構(gòu),該類問題使用()控制循環(huán)。A.計(jì)數(shù)控制法B.條件控制法C.開關(guān)控制法D.邏輯尺控制法65.在循環(huán)設(shè)計(jì)中循環(huán)體的反復(fù)執(zhí)行次數(shù)已知的情況下,一般采用哪種計(jì)數(shù)方法來控制循環(huán)?()A.正計(jì)數(shù)法B.倒計(jì)數(shù)法C.兩者相同D.兩者都不是66.子程序結(jié)構(gòu)中不涉及()。A.子程序的說明文獻(xiàn)B.子程序的現(xiàn)場保護(hù)和現(xiàn)場恢復(fù)C.子程序的調(diào)用和返回D.入口參數(shù)的設(shè)立68.DOS系統(tǒng)功能調(diào)用中,將子程序編號(hào)送入()寄存器。A.AHB.ALC.BHD.BL69.表達(dá)式19MOD7的結(jié)果為()。A2B5C-2D-570.執(zhí)行偽指令語句STRDD‘AB’后,下列說法對的的是()。A存入41H,42HB存入42H,41HC存入41H,42H,00H,00HD存入42H,41H,00H,00H71.下列偽指令語句對的的有()。AERR1:DW99BEXPRDB2*3+7CERR2DB25*60DERR3DD‘ABCD’72.下列說法對的的是()。SEGMENT與ENDS是段定義語句的偽指令,而ASSUME不是SEGMENT和ENDS語句成對使用,把匯編語言源程序分為段代碼段中存放指令和偽指令,但不存放宏指令SEGMENT與ENDS偽指令前的段名可以不同74.程序設(shè)計(jì)的結(jié)構(gòu)化的首要問題是()。A程序的模塊化B程序設(shè)計(jì)時(shí)采用“自上而下,逐步求精”的實(shí)行方法C模塊之間的組合問題D各個(gè)結(jié)構(gòu)的出口點(diǎn)和入口點(diǎn)75.下面指令序列執(zhí)行后完畢的運(yùn)算,對的的算術(shù)表達(dá)式應(yīng)是()。MOVAL,BYTEPTRXSHLAL,1DECALMOVBYTEPTPY,ALAY=2X+1BX=2Y+1CY=2X-1DX=2Y-177.實(shí)現(xiàn)“>=”轉(zhuǎn)移的偽指令是()。AJAE/JNBBJBE/JNACJGE/JNLDJG/JNLE78.在程序設(shè)計(jì)的實(shí)際應(yīng)用中往往存在要反復(fù)執(zhí)行的某些操作的一類問題,這類問題由()來解決。A順序結(jié)構(gòu)程序B分支結(jié)構(gòu)程序C循環(huán)結(jié)構(gòu)程序D以上都不是79.下列說法中,錯(cuò)誤的有()。A內(nèi)循環(huán)必須完整地包含在外循環(huán)中,內(nèi)外循環(huán)不能互相交叉B內(nèi)循環(huán)在外循環(huán)中位置可根據(jù)需要任意設(shè)立C從內(nèi)循環(huán)中可以直接跳到外循環(huán),從外循環(huán)也可以直接跳到內(nèi)循環(huán)D每次由外循環(huán)再次進(jìn)入內(nèi)循環(huán)中,初始條件必須重新設(shè)立80.()是循環(huán)程序設(shè)計(jì)的一個(gè)核心問題。A循環(huán)的控制B循環(huán)結(jié)構(gòu)的選擇C循環(huán)體的設(shè)計(jì)D循環(huán)參數(shù)的置初值81.循環(huán)體不涉及下列哪項(xiàng)?()A反復(fù)操作的程序段B循環(huán)參數(shù)的修改C循環(huán)控制參數(shù)的修改D循環(huán)參數(shù)置初值部分82.假如在一個(gè)循環(huán)結(jié)構(gòu)中包含若干個(gè)循環(huán)體,每個(gè)循環(huán)體相應(yīng)一個(gè)條件,當(dāng)滿足某一條件后就執(zhí)行相應(yīng)循環(huán)體。進(jìn)行這種循環(huán)結(jié)構(gòu)的程序設(shè)計(jì),常用()。A計(jì)數(shù)控制法B條件控制法C開關(guān)控制法D邏輯尺控制法83.下列說法錯(cuò)誤的是()。A子程序結(jié)構(gòu)簡化了程序設(shè)計(jì)過程,使程序設(shè)計(jì)時(shí)間大量節(jié)省B子程序結(jié)構(gòu)縮短了程序的長度,節(jié)省了程序的存儲(chǔ)空間C子程序結(jié)構(gòu)不利于對程序的修改、調(diào)試D子程序結(jié)構(gòu)方便了程序的模塊化、結(jié)構(gòu)化和自頂向下的程序設(shè)計(jì)84.()不是子程序的參數(shù)傳遞方法。A立即數(shù)傳遞B寄存器傳遞C堆棧傳遞D存儲(chǔ)器傳遞二、填空3.設(shè)(AL)=45H,若是無符號(hào)數(shù),它代表,若是帶符號(hào)數(shù),它代表,若是BCD數(shù),它代表,若是ASCⅡ碼,它代表4.已知某機(jī)器數(shù)為10000000B,若為原碼,它表達(dá)的十進(jìn)制數(shù)是;若為反碼,它表達(dá)的十進(jìn)制數(shù)是;若為補(bǔ)碼,它表達(dá)的十進(jìn)制數(shù)是。6.若累加器AX中的內(nèi)容為4142H,執(zhí)行指令CMPAX,4041H后,(AX)=。執(zhí)行SUBAX,4041H后,(AX)=。7.若AL中的內(nèi)容為7DH,下列指令單獨(dú)執(zhí)行后AL為:(1)指令ANDAL,0FH后,AL=;(2)指令A(yù)NDAL,0F0H后,AL=;(3)執(zhí)行指令ORAL,0FH后,AL=;(4)執(zhí)行指令ORAL,0F0H后,AL=;(5)執(zhí)行指令XORAL,0FH后,AL=;(6)執(zhí)行指令XORAL,0F0H后,AL=。8.若AL=24H,CL=8,CF=1,執(zhí)行ROLAL,CL指令A(yù)L=,CF=。9.設(shè)堆棧指針SP的初值為2023H,AX=3000H,BX=5000H,試問:(1)執(zhí)行指令PUSHAX后SP=。(2)再執(zhí)行PUSHBX及POPAX后,SP=,AX=。(3)最后執(zhí)行POPBX后,SP=,BX=10.已知程序段如下:指令執(zhí)行后,完畢填空。MOVAX,1234H;(AX)=H,CF=,SF=,ZF=MOVCL,4ROLAX,CL;(AX)=H,CF=,SF=,ZF=DECAX;(AX)=H,CF=,SF=,ZF=MOVCX,4MULCX;(AX)=H,(DX)=H,CF=,SF=,ZF=INT20H11.已知:(AX)=01CDH,(BX)=0AFH,(CX)=0BE02H,CF=1,寫出單步執(zhí)行每條指令時(shí)CF,ZF及相關(guān)寄存器的內(nèi)容。TESTAX,BX;AX=01CDH,BX=0AFH;CF=,ZF=,(AX)=H,(BX0=HROLBX,CL;(BX)=2BCH,(CL)=02H;CF=,ZF=,BX=H,CL=H12.執(zhí)行下列指令序列后完畢的功能是將(DX,AX)的值。MOVCX,04NEXT:SHRDX,1RCRAX,1LOOPNEXT13.對于字除法指令,目的操作數(shù)存放在中,指令執(zhí)行后,商放在,余數(shù)在中。14.用CBW指令生成雙倍長度的被除數(shù)存放在中,用CWD指令生成雙倍長度的被除數(shù)存放在中。15.在除法指令I(lǐng)DIVBX中,被除數(shù)隱含為。16.在乘法指令MULWORDPTE[BX]中,被乘數(shù)隱含為,乘積在中。17.執(zhí)行XLAT指令前,要將表的首地址放在中,表內(nèi)偏移地址放在。18.若AL=34H,CL=4,CF=0,執(zhí)行SALAL,CL指令后,AL=,CF=。20.若DF=1,執(zhí)行指令LODSB后,SI的內(nèi)容會(huì)自動(dòng)。21.若CF=1,執(zhí)行指令CMC后,CF=。22.運(yùn)用指令JO實(shí)現(xiàn)轉(zhuǎn)移的條件為。23.運(yùn)用指令JZ后,程序順序執(zhí)行下一條指令的條件是。24.執(zhí)行指令JAE后,欲使程序跳轉(zhuǎn),條件為。25.執(zhí)行指令JNGE后,欲使程序跳轉(zhuǎn)條件為。26.寫出以下指令中內(nèi)存操作數(shù)的地址。⑴MOVAL,[BX+5];有效地址:,物理地址。⑵MOV[BP],AX;有效地址:,物理地址。⑶INCBYTEPTR[SI+3];有效地址:,物理地址。⑷MOVDL,ES:[BX+DI];有效地址:,物理地址。⑸MOVBX,[BX+SI+2];有效地址:,物理地址。27.假設(shè)(BX)=0E3H,變量VALUE中存放的內(nèi)容為76H,擬定下列各條指令單獨(dú)執(zhí)行后的結(jié)果。⑴XORBX,VALUE;(BX)=H⑵ANDBX,VALUE;(BX)=H⑶ORBX,VALUE;(BX)=H⑷XORBX,0FFH;(BX)=H⑸ANDBX,0;(BX)=H⑹TESTBX,01H;(BX)=H28.試分析下列程序段:ADDAX,BXJNOL1JNCL2SUBAX,BXJNCL3JNOL4JMPSHORTL5假如AX和BX的內(nèi)容給定如下,問該程序執(zhí)行完后轉(zhuǎn)向哪里?AXBX⑴147B80DC轉(zhuǎn)向。⑵B56854B7轉(zhuǎn)向。⑶42C8608D轉(zhuǎn)向。⑷D0239FD0轉(zhuǎn)向。⑸94B7B568轉(zhuǎn)向。29.有程序段如下,該程序段的功能是。CLDMOVCX,10LEASI,FIRSTLEADI,SECONDREPMOVSB30.條件轉(zhuǎn)移指令的目的地址應(yīng)在本條件轉(zhuǎn)移指令的下一條指令地址的字節(jié)范圍內(nèi)。31.指令LOOPZ/LOOPE是結(jié)果為或相等發(fā)生轉(zhuǎn)移的指令。32.一個(gè)有16個(gè)字的數(shù)據(jù)區(qū),它的起始地址為70A0:DDF6,那么該數(shù)據(jù)區(qū)的最后一個(gè)字單元的物理地址為H。33.假設(shè)(DS)=B000H,(BX)=080AH,(0B080AH)=05AEH,(0B080CH)=4000H,執(zhí)行指令“LESDI,[BX]”后,(DI)=,(ES)=。34.指令SAR可用來實(shí)現(xiàn)對數(shù)除2。35.當(dāng)一個(gè)帶符號(hào)數(shù)大于0FBH時(shí)程序轉(zhuǎn)移,需選用的條件轉(zhuǎn)移指令是。36.令(AL)=98H,(BL)=12H,則執(zhí)行指令MULBL后,(AX)=。37.假設(shè)(SS)=2250H,(SP)=0140H,假如在堆棧中存入5個(gè)數(shù)據(jù),則棧頂?shù)奈锢淼刂窞椤?8.對于字節(jié)乘法指令,其目的操作數(shù)存放在中,而其源操作數(shù)可以用除立即數(shù)以外的任一種尋址方式。其乘積為位,應(yīng)存放在中。39.執(zhí)行以下程序段后,AX=。MOVCX,5MOVAX,50NEXT:SUBAX,CXLOOPNEXTHLT40.執(zhí)行指令SUBAX,BX后,CF=1,說明最高有效位。41.程序結(jié)構(gòu)化的首要問題是,它是通過的手段來實(shí)現(xiàn)的。42.程序由一些基本結(jié)構(gòu)組成,這些基本結(jié)構(gòu)涉及、和。43.8086/8088存儲(chǔ)器結(jié)構(gòu)規(guī)定存儲(chǔ)空間分段使用。因此,要分別定義、、和。44.下面程序段完畢將字變量OPR1轉(zhuǎn)換成反碼和補(bǔ)碼分別存入自變量COMP和NEGA單元,將語句補(bǔ)充完整。OPR1DW-XXXXXDCOMPDW?NEGADW?MOVAX,OPR1(1)MOVCOMP,AX(2)MOVNEGA,AXHLT45.用于控制反復(fù)執(zhí)行的次數(shù),一般是檢測。當(dāng)循環(huán)結(jié)束條件不滿足時(shí),返回去繼續(xù)循環(huán)體;當(dāng)循環(huán)結(jié)束條件滿足時(shí),退出循環(huán)執(zhí)行循環(huán)結(jié)構(gòu)外的。46.在反復(fù)執(zhí)行次數(shù)已知的情況下,采用來控制循環(huán),它又可分為和。47.對循環(huán)次數(shù)未知的循環(huán)結(jié)構(gòu),是最常用的一種控制方法。該方法有兩種形式,分別為和。48.一個(gè)完整的子程序結(jié)構(gòu),必須涉及、、。49.匯編語言所操作解決的對象重要是,主程序調(diào)用子程序時(shí),已經(jīng)占用了一定的寄存器,子程序執(zhí)行時(shí)又要使用寄存器,返回主程序后,又要保證主程序按原有狀態(tài)繼續(xù)正常執(zhí)行,所以要對寄存器的內(nèi)容加以保護(hù)即,子程序執(zhí)行完畢后再恢復(fù)被保護(hù)寄存器的內(nèi)容,即。50.子程序是通過來定義的。子程序的定義不僅要說明所定義子程序的,并且還應(yīng)指出子程序的。51.主程序傳遞輸入?yún)?shù)和子程序傳遞輸出參數(shù)的過程稱為,實(shí)現(xiàn)該過程的方法有三種,它們分別為、和。54.分析下面程序段,回答指定問題:XORALCALLSUBROUTMOVBLCALLSUBROUTRCRAL,1HLTSUBROUTPROCNEARNOTALJSNEXTSTCNEXT:RETSUBROUTENDP問:程序運(yùn)營后,AL=,BL=?55.分析下面程序段,回答指定問題。BUFDB0CHMOVAL,BUFCALLFARPTRHECAHECAPROCFARCMPAL,10JCK1ADDAL,7K1:ADDAL,30HMOVDL,ALMOVAH,2INT21HRETHECAENDP問:程序執(zhí)行后,DL=,屏幕上顯示輸出的字符是。56.程序執(zhí)行的問題,在某些實(shí)時(shí)控制、跟蹤等程序中顯得特別突出。57.循環(huán)結(jié)構(gòu)有兩種形式:和。59.運(yùn)用流程圖進(jìn)行程序設(shè)計(jì)是一種最基本的方法,流程圖一般由四部分組成:、、和。60.分析下面程序段,指出程序完畢的功能和運(yùn)營結(jié)果。MOVAL,28HMOVAH,0SALAX,1MOVBX,AXSALAX,1SALAX,1ADDAX,BX(1)該程序段完畢的功能是。(2)程序運(yùn)營后AX=。61.一個(gè)循環(huán)結(jié)構(gòu)的程序重要由三部分組成:、、。62.循環(huán)程序的初始狀態(tài),需要在進(jìn)入循環(huán)以前給出,一般成為設(shè)立。循環(huán)初值又可分為的初值和的初值。63.在多重循環(huán)中,最簡樸最常用的是,它是指一個(gè)循環(huán)的循環(huán)體中具有一個(gè)或多個(gè)互相獨(dú)立的。該類型的循環(huán)是兩層嵌套循環(huán),外面一層稱,里面一層循環(huán)稱。64.現(xiàn)場保護(hù)和現(xiàn)場恢復(fù)的方法有和。65.子程序定義時(shí)的類型屬性有和兩種。三、問答1.什么是原碼、反碼及補(bǔ)碼?計(jì)算機(jī)中常用補(bǔ)碼表達(dá)數(shù),有什么意義?2.計(jì)算機(jī)中為什么采用二進(jìn)制?3.布爾代數(shù)有哪兩個(gè)特點(diǎn)?4.指出下列指令的錯(cuò)誤的因素,并更正。(1)MOV[BX],[SI](2)POPCS(3)MOVDS,2023H(4)MOVBL,F5H5.要想完畢把[2023H]的一個(gè)字送[1000H]中,用指令:MOV[1000H],[2023H]是否對的?假如不對的,應(yīng)用什么方法?6.假定LAB是標(biāo)號(hào),VAR是變量,CON是常數(shù),列出下列操作數(shù)或傳送指令的尋址方式。(1)VAR[BX](2)CON+50H(3)VAR(4)LAB(5)VAR[BX+3](6)VAR[BX][DI](7)MOVwordptr[BP][SI],100(8)MOVVAR[BX],CX(9)MOVAX,VAR[BX][DI](10)MOV[BX+1000],DI7.試問下面的程序段完畢什么功能?MOVCL,04SHLDX,CLMOVBL,AHSHLAX,CLSHRBL,CLORDL,BL8.分析下面的程序,回答指定的問題。START:XORAX,AXMOVCX,10MOVBX,2LOP1:ADDAX,BXINCBXDECCXJNZLOP1MOVSUM,AXHLTCODEENDS問:(1)該程序完畢的功能是什么?(2)程序執(zhí)行完后,SUM單元的內(nèi)容是什么?9.下面有四條等值語句C1EQU1000C2EQU1C3EQU20230C4EQU25000下列指令哪些是不對的?請說明因素。(1)ADDAL,C1-C2(2)MOVAX,C3+C4(3)SUBBX,C4-C3(4)SUBAH,C4-C3-C1(5)ADDAL,C210.什么是尋址方式?簡述8086/8088的尋址方式。11.說明存儲(chǔ)器操作數(shù)有效地址EA的構(gòu)成。12.指出下列操作數(shù)的尋址方式。(1)POPF(2)INAL,20H(3)CALL(4)INT16H13.分別說明下列每組指令中兩條指令的區(qū)別。(1)MOVAX,2023HMOVAX,[2023H](2)ANDBL,0FHORBL,0FH(3)JMPSHORTL1JMPNEARPTRL1(4)MOVAX,[BX]MOVAX,BX(5)SUBDX,CXCMPDX,CX(6)MOV[BP][SI],CLMOVDS:[BP][SI],CL14.假如想用100中減去AL中的內(nèi)容,用SUB100,AL是否對的?假如不對的,就用什么方法?15.當(dāng)執(zhí)行CMPAL,BL后,ZF=0,CF=0,SF=1,OF=0,試問:(1)若AL,BL中的內(nèi)容是兩個(gè)無符號(hào)數(shù),比較結(jié)果如何?(2)若AL,BL中的內(nèi)容是兩個(gè)帶符號(hào)數(shù),比較結(jié)果如何?試舉例說明。16.若8086執(zhí)行SUBAH,AL后的結(jié)果是(AH)=85H,OF=1,問:(1)執(zhí)行前AH和AL內(nèi)的數(shù)哪個(gè)大?(2)AH中原存的是正數(shù)還是負(fù)數(shù)?其理由是什么?(3)結(jié)果(AH)=85H是否對的?理由是什么?18.分析下面的程序,回答指定的問題。BEGIN:LEABX,BUFFERXORALMOVCL,64HREPEAT:MOVBYTEPTR[BX],ALINCBXDECCLJNZREPEAT問:該程序完畢的功能是。19.分析下面的程序,回答指定的問題。DAT1DB0,1,2,3,4,5,6,7,8,9DAT2DB5DUP(?)…MOVCX,5MOVBX,5MOVSI,0MOVDI,0NEXT:MOVAL,DAT1[BX+SI]MOVDAT2[DI],ALINCSIINCDILOOPNEXT問:(1)該程序完畢的功能是什么?(2)程序執(zhí)行后寫出DAT2數(shù)據(jù)區(qū)的內(nèi)容是什么?20.指出下列程序段完畢的操作。MOVCL,4MOVDL,ALANDDL,0FHSHRAL,CLANDAL,0FHMOVDH,DLMOVBL,AHANDBL,0FHSHRAH,CLANDAH,0FHMOVAL,AHMOVCL,DH21.假如把AX,BL和DH中的內(nèi)容分別乘以8,使用下面指令序列能完畢此工作嗎?為什么?MOVCL,3SHLAX,CLSHLBL,CLSHLDH,CL23.下列語句中,哪些是無效的匯編語言指令?并指出無效指令中的錯(cuò)誤。(1)MOVSP,AL(2)MOVWORD-OP[BX+4*3][SI],SP(3)MOVVAR1,VAR2(4)MOVCS,AX(5)MOVDS,BP(6)MOVSP,SS:DATA-WORD[SI][DI](7)MOVAX,VAR1+VAR2(8)MOVAX,[BX-SI](9)INC[BX](10)MOV25,[BX](11)MOV[8-BX],WORDPTR25(12)MOVAL,DATA2[SI](13)MOVAX,OLA-DATA(14)MOVAX,[BX*7](15)MOVAL,BYTEPTR[SI-100H]24.若數(shù)組ARRAY在數(shù)據(jù)段中已作以下定義ARRAYDW100DUP(?)試指出下列語句中操作數(shù)中的各操作符的作用,指令執(zhí)行后各寄存器產(chǎn)生了什么變化?MOVBX,OFFSETARRAYMOVCX,LENGTHARRAYMOVSI,0ADDSI,TYPEARRAY25.試分析下列程序段,說明完畢了什么操作?SKEYDB2…START:MOVAL,SKEYLEABX,BRATBSHLAL,1XORAH,AHADDBX,AXJMPBX…BRATB:JMPSHORTZEROJMPSHORTONEJMPSHORTTWOJMPSHORTTHREE…26.執(zhí)行下列程序段前,BUFFER存儲(chǔ)區(qū)的數(shù)據(jù)為:DB1,2,3,4,5,6請給出執(zhí)行下面程序段后BUFFER存儲(chǔ)區(qū)中的數(shù)據(jù)。MOVSI,OFFSETBUFFERMOVCX,5XORALAGAIN:SHL[SI],1INCSYTEPTR[SI]ADDAL,[SI]INCSILOOPAGAINMOV[SI],AIHLT27.判斷下列指令或程序是否有錯(cuò),若有錯(cuò),請指犯錯(cuò)在哪里?(1)K1EQU1024…MOVK1,AX(2)MOVDS,100MOV[1000],[2023](3)IMPDB?…MOVIMP,AX(4)A1DB?A2DB10…CMPA1,A2(5)將1000送入X1單元,用如下程序:X1DB?…MOVBX,X1MOV[BX],100028.假設(shè)VAR1和VAR2為自變量,LAB為程序中的一個(gè)標(biāo)號(hào),試找出下列指令的錯(cuò)誤之處。(1)ADDVAR1,VAR2(2)SUBAL,VAR1(3)JNZVAR1(4)JMPLAB[SI](5)JMPNEARLAB26.有符號(hào)定義語句如下:BUFFDB1,2,3,‘123’EBUFFDB0LEQUEBUFF-BUFF問L的值為多少?29.假設(shè)程序中的數(shù)據(jù)定義如下:LNAMEDB30DUP(?)ADDRESSDB30DUP(?)CITYDB15DUP(?)CODE_(tái)LISTDB1,7,8,3,2(1)用一條MOV指令將LNAME的偏移地址放入BX。(2)用一條指令將CODE_LIST的頭兩個(gè)字節(jié)內(nèi)容放入SI。(3)寫一條偽指令使CODE_(tái)LENTH的值等于CODE_LIST域的實(shí)際長度。31.指出下列每一對偽指令語句的區(qū)別。(1)X1DB76X2EQU76(2)X1DW3548HX2EQUBYTEPTRX1(3)X1EQU3X2=3(4)X1DW3678HX2DB36H,78H(5)X1DW6341HX2DW634132.假設(shè)程序中的數(shù)據(jù)定義如下:PARTNODW?PNAMEDB16DUP(?)COUNTDD?PLENTHEQU$-PARTNO問PLENTH的值為多少?它表達(dá)什么意義?四、計(jì)算4.一個(gè)16位二進(jìn)制整數(shù),若采用補(bǔ)碼表達(dá),由5個(gè)“1”和11個(gè)“

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論