《匯編語言程序設(shè)計(jì)》_第1頁
《匯編語言程序設(shè)計(jì)》_第2頁
《匯編語言程序設(shè)計(jì)》_第3頁
《匯編語言程序設(shè)計(jì)》_第4頁
《匯編語言程序設(shè)計(jì)》_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

實(shí)驗(yàn)一:匯編語言語法練習(xí)與代碼轉(zhuǎn)換

時(shí)間:周四地點(diǎn):1418類型:驗(yàn)證一、實(shí)驗(yàn)?zāi)康模?/p>

學(xué)習(xí)掌握匯編語言語法格式,匯編源程序的基本結(jié)構(gòu),掌握分支、循環(huán)、子程序等基本結(jié)構(gòu)程序的設(shè)計(jì)方法。二、實(shí)驗(yàn)內(nèi)容

1.修改一個(gè)有語法錯(cuò)誤的匯編語言源程序。

2.設(shè)計(jì)匯編程序?qū)崿F(xiàn)數(shù)據(jù)的查找、統(tǒng)計(jì),代碼轉(zhuǎn)換及屏幕顯示等功能。三、實(shí)驗(yàn)要求

1.掌握匯編語言語法格式以及匯編程序的編輯、匯編、鏈接和執(zhí)行的開發(fā)全過程。2.掌握匯編語言分支,循環(huán)程序的設(shè)計(jì)。四、實(shí)驗(yàn)報(bào)告要求

實(shí)驗(yàn)報(bào)告的內(nèi)容:實(shí)驗(yàn)名稱、實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)內(nèi)容、實(shí)驗(yàn)程序、實(shí)驗(yàn)結(jié)果分析、實(shí)驗(yàn)過程遇到的問題及體會(huì)。實(shí)驗(yàn)報(bào)告以文本形式遞交,要求書寫規(guī)范、文字簡(jiǎn)練、語句通順、圖表清晰。;FILENAME:EXA1.asm.486DATASEGMENTUSE16SUMDB?,?,MESGDB'25+9='DB0,0,'$'N1DW9,F0HN2DB?DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,SEGDATAMOVDS,AXMOVBX,OFFSETSUMMOVAH,N1MOVAL,N2ADDAH,ALMOV[BX],AHCALLCHANGMOVAH,9MOVDX,OFFSETMESGINT21HMOVAH,4CHINT21HCHANGPROCLAST:CMP[BX],10JCNEXTSUB[BX],10INC[BX+7]JMPLASTNEXT:ADD[BX+8],SUMMOVDL,30HADD[BX+7],DLADD[BX+8],DLRETCHANGENDPCODEENDSENDBEG實(shí)驗(yàn)二:用戶登錄驗(yàn)證程序

時(shí)間:周四地點(diǎn):1416類型:設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)掌握匯編語言的開發(fā)過程,匯編源程序的編程格式和基本結(jié)構(gòu),DOS/BIOS功能調(diào)用,掌握分支、循環(huán)、子程序等基本結(jié)構(gòu)程序的設(shè)計(jì)方法。二、實(shí)驗(yàn)內(nèi)容用匯編語言程序設(shè)計(jì)方法,設(shè)計(jì)一個(gè)用戶登陸驗(yàn)證程序。三、實(shí)驗(yàn)要求1.程序執(zhí)行后,給出操作提示,請(qǐng)用戶鍵入用戶名和密碼。2.用戶在鍵入密碼時(shí),程序不回顯鍵入字符。3.只有當(dāng)用戶鍵入的用戶和密碼字符串和程序內(nèi)定的字符串相同時(shí),顯示歡迎界面,并返回DOS。四、實(shí)驗(yàn)報(bào)告要求實(shí)驗(yàn)報(bào)告的內(nèi)容:實(shí)驗(yàn)名稱、實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)內(nèi)容、實(shí)驗(yàn)程序、實(shí)驗(yàn)結(jié)果分析、實(shí)驗(yàn)過程遇到的問題及體會(huì)。實(shí)驗(yàn)報(bào)告以文本形式遞交,要求書寫規(guī)范、文字簡(jiǎn)練、語句通順、圖表清晰。實(shí)驗(yàn)二:用戶登錄驗(yàn)證程序

要求:

TOM

****

功能要求:

先輸出登陸用戶名稱,并回車,然后由用戶輸入4位密碼,但是密碼不能顯示出來。判斷輸入的密碼與預(yù)先設(shè)定的密碼是否相同習(xí)題:

1

.數(shù)制和碼制轉(zhuǎn)換

(1)(11101.1011)2=(29.6875)10(2)(147)10=(10010011)2=(93)16(3)(3AC)16=(940)10(4)(1001,0110)BCD=(1100000)2(5)字長(zhǎng)=8,[-1]補(bǔ)=(FF)16[X]補(bǔ)=(A5)16,則X=(-5B)16

(6)設(shè)字長(zhǎng)=8位,X=(8E)16,當(dāng)X分別為原碼、補(bǔ)碼、反碼和無符號(hào)數(shù)的時(shí)候,其真值=()16X分別為原碼真值=(-E)16X分別為補(bǔ)碼真值=(-72)16X分別為反碼真值=(-71)16X分別為無符號(hào)數(shù)真值=(8E)16(7)字長(zhǎng)=8,用補(bǔ)碼形式完成下列十進(jìn)制數(shù)運(yùn)算。要求有運(yùn)算過程并討論結(jié)果是否有溢出?(A)(+75)+(-6)(B)(-35)+(-75)(C)(-85)-(-15)(D)(+120)+(+18)

[X+Y]補(bǔ)=[X]補(bǔ)+[Y]補(bǔ)

[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)步驟:1)X->[X]補(bǔ),Y->[Y]補(bǔ)2)進(jìn)行[X]補(bǔ)+[Y]補(bǔ)運(yùn)算3)根據(jù)[X+Y]補(bǔ),計(jì)算出X+Y4)判斷溢出的條件:無符號(hào)數(shù),根據(jù)CF判斷;有符號(hào)數(shù),根據(jù)OF判斷(A)(+75)+(-6)

[X]補(bǔ)=01001011[Y]補(bǔ)=11111010∴X+Y=(+1000101)2=(+69)10OF=0,無溢出[X+Y]補(bǔ)=101000101解:X=(+75)10=(+1001011)2,[X]補(bǔ)=(01001011)2Y=(-6)10=(-110)2,[Y]補(bǔ)=(11111010)2有同學(xué)直接寫成(-6)10=(10000110)2×(B)(-35)+(-75)

[X]補(bǔ)=11011101[Y]補(bǔ)=10110101∴X+Y=(-1101110)2=(-110)10OF=0,無溢出[X+Y]補(bǔ)=110010010解:X=(-35)10=(-100011)2,[X]補(bǔ)=(11011101)2Y=(-75)10=(-1001011)2,[Y]補(bǔ)=(10110101)2(C)(-85)-(-15)

[X]補(bǔ)=10101011[Y]補(bǔ)=00001111∴X+Y=(-1000110)2=(-70)10OF=0,無溢出[X+Y]補(bǔ)=010111010解:X=(-85)10=(-1010101)2,[X]補(bǔ)=(10101011)2Y=(+15)10=(+1111)2,[Y]補(bǔ)=(00001111)2(D)(+120)+(+18)

[X]補(bǔ)=01111000[Y]補(bǔ)=00010010∴X+Y=(-1110110)2=(-118)10OF=1,溢出[X+Y]補(bǔ)=010001010解:X=(+120)10=(+1111000)2,[X]補(bǔ)=(01111000)2Y=(+18)10=(+10010)2,[Y]補(bǔ)=(00010010)2有同學(xué)直接寫:因?yàn)?20+18=138>127,所以溢出。不符合題意×1.(1)1234H:5678H--->179B8H(2)2F34H:2F6H即2F34H:02F6H--->2F636H(3)576AH:1024H--->586C4H(4)2FD0H:100H即2FD0H:0100H--->2FE00H容易出錯(cuò):16進(jìn)制加法,邏輯地址長(zhǎng)度(16位)2.寫出目標(biāo)操作數(shù)、源操作數(shù)的尋址方式,改正非法內(nèi)存操作數(shù),寫出CPU尋址的邏輯段目標(biāo)操作數(shù)尋址方式

源操作數(shù)尋址方式

CPU尋址的邏輯段(1)寄存器尋址立即數(shù)尋址(2)間接尋址立即數(shù)尋址數(shù)據(jù)段

CMPBYTEPTR[BX],100(3)間接尋址立即數(shù)尋址數(shù)據(jù)段

ADDWORDPTR[SI],1000(4)寄存器尋址寄存器尋址(5)寄存器尋址基址尋址堆棧段(6)寄存器尋址基址+變址尋址數(shù)據(jù)段3.(1)CF23H+C678H=959BH1100111100100011+1100011001111000--------------------------------------------(1)1001010110011011A=0,C=1,O=0,P=0,S=1,Z=0容易出錯(cuò):CPU判溢(應(yīng)使用公式計(jì)算)(2)6398H+C678H=2A10H0110001110011000+1100011001111000--------------------------------------------(1)0010101000010000A=1,C=1,O=0,P=0,S=0,Z=0(3)94FBH+C678H=5B73H1001010011111011+1100011001111000--------------------------------------------

(1)0101101101110011A=1,C=1,O=1,P=0,S=0,Z=0(4)65E2H+C678H=2C5AH0110010111100010+1100011001111000--------------------------------------------(1)0010110001011010A=0,C=1,O=0,P=1,S=0,Z=04.分別用一條指令完成:(1)AH高四位置1,低四位不變

ORAH,0F0HAH高四位取反,低四位不變

XORAH,0F0H(2)BH高4位取反,低4位不變,

BL高4位不變,低4位取反

XORBX,0F00FH(3)CX低4位清0,其他位不變

ANDCX,0FFF0H5.FIRSTDB12H,34HSECONDDB56H,78H(1)采用傳送指令編寫程序MOVAX,WORDPTRFIRSTMOVBX,WORDPTRSECONDMOVWORDPTRFIRST,BXMOVWORDPTRSECOND,AXMOVAL,FIRSTMOVAH,SECONDMOVFIRST,AHMOVSECOND,ALMOVAL,FIRST+1MOVAH,SECOND+1MOVFIRST+1,AHMOVSECOND+1,ALMOVAX,WORDPTRFIRSTXCHGAX,WORDPTRSECONDMOVWORDPTRFIRST,AX解法1解法2解法3錯(cuò)誤的代碼MOVAL,FIRSTMOVBL,SECONDXCHGAL,BLMOVAL,FIRST+1MOVBL,SECOND+1

溫馨提示

  • 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)論