微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案_第1頁
微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案_第2頁
微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案_第3頁
微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案_第4頁
微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

微型計(jì)算機(jī)原理第2版西安電子科技大學(xué)出版社第五章匯編語言程序設(shè)計(jì)課后習(xí)題答案第五章匯編語言程序設(shè)計(jì)

1、畫圖說明下列語句所安排的存儲(chǔ)器空間及初始化的數(shù)據(jù)值。

(1)BYTE_VARDB‘BYTE’,12,-12H,3DUP(0,7,2DUP(1,2),7)

(2)WORD_VARDW5DUP(0,1,2),7,-5,’BY’,’TE’,256H

答:(1)(2)

BYTE_VARWORD_VAR

2、假設(shè)程序中的數(shù)據(jù)定義如下:

PARTNODW?

PNAMEDB16DUP(?)

COUNTD

D?

PLENTHEQU$-PARTNO

問:PLENTH的值為多少?他表示什么意義?

答:PLENTH的值為22,它表示當(dāng)前已安排單元空間。

3、有符號(hào)定義語句如下:

BUFDB1,2,3,’123’

EBU

FDB0

LEQUEBUF-BUF

問:L的值是多少?

答:L的值為6;

4、假設(shè)成序中的數(shù)據(jù)定義如下:

LNAMEDB30DUP(?)

ADDRESSD

B30DUP(?)

CITYDB15DUP(?)

CODE_LISTDB1,7,8,3,2

(1)用一條MOV指令將LNAME的偏移地址存入BX。

(2)用一條指令將CODE_LIST的頭兩個(gè)字節(jié)的內(nèi)容放入SI。

(3)寫一條偽指令定義符使CODE_LENGTH的值等于CODE_LIST域的實(shí)

際長(zhǎng)度。

答:(1)MOVBX,OFFSETLNAME

(2)MOVSI,WORDPTRCODE_LIST

(3)CODE_LENGTHEQU$-CODE_LIST

5、對(duì)于下面的數(shù)據(jù)定義,試說明三條MOV語句指令的執(zhí)行結(jié)果。

TABLEADW10DUP(?)

TABLEBDB10DUP(?)

TABLECDB‘1234’

答:

MOVAX,LENGTHTABLEA;(AX)=000AH

MOVBL,LENGTHTABLEB;(BL)=0AH

MOVCL,LENGTHTABLEC;(CL)=01H

6、對(duì)于下面的數(shù)據(jù)定義,各條MOV指令單獨(dú)執(zhí)行后,有關(guān)寄存器的內(nèi)容是什么?

PLDBDB?

TABLEADW20DUP(?)

TABLEBDB‘ABCD’;答:

(1)MOVAX,TYPEPLDB;(AX)=0001H

(2)MOVAX,TYPETABLEA;(AX)=0002H

(3)MOVCX,LENGTHTABLEA;(CX)=0014H

(4)MOVDX,SIZETABLEA;(DX)=0028H

(5)MOVCX,LENGTHTABLEB;(CX)=0001H

7、試說明下述指令中哪些需要加上PTR偽指令定義符。

BVALDB10H,20H

WVALDW1000H;答:

(1)MOVAL,BVAL;

(2)MOVDL,;

(3)SUB,2;SUB,WORDPTR2

;SUBBYTEPTR,2

(4)MOVCL,WVAL;MOVCL,BYTEPTRWVAL

8、編寫一宏定義BXCHG,將一字節(jié)的高4位與低4位交換。

答:

BXCHGMACROBT

MOVAL,BT

MOVCL,4

ROLAL,CL

ENDM

9、已知宏定義如下:

XCHG0MACROA,B

MOVAH,A

XCHGAL,B

MOVA,AL

ENDM

OPPMACROP1,P2,P3,P4

XCHG0P1,P4

XCHG0P2,P3

ENDM

綻開宏調(diào)用OPPBH,BL,CH,CL

答:綻開宏調(diào)用OPPBH,BL,CH,CL為:

MOVAH,BH

XCHGAL,CL

MOVBH,AL

MOVAH,BL

XCHGAL,CH

MOVBL,AL

10、將AX寄存器中的16位數(shù)分成4組,每組4位,然后把這四組數(shù)分別放在AL、BL、CL和DL中。

答:

MOVDL,AH

ANDDL,0F0H

MOVCL,4

SHRDL,CL

PUSHAX

ANDAH,0FH

MOVBH,AH

ANDAL,0F0H

MOVBL,AL

MOVCL,4

SHRBL,CL

MOVCL,BH

POPAX

ANDAL,0FH

11、試編寫一程序,要求比較兩個(gè)字符串STRING1和STRING2所含字符是否相同,若相同則顯示“MATCH”,若不相同則顯示“NOMATCH”。

13、編寫程序,將以包含有20個(gè)數(shù)據(jù)的數(shù)組M分成兩個(gè)數(shù)組,正數(shù)數(shù)組P和負(fù)數(shù)數(shù)組N,并分別把這兩個(gè)數(shù)組中數(shù)據(jù)的個(gè)數(shù)顯示出來。

20、編寫程序,將字節(jié)變量BVAR中的壓縮型BCD數(shù)轉(zhuǎn)換為二進(jìn)制數(shù),并存入原變量中。

23、編寫程序,將字節(jié)變量BVAR中的無符號(hào)二進(jìn)制數(shù)(0~FFH)轉(zhuǎn)換為BCD數(shù),在屏幕上顯示結(jié)果。

24、設(shè)有字無符號(hào)數(shù)X、Y,試編制求Z=丨X-Y丨的程序。

11.

DATASEGMENT

Infor1DB'Pleaseinputstring1:',0AH,0DH,'$'

STR1DB12,0,10DUP(0)

Infor2DB0AH,0DH,'Pleaseinputstring2:',0AH,0DH,'$'STR2DB12,0,10DUP(0)

Infor3DB0AH,0DH,'MATCH',0AH,0DH,'$'

Infor4DB0AH,0DH,'NOMATCH',0AH,0DH,'$'DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

LEASI,STR1

LEADI,STR2

MOVDX,OFFSETInfor1

MOVAH,9

INT21H

MOVDX,OFFSETSTR1

MOVAH,0AH

INT21H

MOVDX,OFFSETInfor2

MOVAH,9

INT21H

MOVDX,OFFSETSTR2

MOVAH,0AH

INT21H

INCSI

INCDI

MOVAL,

MOVAH,

CMPAH,AL

JNZNOSAME

CHARPARE:

INCSI

INCDI

MOVBH,BYTEPTR

CMPBH,BYTEPTR

JNZNOSAME

DECAL

JNZCHARPARE

SAME:

MOVDX,OFFSETInfor3

MOVAH,9

INT21H

JMPReturnDOS

NOSAME:

MOVDX,OFFSETInfor4

MOVAH,9

INT21H

ReturnDOS:

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

EX511b.ASM

DATASEGMENT

Infor1DB'Pleaseinputstring1:',0AH,0DH,'$'

Infor2DB0AH,0DH,'Pleaseinputstring2:',0AH,0DH,'$'STR1DB12,0,10DUP(0)

STR2DB12,0,10DUP(0)

Infor3DB0AH,0DH,'MATCH',0AH,0DH,'$'

Infor4DB0AH,0DH,'NOMATCH',0AH,0DH,'$'DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

MOVES,AX

LEASI,STR1

LEADI,STR2

MOVDX,OFFSETInfor1

MOVAH,9

INT21H

MOVDX,OFFSETSTR1

MOVAH,0AH

INT21H

MOVDX,OFFSETInfor2

MOVAH,9

INT21H

MOVDX,OFFSETSTR2

MOVAH,0AH

INT21H

INCSI

INCDI

MOVAL,

MOVAH,

CMPAH,AL

JNZNOSAME

MOVAH,0

MOVCX,AX

INCSI

INCDI

CLD

PARE:

REPECMPSB

JNENOSAMESAME:

MOVDX,OFFSETInfor3

MOVAH,9

INT21H

JMPReturnDOSNOSAME:

MOVDX,OFFSETInfor4

MOVAH,9

INT21H

ReturnDOS:

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

EX513b

DATASEGMENT

MDB1,2,3,4,5,6,-7,-8,-9,-10,11,12,13,14,15,-16,-17,-18,-19,-20PDB20DUP(0)

NDB20DUP(0)

CountPDB0

CountNDB0

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

movbx,0

MOVSI,0

MOVDI,0

MOVCX,20

again:

cmpM,0

jlless

jeagain

incsi

jmpnext

less:

incdi

next:

incbx

deccx

jnzagainshow:

movax,si

movch,10

divch

movdl,al

movbh,ah

ADDDL,30H

MOVAH,2

INT21H

movdl,bh

ADDDL,30H

MOVAH,2

INT21H

movdl,2ch

movah,2

int21h

movax,di

movch,10

divch

movdl,al

movbh,ah

ADDDL,30H

MOVAH,2

INT21H

movdl,bh

ADDDL,30H

MOVAH,2

INT21H

movah,4ch

int21h

CODEENDS

ENDSTART

EX515.ASM

DATASEGMENT

INFOR0DB0AH,0DH,"pleaseinputafourhexnumber",0AH,0DH,'$'INFORDB0AH,0DH,"invalidhexdigital",0AH,0DH,'$'

INFOR2DB0AH,0DH,"convertbinaryis:",0AH,0DH,'$'

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX,DATA

MOVDS,AX

LEADX,INFOR0

MOVAH,9

INT21H

XORBX,BX

MOVCH,04

MOVCL,04

INPUT:

SHLBX,CL

MOVAH,01

INT21H

CMPAL,30H

JBERROR

CMPAL,39H

JANEXT

ANDAL,0FH

JMPBINARY

NEXT:

CMPAL,41H

JAECONTINE

JMPERRORCONTINE:

CMPAL,46H

JACONTINE2

JMPPROCESSCONTINE2:

CMPAL,61H

JAECONTINE3

JMPERRORCONTINE3:

CMPAL,66H

JAERRORPROCESS:

ANDAL,0FH

ADDAL,09HBINARY:

ORBL,AL

DECCH

JNEINPUT

LEADX,INFOR2

MOVAH,9

INT21HDISPN:

MOVCX,16DISP:

MOVDL,0

ROLBX,01

RCLDL,01

ORDL,30H

MOVAH,02

INT21H

LOOPDISP

JMPExit

ERROR:

LEADX,INFOR

MOVAH,9

INT21H

Exit:

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

EX520.ASM

DATASEGMENT

BVARDB35H

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATASTART:MOVAX,DATA

MOVDS,AX

MOVCL,4

MOVBL,BVAR

RORBL,CL

ANDBL,0FH

MOVAL,BL

MOVCH,10

MULCH

MOVBL,BVAR

ANDBL,0FH

ADDAL,BL

MOVBVAR,AL

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

EX523.ASM

DATASEGMENT

BVARDB0FFH

RESULTDB3DUP(0)

DATAENDS

CODESEGMENT

ASSUMECS:CODE,DS:DATASTART:MOVAX,D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論