




版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年割灌機(jī)合作協(xié)議書
- 強(qiáng)化合規(guī)經(jīng)營管理規(guī)避經(jīng)營風(fēng)險(xiǎn)隱患
- 構(gòu)建智能物流系統(tǒng)優(yōu)化配送效率
- 2025年離合器主缸合作協(xié)議書
- 西安機(jī)械加工生產(chǎn)服務(wù)合同
- 化妝品行業(yè)產(chǎn)品品質(zhì)追溯系統(tǒng)建設(shè)方案
- Perfluoro-2-5-dimethyl-3-6-dioxanonanoic-acid-生命科學(xué)試劑-MCE
- Fumonisin-B1-Standard-生命科學(xué)試劑-MCE
- D-Psicose-Standard-生命科學(xué)試劑-MCE
- 電鍍培訓(xùn)資料
- 多旋翼無人機(jī)駕駛員執(zhí)照(CAAC)備考試題庫大全-下部分
- 跌倒墜床公休座談會(huì)課件
- 浙教版(2023)六上 第15課 人機(jī)對(duì)話的實(shí)現(xiàn) 教案3
- 管理學(xué)專業(yè):管理基礎(chǔ)知識(shí)試題庫(附含答案)
- 醫(yī)療器械質(zhì)量安全風(fēng)險(xiǎn)會(huì)商管理制度
- 新疆維吾爾自治區(qū)2024屆高三下學(xué)期三模試題 語文試題
- 人教版初中化學(xué)實(shí)驗(yàn)?zāi)夸?總表)
- 《我愛上班》朗誦稿
- Q-GDW 11711-2017 電網(wǎng)運(yùn)行風(fēng)險(xiǎn)預(yù)警管控工作規(guī)范
- 幼兒園大班下學(xué)期數(shù)學(xué)期末檢測(cè)試卷第二套
- 2022年4月自考00277行政管理學(xué)試題及答案含解析
評(píng)論
0/150
提交評(píng)論