老師課堂畫的題 及 答案_第1頁(yè)
老師課堂畫的題 及 答案_第2頁(yè)
老師課堂畫的題 及 答案_第3頁(yè)
老師課堂畫的題 及 答案_第4頁(yè)
老師課堂畫的題 及 答案_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

老師課堂畫的題及答案老師課堂畫的題及答案老師課堂畫的題及答案資料僅供參考文件編號(hào):2022年4月老師課堂畫的題及答案版本號(hào):A修改號(hào):1頁(yè)次:1.0審核:批準(zhǔn):發(fā)布日期:2.9請(qǐng)將下列左邊的項(xiàng)和右邊的解釋聯(lián)系起來(把所選字母放在括號(hào)中):(1)CPU(M) A.保存當(dāng)前棧頂?shù)刂返募拇嫫鳌?2)存儲(chǔ)器(C) B.指示下一條要執(zhí)行的指令的地址。(3)堆棧(D) C.存儲(chǔ)程序、數(shù)據(jù)等信息的記憶裝置,微機(jī)有RAM和ROM(4)IP(B) D.以后進(jìn)先出方式工作的存儲(chǔ)空間。(5)SP(A) E.把匯編語(yǔ)言程序翻譯成機(jī)器語(yǔ)言程序的系統(tǒng)程序。(6)狀態(tài)標(biāo)志(L) F.唯一代表存儲(chǔ)空間中每個(gè)字節(jié)單元的地址。(7)控制標(biāo)志(K) G.能被計(jì)算機(jī)直接識(shí)別的語(yǔ)言。(8)段寄存器(J) H.用指令的助記符、符號(hào)地址、標(biāo)號(hào)等符號(hào)書寫程序的語(yǔ)言。(9)物理地址(F) I.把若干個(gè)模塊連接起來成為可執(zhí)行文件的系統(tǒng)程序。(10)匯編語(yǔ)言(H) J.保存各邏輯段的起始地址的寄存器,8086/8088機(jī)有四個(gè)(11)機(jī)器語(yǔ)言(G) K.控制操作的標(biāo)志,如DF位。(12)匯編程序(E) L.記錄指令操作結(jié)果的標(biāo)志,共6位:OF、SF、ZF、AF、PFCF。(13)連接程序(I) M.分析、控制并執(zhí)行指令的部件,由算術(shù)邏輯部件AU和寄。(14)指令(O) N.由匯編程序在匯編過程中執(zhí)行的指令。(15)偽指令(N) O.告訴CPU要執(zhí)行的操作(一般還要指出操作數(shù)地址),在程3.8假定(DS)=2000H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)=0010數(shù)據(jù)段中變量名VAL的偏移地址為0050H,試指出下列源操作數(shù)字段的尋址方式是什么物理地址值是多少?(1)MOVAX,0ABH 立即方式;操作數(shù)在本條指令中(2)MOVAX,BX 寄存器尋址方式;操作數(shù)為(BX)=0100H

(3)MOVAX,[100H] 直接尋址方式;PA=20100H(4)MOVAX,VAL 直接尋址方式;PA=20050H

(5)MOVAX,[BX] BX寄存器間接尋址方式;PA=20100H(6)MOVAX,ES:[BX] 附加段BX寄存器間接尋址方式;PA=21100H

(7)MOVAX,[BP] BP寄存器間接尋址方式;PA=15010H(8)MOVAX,[SI] SI寄存器間接尋址方式;PA=200A0H

(9)MOVAX,[BX+10] BX寄存器相對(duì)尋址方式;PA=20110H(10)MOVAX,VAL[BX] BX寄存器相對(duì)尋址方式;PA=20150H

(11)MOVAX,[BX][SI] BX和SI寄存器基址變址尋址方式;PA=201A0H(12)MOVAX,VAL[BX][SI] BX和SI寄存器相對(duì)基址變址尋址方式;PA=201F0H3.10如TABLE為數(shù)據(jù)段中0032單元的符號(hào)名,其中存放的內(nèi)容為1234H,試問以下兩條指令有什么區(qū)別?指令執(zhí)行完后AX寄存器的內(nèi)容是什么?

MOVAX,TABLE

LEAAX,TABLE答:MOVAX,TABLE是將TABLE單元的內(nèi)容送到AX,(AX)=1234H

LEAAX,TABLE是將TABLE單元的有效地址送到AX,(AX)=0032H3.11執(zhí)行下列指令后AX寄存器中的內(nèi)容是什么?TABLEDW10,20,30,40,50;000AH,0014H,001EH,0028H,0032HENTRYDW3┇MOVBX,OFFSETTABLEADDBX,ENTRYMOVAX,[BX]答:(AX)=1E00H3.14設(shè)(DS)=1B00H,(ES)=2B00H,有關(guān)存儲(chǔ)單元的內(nèi)容如上右圖所示。請(qǐng)寫出兩條指令把字變量X裝入AX寄存器。

答: MOVBX,[2000H]

MOVAX,ES:[BX]3.27假定(DX)=0B9H,(CL)=3,(CF)=1,確定下列各條指令單獨(dú)執(zhí)行后DX中的值。

(1)SHRDX,1;(DX)=05CH

(2)SARDX,CL;(DX)=17H

(3)SHLDX,CL;(DX)=5C8H

(4)SHLDL,1;(DX)=72H

(5)RORDX,CL;(DX)=2017H

(6)ROLDL,CL;(DX)=0CDH

(7)SALDH,1;(DX)=0B9H

(8)RCLDX,CL;(DX)=2CCH

(4)RCRDL,1;(DX)=0DCH3.36假設(shè)X和X+2單元的內(nèi)容為雙精度數(shù)p,Y和Y+2單元的內(nèi)容為雙精度數(shù)q,(X和Y為低位字)試說明下列程序段做什么工作?MOVDX,X+2MOVAX,XADDAX,XADCDX,X+2CMPDX,Y+2JLL2JGL1CMPAX,YJBEL2L1:MOVAX,1JMPSHORTEXITL2:MOVAX,2EXIT:INT20H答:此程序段判斷p*2>q,則使(AX)=1后退出;p*2≤q,則使(AX)=2后退出。3.38在下列程序的括號(hào)中分別填入如下指令:(1)LOOPL20(2)LOOPEL20(3)LOOPNEL20試說明在三種情況下,當(dāng)程序執(zhí)行完后,AX、BX、CX、DX四個(gè)寄存器的內(nèi)容分別是什么?TITLEEXLOOP.COMCODESGSEGMENTASSUMECS:CODESG,DS:CODSEG,SS:CODSEGORG100HBEGIN:MOVAX,01MOVBX,02MOVDX,03MOVCX,04L20:INCAXADDBX,AXSHRDX,1()RETCODESGENDSENDBEGIN答:(1)(AX)=5H,(BX)=10H,(CX)=0H,(DX)=0H(2)(AX)=2H,(BX)=4H,(CX)=3H,(DX)=1H(3)(AX)=3H,(BX)=7H,(CX)=2H,(DX)=0H4.1指出下列指令的錯(cuò)誤:(1)MOVAH,BX;寄存器類型不匹配(2)MOV[BX],[SI];不能都是存儲(chǔ)器操作數(shù)(3)MOVAX,[SI][DI];[SI]和[DI]不能一起使用(4)MOVMYDAT[BX][SI],ES:AX;AX寄存器不能使用段超越(5)MOVBYTEPTR[BX],1000;1000超過了一個(gè)字節(jié)的范圍(6)MOVBX,OFFSETMYDAT[SI];MYDAT[SI]已經(jīng)是偏移地址,不能再使用OFFSET(7)MOVCS,AX;CS不能用作目的寄存器(8)MOVECX,AX;兩個(gè)操作數(shù)的數(shù)據(jù)類型不同4.2下面哪些指令是非法的?(假設(shè)OP1,OP2是已經(jīng)用DB定義的變量)(1)CMP15,BX;錯(cuò),立即數(shù)不能作為目的操作數(shù)(2)CMPOP1,25(3)CMPOP1,OP2;錯(cuò),不能都是存儲(chǔ)器操作數(shù)(4)CMPAX,OP1;錯(cuò),類型不匹配,應(yīng)為CMPax,wordptrop14.10假設(shè)程序中的數(shù)據(jù)定義如下:LNAMEDB30DUP(?)ADDRESSDB30DUP(?)CITYDB15DUP(?)CODE_LISTDB1,7,8,3,2(1)用一條MOV指令將LNAME的偏移地址放入AX。(2)用一條指令將CODE_LIST的頭兩個(gè)字節(jié)的內(nèi)容放入SI。(3)用一條偽操作使CODE_LENGTH的值等于CODE_LIST域的實(shí)際長(zhǎng)度。答:(1)MOVAX,OFFSETLNAME(2)MOVSI,WORDPTRCODE_LIST(3)CODE_LENGTHEQU$-CODE_LIST;此語(yǔ)句必須放在CODE_LIST語(yǔ)句之后4.13對(duì)于下面的數(shù)據(jù)定義,三條MOV指令分別匯編成什么?(可用立即數(shù)方式表示)TABLEADW10DUP(?)TABLEBDB10DUP(?)TABLECDB‘1234’┇MOVAX,LENGTHTABLEA;匯編成MOVAX,000AHMOVBL,LENGTHTABLEB;匯編成MOVBL,000AHMOVCL,LENGTHTABLEC;匯編成MOVCL,0001H4.14對(duì)于下面的數(shù)據(jù)定義,各條MOV指令單獨(dú)執(zhí)行后,有關(guān)寄存器的內(nèi)容是什么?FLDBDB?TABLEADW20DUP(?)TABLEBDB‘ABCD’(1)MOVAX,TYPEFLDB;(AX)=0001H(2)MOVAX,TYPETABLEA;(AX)=0002H(3)MOVCX,LENGTHTABLEA;(CX)=0014H(4)MOVDX,SIZETABLEA;(DX)=0028H(5)MOVCX,LENGTHTABLEB;(CX)=0001H4.19試說明下述指令中哪些需要加上PTR操作符:BVALDB10H,20HWVALDW1000H(1)MOVAL,BVAL;不需要(2)MOVDL,[BX];不需要(3)SUB[BX],2;需要,如SUBBYTEPTR[BX],2(4)MOVCL,WVAL;需要,如MOVCL,BYTEPTRWVAL(5)ADDAL,BVAL+1;不需要5.1試編寫一個(gè)匯編語(yǔ)言程序,要求對(duì)鍵盤輸入的小寫字母用大寫字母顯示出來。答:TEXTSEGMENT ASSUMECS:TEXTSTART: MOVAH,1 INT21H CMPAL,'a' JBSTOP CMPAL,'z' JASTOP SUBAL,20H MOVDL,AL MOVAH,2 INT21H JMPSTARTSTOP: RETTEXTENDS5.3將AX寄存器中的16位數(shù)分成4組,每組4位,然后把這四組數(shù)分別放在AL、BL、CL和DL中。答:程序段如下:DSEGSEGMENTSTOREDB4DUP(?)DSEGENDS┇BEGIN:MOVCL,4;右移四次MOVCH,4;循環(huán)四次LEABX,STOREA10:MOVDX,AXANDDX,0FH;取AX的低四位MOV[BX],DL;低四位存入STORE中INCBXSHRAX,CL;右移四次DECCHJNZA10;循環(huán)四次完了碼?B10:MOVDL,STORE;四組數(shù)分別放在AL、BL、CL和DL中MOVCL,STORE+1MOVBL,STORE+2MOVAL,STORE+3STOP:RET5.4試編寫一程序,要求比較兩個(gè)字符串STRING1和STRING2所含字符是否完全相同,若相同則顯示‘MATCH’,若不相同則顯示‘NOMATCH’。答:程序如下:DSEGSEGMENTSTRING1DB‘Iamastudent.’STRING2DB‘Iamastudent!’YESDB‘MATCH’,0DH,0AH,‘$’NODB‘NOMATCH’,0DH,0AH,‘$’DSEGENDS;--------------------------------------------------------------------------CSEGSEGMENTMAINPROCFARASSUMECS:CSEG,DS:DSEG,ES:DSEGSTART:PUSHDS;設(shè)置返回DOSSUBAX,AXPUSHAXMOVAX,DSEGMOVDS,AX;給DS賦值MOVES,AX;給ES賦值BEGIN:LEASI,STRING1;設(shè)置串比較指令的初值LEADI,STRING2CLDMOVCX,STRING2-STRING1REPECMPSB;串比較JNEDISPNOLEADX,YES;顯示MATCHJMPDISPLAYDISPNO:LEADX,NO;顯示NOMATCHDISPLAY:MOVAH,9;顯示一個(gè)字符串的DOS調(diào)用INT21HRETMAINENDPCSEGENDS;以上定義代碼段;--------------------------------------------------------------------------ENDSTART5.11從鍵盤輸入一系列以$為結(jié)束符的字符串,然后對(duì)其中的非數(shù)字字符計(jì)數(shù),并顯示出計(jì)數(shù)結(jié)果。答:程序段如下:DSEGSEGMENTBUFFDB50DUP('')COUNTDW0DSEGENDS┇BEGIN:LEABX,BUFFMOVCOUNT,0INPUT:MOVAH,01,從鍵盤輸入一個(gè)字符的功能調(diào)用INT21HMOV[BX],ALINCBXCMPAL,'$’,是$結(jié)束符嗎?(FLAGS)(AX)(FLAGS)(AX)T_ADDR0000(DS)1000:0184:0186:0188:018A:018C:018ESP:01866.3題堆棧最滿時(shí)各單元的地址及內(nèi)容LEABX,BUFF,對(duì)非數(shù)字字符進(jìn)行計(jì)數(shù)NEXT:MOVCL,[BX]INCBXCMPCL,'$’,是$結(jié)束符,則轉(zhuǎn)去顯示JZDISPCMPCL,30H,小于0是非數(shù)字字符JBNEXTCMPCL,39H,大于9是非數(shù)字字符JANEXTINCCOUNT,個(gè)數(shù)+1JMPNEXTDISP:┇,16進(jìn)制數(shù)顯示程序段(省略)分析下面的程序,畫出堆棧最滿時(shí)各單元的地址及內(nèi)容。;********************************************S_SEG SEGMENTAT1000H ;定義堆棧段DW 200DUP(?) ;200*2=190HTOS LABEL WORDS_SEG ENDS;********************************************C_SEG SEGMENT ;定義代碼段ASSUMECS:C_SEG,SS:S_SEGSTART: MOV AX,S_SEGMOV SS,AXMOV SP,OFFSETTOSPUSH DSMOV AX,0PUSH AX┇PUSH T_ADDRPUSH AXPUSHF┇POPFPOP AXPOP T_ADDRRET;--------------------------------------------------------------------------C_SEG ENDS ;代碼段結(jié)束;******************************************END START ;程序結(jié)束8.5假定串行通訊口的輸入數(shù)據(jù)寄存器的端口地址為50H,狀態(tài)寄存器的端口地址為51H,狀態(tài)寄存器各位為1時(shí)含義如右圖所示,請(qǐng)編寫一程序:輸入一串字符并存入緩沖區(qū)BUFF,同時(shí)檢驗(yàn)輸入的正確性,如有錯(cuò)則轉(zhuǎn)出錯(cuò)處理程序ERROR_OUT。輸入數(shù)據(jù)準(zhǔn)備好76543210輸入數(shù)據(jù)準(zhǔn)備好76543210

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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)論