匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一_第1頁
匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一_第2頁
匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一_第3頁
匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一_第4頁
匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告一_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

匯編語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告(一)實(shí)驗(yàn)?zāi)康?.掌握順序程序設(shè)計(jì)方法2.掌握分支程序的結(jié)構(gòu)及分支程序的設(shè)計(jì),調(diào)試方法3.學(xué)習(xí)數(shù)據(jù)傳送及算術(shù)和邏輯運(yùn)算指令的用法4.熟悉在PC機(jī)上建立、匯編、連接、調(diào)試和運(yùn)行匯編語言程序的過程實(shí)驗(yàn)內(nèi)容1.從鍵盤上接收一位十進(jìn)制數(shù)X,計(jì)算Y值,并以十六進(jìn)制形式顯示出來,Y按下列公式計(jì)算。2.從鍵盤上接收兩個(gè)一位十六進(jìn)制數(shù)X和Y,然后再輸入一個(gè)A-D之間的字符,按下列要求計(jì)算。A)當(dāng)輸入字符為A,則計(jì)算X+Y,并以十六進(jìn)制形式顯示出來B)當(dāng)輸入字符為B,則計(jì)算|X-Y|,并以十六進(jìn)制形式顯示出來C)當(dāng)輸入字符為C,則計(jì)算X*Y,并以十六進(jìn)制形式顯示出來D)當(dāng)輸入字符為D,則計(jì)算X/Y,并以十六進(jìn)制形式顯示出來實(shí)驗(yàn)結(jié)果1、結(jié)果截圖2、結(jié)果截圖源代碼1、代碼DATASEGMENT XDB? TABLEDWL1,L2,L3,L4 DATAENDS CODESEGMENT ASSUMECS:CODE,DS:DATA START:MOVAX,DATA MOVDS,AX MOVAH,1 INT21H CMPAL,33H JBL0 CMPAL,36H JAL0 ANDAL,0FH MOVX,AL SUBAL,3 SHLAL,1 XORAH,AH MOVBX,OFFSETTABLE ADDBX,AX JMP[BX] L1:MOVAL,X MULAL ADDAL,X JMPL7 L2:MOVAL,X MULAL SUBAL,X SUBAL,X JMPL7 L3:MOVAL,X MULAL JMPL7 L4:MOVAL,X MULAL MOVCL,2 DIVCL JMPL7L7:MOVBL,AL MOVCL,4 SHRAL,CL CMPAL,9 JLEL5 ADDAL,7 L5:ADDAL,30H MOVDL,AL MOVAH,2 INT21H ANDBL,0FH CMPBL,9 JLEL6 ADDBL,7 L6:ADDBL,30H MOVDL,BL MOVAH,2 INT21H L0:MOVAH,4CH INT21H CODEENDS ENDSTART2、代碼DATASEGMENTXDB?YDB?ZDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXXORAX,AXMOVAH,1INT21HMOVX,ALMOVAH,1INT21HMOVY,ALMOVAH,1INT21HMOVZ,ALMOVAL,XMOVBL,YMOVAH,ZCMPAL,39HJBEM1SUBAL,7M1:SUBAL,30HMOVX,ALCMPBL,39HJBEM2SUBBL,7M2:SUBBL,30HMOVY,BLMOVAL,XMOVBL,YCMPAH,41HJEL1CMPAH,42HJEL4CMPAH,43HJEL6CMPAH,44HJEL7L1:ADDAL,BLJMPL5L4:CMPAL,BLJAL8SUBBL,ALMOVAL,BLJMPL5L8:SUBAL,BLJMPL5L6:MOVAL,XMULBLJMPL5L7:XORAX,AXMOVAL,XDIVBLL5:MOVBH,ALMOVCL,4SHRAL,CLCMPAL,9JLEL2ADDAL,7L2:ADDAL,30HMOVDL,ALMOVAH,2INT21HANDBH,0FHCMPBH,9JLEL3ADDBH,7L3:ADDBH,30HMOVDL,BHMOVAH,2INT21HL0:MOVAH,4CHINT21HCODEENDSENDSTART五、實(shí)驗(yàn)心得通過本次實(shí)驗(yàn),我對匯編語言程序設(shè)計(jì)的方法和特點(diǎn)有了一點(diǎn)理解,并有以下心得體會。標(biāo)號并不是一個(gè)獨(dú)立于主程序的代碼段,它只是標(biāo)明了代碼行指令的符號地址,如果指令中沒有跳到某個(gè)標(biāo)號的指令,那么這段代碼是一直按順序執(zhí)行的,即使有標(biāo)號存在。對于要從鍵盤中鍵入字符的指令,寫一次指令,只能輸入一個(gè)字符,若想輸入幾個(gè)字符,就要用幾次指令,并且要及時(shí)將輸入時(shí)存入AL中的內(nèi)容轉(zhuǎn)移到相應(yīng)的存儲位置,否則,將會在原來的基礎(chǔ)上覆蓋,則只能留下最后一次輸入的結(jié)果。程序中的數(shù)據(jù)均為十六進(jìn)制,運(yùn)算也為十六進(jìn)制數(shù)的運(yùn)算,但是輸入一個(gè)字符,是將它對應(yīng)的的ASCII碼值存放在相應(yīng)的位置,輸出的時(shí)候,也是將相應(yīng)的ASCII碼對應(yīng)的字符輸出,因此,比如當(dāng)運(yùn)算結(jié)果為0AH時(shí),必須在0AH的基礎(chǔ)上+37H,轉(zhuǎn)化成'A'字符對應(yīng)的ASCII碼值,再輸出,才能顯示為A,這才是對應(yīng)的十六進(jìn)制數(shù)。例如,輸入一個(gè)十進(jìn)制數(shù)5,則存入的是35H,只有將35H減去30H,轉(zhuǎn)化成05H,才能繼續(xù)用它進(jìn)行運(yùn)算。設(shè)計(jì)程序時(shí),可以先將一種情況的程序設(shè)計(jì)出來,如x=3時(shí)的,然后經(jīng)調(diào)試成功之后,再將x=4,5,6時(shí)的情況補(bǔ)上,這樣程序設(shè)計(jì)更清晰,更易于理解設(shè)計(jì)過程。注意:補(bǔ)寫程序時(shí)要在結(jié)束語句之前補(bǔ)寫,否則補(bǔ)寫的部分無法執(zhí)行。補(bǔ)寫時(shí),要充分考慮到程序執(zhí)行的順序,注意體會標(biāo)號的含義,必要時(shí)使用JMP+標(biāo)號,跳脫不必要執(zhí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論