微機(jī)原理及匯編語(yǔ)言復(fù)習(xí)題及參考答案_第1頁(yè)
微機(jī)原理及匯編語(yǔ)言復(fù)習(xí)題及參考答案_第2頁(yè)
微機(jī)原理及匯編語(yǔ)言復(fù)習(xí)題及參考答案_第3頁(yè)
微機(jī)原理及匯編語(yǔ)言復(fù)習(xí)題及參考答案_第4頁(yè)
微機(jī)原理及匯編語(yǔ)言復(fù)習(xí)題及參考答案_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

-.z.微機(jī)原理與匯編語(yǔ)言復(fù)習(xí)題及參考答案——CSDN下載頻道提供,請(qǐng)尊重原創(chuàng)一、選擇題:1.設(shè)AL=0A8H,C*=2,CF=1,執(zhí)行RCL

AL,CL指令后,AL中的值為〔〕A.51H

B.A3H

C.47H

D.0C5H2.下述指令的執(zhí)行結(jié)果是〔〕MOV

AL,0C2HAND

AL,0F0HA.AL=40H

B.AL=20H

C.AL=0C0H

D.AL=0E0H3.完成對(duì)CL存放器的內(nèi)容乘以4的正確操作是〔〕A.ROLCL,1

B.MUL4

C.SHLCL,1

D.MOVCL,2ROLCL,1

SHLCL,1

SHLCL,CL4.無(wú)論BH中原有的數(shù)是奇數(shù)或偶數(shù),假設(shè)要使BH中的數(shù)一定為奇數(shù),應(yīng)執(zhí)行的指〔〕A.ADD

BH,01HB.OR

BH,01H

C.*OR

BH,01HD.TEST

BH,01H

5.假設(shè)〔AL〕=37H,〔BL〕=95H,執(zhí)行指令I(lǐng)MULBL后〔A*〕=

〔〕A.0E903HB.2003H

C.0DBBHD.2008H6.下面的數(shù)據(jù)傳送指令中,錯(cuò)誤的操作是〔〕A.MOV

SS:[B*+DI],1000HB.MOV

D*,1000H

C.MOV

WORDPTR[B*],1000H

D.MOV

DS,2000H7.CPU要訪問(wèn)的*一存儲(chǔ)單元的實(shí)際地址稱〔〕A.段地址B.偏移地址C.物理地址D.邏輯地址8.*存儲(chǔ)單元的物理地址是12345H,可以作為它的段地址有〔〕A.2345HB.12345H

C.12340HD.1234H

9.計(jì)算機(jī)能直接識(shí)別的的語(yǔ)言〔〕A.匯編語(yǔ)言B.機(jī)器語(yǔ)言C.高級(jí)語(yǔ)言D.低級(jí)語(yǔ)言10.以下指令中操作數(shù)在代碼段中的是〔〕A.MOVAL,25H

B.ADDAH,BL

C.INCDS:[25]D.CMPAL,BL11.直接、間接、立即三種尋址方式指令的執(zhí)行速度,由決至慢的排序?yàn)椤病矨.直接、立即、間接B.直接、間接、立即C.立即、直接、間接D.不一定12.假設(shè)棧頂?shù)奈锢淼刂肥?010011,當(dāng)執(zhí)行完指令CALLA*后,棧頂?shù)奈锢淼刂肥恰病矨.2010211

B.2010111

C.200FFH

D.200FEH13.當(dāng)執(zhí)行完以下指令序列后,標(biāo)志位CF和OF的值是〔〕MOVA*,OC126HMOVB*,5AB7HSUBA*,B*A.0,0

B.0,1

C.1,0

D.1,114.JMPB*的目標(biāo)地址偏移量是〔D〕。A.SI的內(nèi)容B.SI所指向的內(nèi)存字單元之內(nèi)容C.IP+SI的內(nèi)容D.IP+[SI]15.指令MOVA*,10[B*]的源操作數(shù)的尋址方式是〔〕A.基址尋址B.存放器尋址MOVA*,B*C.變址尋址A*【B*+DI】〔只能用B*,BP;SI和DI〕

D.存放器相對(duì)尋址16.指出以下哪個(gè)數(shù)據(jù)在匯編語(yǔ)言中是非法的?!病矨.19BH+25D

B.25+ALC.108-102Q

D.101B*OABH17.用來(lái)存放即將執(zhí)行的指令的偏移地址的存放器是〔〕A.SP

B.IP

C.BP

D.CS18.源變址存放器是〔〕A.SI

B.DI

C.SP

D.B*19.設(shè)SP=1200H,執(zhí)行POPA*后,SP中的內(nèi)容為〔〕A.SP=1112H

B.SP=11OEH

C.SP=1111H

D.SP=11OFH20.?dāng)?shù)字6704不可能是〔〕A.六進(jìn)制數(shù)B.十進(jìn)制數(shù)C.十二進(jìn)制數(shù)D.十六進(jìn)制數(shù)21.下面四個(gè)存放器中,不能用于間接尋址的存放器是〔〕A.B*

B.A*

C.BP

D.DI22.假設(shè)〔B*〕=OCA8H,則執(zhí)行指令MOVCL,8RORB*,CL后,〔B*〕=〔〕A.OCA8H

B.8ACOH

C.OA80CH

D.OA8COH23.下面數(shù)據(jù)傳送指令中,正確的選項(xiàng)是〔〕A.MOVDS,ES

B.MOVAL,WORDPTR[B*+DI]C.MOVAL,BYTEPTR[SI+DI]

D.MOVC*,[SI]24.以下哪一種尋址方式最快?〔〕A.立即尋址B.直接尋址C.存放器尋址D.存放器間接尋址25.存放器間接尋址中,操作數(shù)在〔〕A.通用存放器B.堆棧C.主存單元D.段存放器26.在順序構(gòu)造的流程圖中,不包含有〔〕A.起始框B.終止框C.判斷框D.處理框27.以8086/8088為CPU的微機(jī)內(nèi)存最大容量為〔〕A.4MB

B.1MBC.640KB

D.64KB28.與lA.5H不等的數(shù)據(jù)是〔〕A.26.3125D

B.11010.0101BC.32.5Q

D.10110.0100B29.8位二進(jìn)制補(bǔ)碼表示的整數(shù)數(shù)據(jù)范圍是〔〕A.-128~127

B.-127~127C.-128~128

D.-127~12830.以下四個(gè)存放器中,不允許用傳送指令賦值的存放器是〔〕A.CS

B.DSC.ES

D.SS31.指令MOV100[SI][BP],A*的目的操作數(shù)的隱含段為〔〕A.?dāng)?shù)據(jù)段B.堆棧段C.代碼段D.附加段32.運(yùn)算型指令的尋址和轉(zhuǎn)移型指令的尋址,其不同點(diǎn)在于〔〕A.前者取操作數(shù),后者決定程序的轉(zhuǎn)移地址B.后者取操作數(shù),前者決定程序的轉(zhuǎn)移地址C.兩者都是取操作數(shù)D.兩者都是決定程序的轉(zhuǎn)移地址33.設(shè)AL=0A8H,C*=2,CF=1,執(zhí)行RCLAL,CL指令后,AL=

〔〕A.51H

B.A3H

C.47H

D.0C5H34.目的變址存放器是〔〕A.SI

B.DI

C.SP

D.B*35.以下常用尋址方式中,哪種屬于立即尋址(

)A.MOVA*,ES:[2000H]

B.MOV[B*],A*C.MOVA*,2000H

D.MOVA*,[B*+3AH]36.設(shè)SP=1110H,執(zhí)行PUSHA*后,SP中的內(nèi)容為〔〕A.SP=1112H

B.SP=110EHC.SP=I111H

D.SP=110FH37.以下指令中錯(cuò)誤的指令為〔〕A.MOVA*,CS

B.MOVDS,1500HC.MOVSI,B*

D.MOV[2000H],BL38.語(yǔ)句DA1DB2DUP(3,5〕,7匯編后,與該語(yǔ)句功能等同的語(yǔ)句是〔〕A.DA1DB3,5,7

B.DA1DB2,3,5,7C.DA1DB3,5,3,5,7

D.DA1DB3,5,7,3,5,739.下面四個(gè)存放器中,用來(lái)作為I/O端口間接尋址的存放器是〔〕A.B*

B.D*

C.BP

D.DI40.以下哪一種尋址方式最快?〔〕A.立即尋址

B.直接尋址C.存放器尋址

D.存放器間接尋址41.在串處理指令REPNZCMPSB表示在〔〕A.當(dāng)〔C*〕不等于0且ZF等于1的情況下,重復(fù)執(zhí)行串搜索B.當(dāng)〔C*〕不等于0且ZF等于0的情況下,重復(fù)執(zhí)行串搜索C.當(dāng)〔C*〕不等于0且ZF等于1的情況下,重復(fù)執(zhí)行串比擬D.當(dāng)〔C*〕不等于0且ZF等于0的情況下,重復(fù)執(zhí)行串比擬42.假設(shè)〔D*〕=0A74CH,〔CL〕=5,則指令SARD*,CL執(zhí)行后,〔D*〕=

〔〕A.053AH

B.653AHC.0FD3AH

D.740AH43.完成將有符號(hào)數(shù)B*的內(nèi)容乘以2的正確指令是〔〕A.SHRB*,1

B.SARB*,1C.SALB*,1

D.RCRB*,144.指令LOOPNZ的循環(huán)執(zhí)行條件是〔〕A.C*≠0且ZF=0

B.C*≠0或ZF=0C.C*≠0且ZF=1

D.C*≠0或ZF=145.以下存放器中不能作為間址存放器的是〔〕A.SI

B.DI

C.C*

D.B*46.JMPWORDPTR[B*]轉(zhuǎn)移的目標(biāo)地址是〔〕A.B*中的內(nèi)容

B.SP+B*之和C.IP+[B*]之和

D.B*指示的內(nèi)存單元之內(nèi)容二、填空題:1.計(jì)算機(jī)中的CPU由_______和______組成。2.(513.85)10=(___)16;(105.3)8=(____)10。3.假定機(jī)器的字長(zhǎng)為8位,且最高位為符號(hào)位,則(-127)10的原碼用8位二進(jìn)數(shù)表示為__,其補(bǔ)碼用8位二進(jìn)數(shù)可表示為__。4.I/O端口有兩種編址方式,分別是__________和__________。5.8086/8088的中斷系統(tǒng)能夠處理_256_個(gè)不同的中斷源,并為每一個(gè)中斷安排一個(gè)編號(hào),稱為中斷類型。每種中斷類型對(duì)應(yīng)的中斷效勞程序的入口地址稱為_____。6.循環(huán)構(gòu)造的程序主要由____、循環(huán)體、_____和循環(huán)控制局部組成。7.假設(shè)DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV

A*,〔SI+COUNT〕中,源操作數(shù)的有效地址EA為__________,其物理地址為__________。8.當(dāng)標(biāo)志位__________=1時(shí)表示無(wú)符號(hào)數(shù)運(yùn)算產(chǎn)生溢出,而當(dāng)標(biāo)志位__________=1是表示帶符號(hào)數(shù)運(yùn)算產(chǎn)生溢出。9.將十進(jìn)制數(shù)513.85轉(zhuǎn)換成二進(jìn)制數(shù)、八進(jìn)制數(shù)、十六進(jìn)制數(shù)和BCD碼分別可表示為__________、__________、__________、__________。10.十進(jìn)制數(shù)52的原碼、反碼、補(bǔ)碼〔采用8位二進(jìn)制,最高位為符號(hào)位〕分別可表示為_________、__________、__________。11.*個(gè)數(shù)的補(bǔ)碼為9DH,則其真值為__________。12.以下宏定義的功能是將一位十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼,請(qǐng)?jiān)诳瞻滋幪钊肭‘?dāng)內(nèi)容,使程序完整。HE*TOA

__________ANDAL,0FHCMPAL,__________JNAHE*TOA1ADDAL,7HHE*TOA1:

ADDAL,__________ENDM13.地址2000H:0480H,其物理地址是__________,段地址是__________,偏移量是__________。14.225D=__________B=__________H。15.[*]補(bǔ)=11010101,則*=__________D。16.執(zhí)行部件EU的主要功能是:____________________和____________________。17.8086CPU在取指令時(shí),會(huì)選取段存放器__________的值作為段基值,再加上由__________提供的偏移地址形成20位的物理地址。18.8086最多可處理__________種中斷,對(duì)每一個(gè)中斷都設(shè)置一個(gè)__________。19.8086CPU有兩種外部中斷請(qǐng)求線,它們分別是__________和__________。20.CPU與外設(shè)之間的數(shù)據(jù)傳送方式有__________、__________、__________和DMA方式傳送。21.·諾依曼型的計(jì)算機(jī)制構(gòu)造由__________、__________、__________、__________和__________五大局部組成。22.101011.101B=__________D=__________O=__________H。23.?dāng)?shù)字9的ASCII碼為__________。24.I/O端口有_________和_________兩種編址方式,8086的最大I/O尋址空間為_________。25.假設(shè)一個(gè)程序段開場(chǎng)執(zhí)行之前,〔CS〕=97F0H,〔IP〕=1B40H,該程序段啟動(dòng)執(zhí)行指令的實(shí)際地址是__________。26.6AB.24H=

__________B=__________O。27.數(shù)字"0〞和字母"K〞的對(duì)應(yīng)的ASCII碼分別為__________和__________。28.十進(jìn)制數(shù)-26的原碼、反碼、補(bǔ)碼〔采用8位二進(jìn)制,最高位為符號(hào)位〕分別為__________、__________、__________;一個(gè)數(shù)的補(bǔ)碼為B2H,其真值為__________。29.匯編語(yǔ)句中,語(yǔ)句標(biāo)號(hào)具備的三種屬性分別是__________、__________、__________;變量具備的三種屬性分別是__________、__________、__________。30.8086CPU的數(shù)據(jù)總線為_________位,地址總線為_________位,最大的存儲(chǔ)空間是_________。31.8086CPU的標(biāo)志存放器共有9個(gè)有效標(biāo)志位,其中有6個(gè)狀態(tài)標(biāo)志位,分別是_________、__________、_________、__________、_________、__________。32.*=-1011011B,則*的反碼為_________,*的補(bǔ)碼為_________。33.8086CPU在取指令時(shí),會(huì)選取段存放器__________的值作為段基值,再加上由__________提供的偏移地址形成20位的物理地址。三、判斷題:1.奇偶標(biāo)志位PF,當(dāng)運(yùn)算結(jié)果的低8位中有偶數(shù)個(gè)1時(shí),被置為0。〔〕2.CS,DS,ES和SS段都可以存放指令代碼。〔〕3.MOVSI,[SI]

〔〕4.MOV[DI],[SI]

〔〕5.兩數(shù)相等時(shí)轉(zhuǎn)移可用JZ指令?!病?.OUT[B*],AL

〔〕7.當(dāng)IF=0時(shí),CPU不能響應(yīng)NMI中斷?!病?.把假設(shè)干個(gè)模塊連接起來(lái)成為可執(zhí)行文件的系統(tǒng)程序是匯編程序。(

)9.使匯編程序執(zhí)行*種操作的命令是宏指令。(

)10.串操作指令中,目的操作數(shù)的段地址一定在DS存放器中。

(

)11.在匯編語(yǔ)句AGAIN:INCSI中的AGAIN稱為標(biāo)號(hào)。(

)12.MOVBH,1000[SI],該指令中源操作數(shù)采用的尋址方式是存放器間接尋址。(

)13.ORAL,AL是邏輯或操作指令。(

)14.DOS系統(tǒng)功能調(diào)用中,顯示單個(gè)字符的系統(tǒng)調(diào)用號(hào)是01H。(

)15.使計(jì)算機(jī)執(zhí)行*種操作的命令是偽指令。(

)四、改錯(cuò)題:1.下述程序執(zhí)行后,應(yīng)將LIST數(shù)組中的最大值存入MA*單元,數(shù)組元素為無(wú)符號(hào)字?jǐn)?shù)據(jù),數(shù)據(jù)個(gè)數(shù)在CNT單元中?,F(xiàn)程序有錯(cuò),請(qǐng)改正,使之完成預(yù)定功能。1〕DSEGSEGMENT2〕LISTDW1,200,30,400,0,7,40003〕CNTDB74〕

MA*DW?5〕DSEGENDS6〕CSEGSEGMENT7〕

ASSUMEDS:DSEGDS:CODE8〕FMA*:

MOVD*,DSEG9〕

MOVDS,A*10〕

LEASI,LIST11〕MOVC*,CNT12〕

CLD13〕LODSW14〕

DECC*15〕CMPAL,[SI]16〕

JLESMALL17〕

LODSW18〕SMALL:INCSI19〕

INCSI20〕

DECC*21〕LOOPAGAIN22〕

MOVMA*,SI23〕MOVAL,4CH24〕

INT21H25〕CSEGEND26〕

ENDSTART2.下面的程序是將內(nèi)存單元一字節(jié)數(shù)據(jù)乘以10放回單元的程序,找出錯(cuò)誤并改正。DATASEGMENTDADW34DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVA*,DATAMOVDS,A*MOVSI,OFFSETDAMOVAL,[SI]MUL10MOV[SI],A*MOVAH,4CHINT21HCODEENDSENDSTART五、簡(jiǎn)答題:1.80386/80486有幾種工作模式?各有什么特點(diǎn)?2.假定一個(gè)名為MAINPRO的程序要調(diào)用子程序SUBPRO,試問(wèn):〔1〕MAINPRO中的什么指令申明匯編程序SUBPRO是在外部定義的?〔2〕SUBPRO怎么知道MAINPRO要調(diào)用它?3.現(xiàn)有〔DS)=2000H,〔B*)=O100H,〔SI)=0002H,〔20100H)=12H,〔2010H)=34H,〔20102H〕=56H,〔20103H〕=78H,〔21200H)=2AH,〔21201H)=4CH,〔21202H)=B7H,〔21203H〕=65H,試說(shuō)明以下指令執(zhí)行后,A*存放器中的內(nèi)容。〔1〕MOVA*,[1200H]

〔2〕MOVA*,[B*]

〔3〕MOVA*,1100H[B*]

〔4〕MOVA*,[B*+SI]〔5〕MOVA*,[1100H+B*+SI]

4.匯編語(yǔ)言源程序的語(yǔ)句類型有哪幾種?各自的作用和使用規(guī)則是什么?5.一個(gè)匯編源程序應(yīng)該由哪些邏輯段組成?各段如何定義?各段的作用和使用考前須知是什么?6.什么是微型計(jì)算機(jī)的系統(tǒng)總線?定性說(shuō)明微處理器三大總線的作用。六、程序分析題:1.試分析以下程序段,如果A*和B*的內(nèi)容分別給出如下5種情況,問(wèn)程序分別轉(zhuǎn)向何處?〔1〕A*=1478H,B*=80DCH〔2〕A*=0B568H,B*=54B5H〔3〕A*=42C8H,B*=608DH〔4〕A*=0D023H,B*=9FD0H〔5〕A*=94B7H,B*=0B568H

ADD

A*,B*

JNO

L1

JNC

L2

SUB

A*,B*

JNC

L3

JNO

L4

JMP

L52.?dāng)?shù)據(jù)段中定義DAT1DB

12H,34H,56H,78HMOVC*,0MOVA*,WORDPTRDAT1MOVCL,DAT1+3當(dāng)程序段執(zhí)行完后A*=________,C*=________。3.執(zhí)行完程序后,答復(fù)指定的問(wèn)題。BLOCKDB20H,1FH,08H,81H,OFFH…RESULTDB?START:LEASI,BLOCKMOVCH,OMOVCL,[SI]DECC*INCSIMOVAL,[SI]LOP1:CMPAL,[SI+1]JLENE*TMOVAL,[SI+1]NE*T:

INCSILOOPLOP1MOVRESULT,ALHLT問(wèn):〔1)該程序的功能是〔〕;〔2〕該程序的循環(huán)次數(shù)是〔〕。4.分析以下程序,答復(fù)以下問(wèn)題:〔1〕該程序完成什么功能?〔2〕程序中的INCSI可否用指令A(yù)DDSI,1代替,為什么?〔3〕程序中的指令LEASI,DATAI可用指令〔〕代替?!?〕CLC指令的目的是〔〕。DATASEGMENTDATAIDB85H,27H,4AHDATA2DB93H,87H,65HLEGHDW3SUMDB0,0,0DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVA*,DATAMOVDS,A*LEASI,DATA1LEAB*,DATA2LEADI,SUMMOVC*,LEGHCLCAGAIN:MOVAL,[SI]ADCAL,[B*]MOV[DI],ALINCSIINCB*INCDILOOPAGAINMOVAH,4CH1NT21HCODEENDSENDSTART5.執(zhí)行完程序后,答復(fù)指定的問(wèn)題。MOVA*,200HMOVB*,500HMOV[B*+1OH],30HADDA*,[B*+1OH]LEASI,[B*+lOH]MOVB*,A*問(wèn):程序段執(zhí)行后,SI=〔〕,B*=〔〕。七、程序設(shè)計(jì):1.將DAT字存儲(chǔ)單元中的16位二進(jìn)制數(shù)分成四組,每組四位,然后將這四組數(shù)分別放至DAT1、DAT2、DAT3和DAT4這4個(gè)字節(jié)單元中。2.設(shè)有10個(gè)學(xué)生的成績(jī)分別是70,75,89,68,63,88,78,74,81和90。編制一個(gè)子程序統(tǒng)計(jì)60-69,70-79,80-89,90-99及100分的人數(shù)并分別存放到S6,S7,S8,S9和S10單元中。3.在以BUR為首地址的數(shù)據(jù)區(qū)中存放了N字節(jié)數(shù)據(jù),編寫程序完成將數(shù)據(jù)塊搬至BUF2為首地址的存儲(chǔ)區(qū)中,要求:〔1)用一般數(shù)據(jù)傳送指令MOV實(shí)現(xiàn);〔2)用數(shù)據(jù)串傳送指令MOVSB實(shí)現(xiàn);〔3〕用數(shù)據(jù)串指令LODSB/STOSB實(shí)現(xiàn)。4.對(duì)一組無(wú)符號(hào)數(shù)進(jìn)展比擬,把最大數(shù)顯示在屏幕上。5.兩個(gè)無(wú)符號(hào)字?jǐn)?shù)據(jù)*、Y分別存放在ADR*和ADRY單元,編制程序,假設(shè)*是Y的倍數(shù),則顯示器上顯示0,否則顯示1。參考答案一、選擇題:1.B

2.C

3.C

4.B

5.A

6.D

7.C

8.D

9.B

10.A

11.C

12.D

13.C

14.A

15.D

16.B

17.B

18.A

19.B

20.A21.B

22.C

23.D

24.A

25.C

26.C

27.B

28.C

29.A

30.A31.B

32.A

33.B

34.B

35.C

36.B

37.B

38.C

39.B

40.A41.B

42.C

43.C

44.C

45.C

46.D二、填空題:1.運(yùn)算器控制器2.201.D999

69.3753.11111111

10000001

4.統(tǒng)一編址獨(dú)立編址5.256

中斷向量6.循環(huán)初始化局部循環(huán)參數(shù)修改局部7.20A8H

11488H

8.CF

OF

9.1000000001.1011B

1001.6631O

201.D999H

.10000101B10.00110100B

00110100B

00110100B

11.-63H12.MACRO

9

30H

13.20480H

2000H

0480H14.11100001

E115.-43H16.執(zhí)行指令產(chǎn)生訪問(wèn)存儲(chǔ)器時(shí)所需的16位偏移地址17.CS

IP18.256

中斷碼類型19.NMI

INTR〔可屏蔽中斷請(qǐng)求信號(hào)〕20.無(wú)條件傳送查詢方式傳送中斷方式傳送21.運(yùn)算器控制器存儲(chǔ)器輸入設(shè)備輸出設(shè)備22.43.625

53.5

2B.A

23.39H24.統(tǒng)一編址獨(dú)立編址64KB25.99A40H26.3253.11

1707.14127.30H

4BH

28.10011010B

11100101B

11100110B

-4EH29.段屬性偏移量屬性距離屬性;段屬性偏移量屬性類型屬性30.16

20

1MB31.進(jìn)位標(biāo)志位〔CF〕輔助進(jìn)位標(biāo)志位〔AF〕符號(hào)標(biāo)志位〔SF〕零標(biāo)志位〔ZF〕溢出標(biāo)志位〔OF〕奇偶標(biāo)志位〔PF〕32.10100100B

10100101B33.CS

IP三、判斷題:1.×

2.×

3.×

4.×

5.√

6.×

7.×

8.×9.×

10.×

11.√

12.×

13.√

14.√

15.×四、改錯(cuò)題:1.解答:〔1〕3行,數(shù)據(jù)定義偽指令DB改為DW〔2〕8行,D*改為A*〔3〕15行,循環(huán)入口,加標(biāo)號(hào)AGAIN,即將本行改為:AGAIN:CMPA*,[SI]〔4〕16行,JLE改為JAE〔5〕17行,LODSW改為MOVA*,[SI]〔6〕20行,去掉該行語(yǔ)句〔7〕22行,SI改為A*〔8〕23行,AL改為AH〔9〕25行,END改為ENDS〔10〕26行,START改為程序入口標(biāo)號(hào)FMA*2.解答:MOVAL,[SI]

改為MOVAL,BYTEPTR[SI]MUL10

改為MOVBL,10

MULBL五、簡(jiǎn)答題:1.答:80386/80486有實(shí)地址模式、保護(hù)模式和虛擬8086模式三種工作方式?!?〕實(shí)地址模式下的80386/80486的工作原理與8086一樣,內(nèi)存管理只采用分段管理方式,而不采用分頁(yè)管理;內(nèi)存最大空間為1MB,采用段地址尋址的存儲(chǔ)方式,每個(gè)段最大為64KB;操作數(shù)的默認(rèn)長(zhǎng)度為16位?!?〕保護(hù)模式下,CPU實(shí)際可訪問(wèn)的物理空間最大為4GB,可選擇使用分頁(yè)構(gòu)造;存儲(chǔ)器空間用邏輯地址、線性地址和物理地址空間描述;CPU根本構(gòu)造沒有發(fā)生變化,指令和尋址方式依舊。在這種尋址方式中,可以對(duì)存儲(chǔ)器實(shí)施保護(hù)功能〔制止程序非法操作〕和特權(quán)級(jí)的保護(hù)功能〔主要保護(hù)操作系統(tǒng)的數(shù)據(jù)不被應(yīng)用程序修改〕。虛擬8086模式下,既有保護(hù)模式功能,又可執(zhí)行8086的指令代碼。2.答:〔1〕只要在MAINPRO中用E*TRN說(shuō)明SUBPRO即可;〔2〕只要定義SUBPRO時(shí)用PUBLIC定義即可。3.答:〔1〕A*=4C2AH

〔2〕A*=3412H

〔3〕A*=4C2AH〔4〕A*=7856H

〔5〕A*=65B7H4.答:匯編語(yǔ)言源程序的語(yǔ)句類型通常有3種類型,分別是:指令語(yǔ)句、偽指令語(yǔ)句和宏指令語(yǔ)句?!?〕指令語(yǔ)句是能產(chǎn)生目標(biāo)代碼、CPU可以執(zhí)行的能完成特定功能的語(yǔ)句,主要由CPU指令組成?!?〕偽指令語(yǔ)句是種不產(chǎn)生目標(biāo)代碼的語(yǔ)句,在匯編過(guò)程中告訴匯編程序應(yīng)如何匯編。〔3〕宏指令語(yǔ)句是一個(gè)指令序列,匯編時(shí)凡有宏指令語(yǔ)句的地方都將用相應(yīng)的指令序列的目標(biāo)代碼插入。5.答:匯編程序是將匯編源程序自動(dòng)翻譯成目的程序的軟件,而匯編源程序是用匯編語(yǔ)言編寫的程序。匯編程序的主要功能是將由匯編語(yǔ)言〔助記符〕編寫的源程序翻譯成用機(jī)器語(yǔ)言〔二進(jìn)制代碼〕編寫的目標(biāo)程序;匯編源程序的作用是進(jìn)展程序設(shè)計(jì)。6.答:微型計(jì)算機(jī)的系統(tǒng)總線是CPU與其他部件之間傳送數(shù)據(jù)、地址和控制信息的公共通道。根據(jù)傳送內(nèi)容的不同,系統(tǒng)總線可分成以下3種:〔1〕數(shù)據(jù)總線DB〔DataBus):用于CPU與主存儲(chǔ)器、CPU與I/O接口之間傳送數(shù)據(jù)。數(shù)據(jù)總線的寬度等于計(jì)算機(jī)的字長(zhǎng)。數(shù)據(jù)總線一般為雙向總線,可以向兩個(gè)方向傳輸數(shù)據(jù)。〔2〕地址總線AB(AddressBus):用于CPU訪問(wèn)主存儲(chǔ)器和外部設(shè)備時(shí)傳送相關(guān)的地址。地址總線的寬度決定CPU的尋址能力。〔3〕控制總線CB(ControlBus)用于傳送CPU對(duì)主存儲(chǔ)器和外部設(shè)備的控制信號(hào)。7.答:宏與子程序兩者的一樣之處在于:都是用來(lái)處理在編程過(guò)程中屢次使用的功能程序的方法,兩者均能簡(jiǎn)化源程序。兩者的區(qū)別在于:(1)宏調(diào)用通過(guò)宏指令名進(jìn)展,匯編時(shí),隨時(shí)調(diào)用隨時(shí)展開,并不簡(jiǎn)化目標(biāo)程序:子程序調(diào)用是在程序執(zhí)行期間執(zhí)行CALL指令,代碼只在目標(biāo)程序中出現(xiàn)一次,所以也簡(jiǎn)化了目標(biāo)程序。(2)宏調(diào)用時(shí)的參數(shù)由匯編程序通過(guò)實(shí)參轉(zhuǎn)換成形參的方式傳遞,具有很大的靈活性。宏定義中允許設(shè)置假設(shè)干形式參數(shù)代替數(shù)值、指令、存放器、各種字符串等。宏調(diào)用時(shí)可用程序所需要的實(shí)際參數(shù)來(lái)替換,使編程人員感覺非常靈活;而子程序的參數(shù)傳遞要麻煩得多。(3〕宏調(diào)用在匯編時(shí)完成,不需要額外的時(shí)間開銷;子程序調(diào)用和子程序返回都需要時(shí)間,還涉及堆棧操作。故假設(shè)優(yōu)先考慮速度,用宏指令;假設(shè)優(yōu)先考慮存儲(chǔ)空間,用子程序。六、程序分析題:1.答:〔1〕L1

〔2〕L1

〔3〕L2

〔4〕L3

〔5〕L32.答:A*=3412H,C*=0078H

3.〔1〕從一組數(shù)中尋找最小數(shù)送RESULT單元?!?〕31次。4.解答:〔1〕該程序用來(lái)將存放在DATAI和DATA2開場(chǎng)的單元中的兩個(gè)多字節(jié)數(shù)據(jù)相加,并將結(jié)果放在SUM開場(chǎng)的連續(xù)單元中?!?〕不可以。因?yàn)锳DD指令影響進(jìn)位標(biāo)志位CF狀態(tài)?!?〕MOVSI,OFFSETDATA1〔4〕清進(jìn)位,以使在數(shù)據(jù)最低字節(jié)相加時(shí),可以用ADC指令。5.解答:SI=510H

B*=230H七、程序設(shè)計(jì):1.參考答案如下:DATA

SEGMENT

DAT

DW

0A5D2H

DAT1

DB

"

DAT2

DB

"

DAT3

DB

"

DAT4

DB

"DATA

ENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:

MOV

A*,DATA

MOV

DS,A*

MOV

A*,DAT

MOV

B*,0F0FH

AND

B*,A*

MOV

DAT1,BL

MOV

DAT3,BH

MOV

B*,0F0F0H

AND

B*,A*

MOV

DAT2,BL

MOV

DAT4,BH

MOV

AH,4CH

INT21H

CODEENDS

ENDSTART2.參考答案如下:分析:假設(shè)子程序的入口參數(shù)成績(jī)表長(zhǎng)度放在C*中,SI指向成績(jī)表首單元;出口參數(shù)放在S6,S7,S8,S9和S10單元中,并且各單元初值均為0。參考子程序如下:;子程序名:GRADES;功能:統(tǒng)計(jì)成績(jī)表GRADES中各個(gè)分?jǐn)?shù)段的人數(shù);入口參數(shù):C*中為成績(jī)表長(zhǎng)度,SI指向成績(jī)表首單元;出口參數(shù):各個(gè)分?jǐn)?shù)段人數(shù)分別放在存儲(chǔ)單元S6,S7,S8,S9和S10中;所用存放器:AL,C*,SIGRADESPROCPUSHC*

;保護(hù)用到的存放器PUSHSIPUSHA*NE*T:

CMPC*,O

;判斷成績(jī)表是否完畢JZE*ITDECC*MOVAL,[SI]

;將要比擬的成績(jī)放在AL中INCSICMPAL,100JBGRADE9

;小于100,轉(zhuǎn)向GRADE9INC[S10];S10單元內(nèi)容增1JMPNE*TGRADE9:CMPAL,90JBGRADE8

;小于90,轉(zhuǎn)向GRADE8INC[S9]

;S9單元內(nèi)容增1JMPNE*TGRADE8:CMPAL,80JBGRADE7

;小于80,轉(zhuǎn)向GRADE7INC[S8];S8單元內(nèi)容增1JMPNE*TGRADE7:CMPA

溫馨提示

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

評(píng)論

0/150

提交評(píng)論