![匯編語(yǔ)言王爽第二版課后答案_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/14/b007995d-b36f-4834-ab85-870e08f2770a/b007995d-b36f-4834-ab85-870e08f2770a1.gif)
![匯編語(yǔ)言王爽第二版課后答案_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/14/b007995d-b36f-4834-ab85-870e08f2770a/b007995d-b36f-4834-ab85-870e08f2770a2.gif)
![匯編語(yǔ)言王爽第二版課后答案_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/14/b007995d-b36f-4834-ab85-870e08f2770a/b007995d-b36f-4834-ab85-870e08f2770a3.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第一章基礎(chǔ)知識(shí)檢測(cè)點(diǎn)1.1(第8頁(yè))13(2)1024,0,1023(3)8192,1024(4)2A30,2A20,2A10(5)64,1,16,4(6)1,1,2,2,4512,256(8)二進(jìn)制注意:第4題中的符號(hào)'A'指求籍運(yùn)算(如:2A30指2的30次方)第二章寄存器(CPU工作原理)檢測(cè)點(diǎn)2.1(第18頁(yè))(1)寫出每條匯編指令執(zhí)行后相關(guān)寄存器中的值。第一空:F4A3H第二空:31A3H第三空:3123H第四空:6246H第五空:826CH第六空:6246H第七空:826CH第八空:04D8H第九空:0482H第十空:6C82H第一空:D882H第十二空:D888H
2、第十三空:D810H第十四空:6246H只能使用目前學(xué)過的匯編指令,最多使用4條指令,編程計(jì)算2的4次方。解答如下:movax,2addax,axaddax,axaddax,ax檢測(cè)點(diǎn)2.2(第23頁(yè))(1)00010H,1000FH1001H,2000H第2題說明:因?yàn)槎蔚钠鹗嫉刂芬獮?6的倍數(shù)。所以當(dāng)段地址小于1001H或大于2000H時(shí)CPUK無法尋到。檢測(cè)點(diǎn)2.3(第33頁(yè))答:CPU修改了4次IP的值。情況如下:第1次:執(zhí)行完movax,bx后第2次:執(zhí)行完subax,ax后第3次:讀入jmpax后第4次:執(zhí)行完jmpax后最后IP的值為0實(shí)驗(yàn)1查看CPU和存,用機(jī)器指令和匯編指令編
3、程(第33頁(yè))預(yù)備知識(shí):Debug的使用此部分略實(shí)驗(yàn)任務(wù)(第43頁(yè))(1)此部分略此部分略通過DEBUC的D命令查看到主板的生產(chǎn)日期以月、日、年,分隔符為'/'的格式存儲(chǔ)在存ffff:0005ffff:000C(共8個(gè)字節(jié)單元中)處。此生產(chǎn)日期不能被改變,因?yàn)槠渚哂兄蛔x屬性。通過向存中的顯存寫入數(shù)據(jù),使計(jì)算機(jī)根據(jù)寫入的數(shù)據(jù)進(jìn)行ASCII轉(zhuǎn)換,并將轉(zhuǎn)換后且可打印的字符輸出到屏幕上。點(diǎn)i:關(guān)于顯存的詳細(xì)討論不在此題圍第三章寄存器(存訪問)檢測(cè)點(diǎn)3.1(第52頁(yè))(1)(題目:略)第一空:2662H第二空:E626H第三空:E626H第四空:2662H第五空:D6E6H第六空:FD4
4、8H第七空:2C14H第八空:0000H第九空:00E6H第十空:0000H第一空:0026H第十二空:000CH提示:此題可在DEBU映利用E命令在本機(jī)上按照題目中所給出的存單元及其數(shù)據(jù)進(jìn)行相應(yīng)地修改,然后再用A命令進(jìn)行寫入(題目中所給出的)相應(yīng)的匯編指令,最后再進(jìn)行T命令進(jìn)行逐步執(zhí)行,以查看相應(yīng)結(jié)果。1. 指令序列如下:2. movax,6622hjmp0ff0:0100movax,2000hmovds,axmovax,0008movax,0002寫出CPU執(zhí)行每條指令后,CSIP和相關(guān)寄存器中的數(shù)值。ax=5BEAax=5CCAbx=30F0bx=6029sp=FE220FE5CCAsp
5、=FC220FC6029sp=FE6029sp=100H5CCAsp=FE220FE30F0sp=FC220FC2E39說明:此題可能因機(jī)子軟、硬件環(huán)境不同而導(dǎo)致答案不一致!指令序列寄存器CSIPDSAXBX初始值2000H00001000H00movax,6622h2000H00031000H6622H0000jmp0ff0:01001000H00001000H6622H0000movax,2000h1000H00031000H2000H0000movds,ax1000H00052000H2000H0000movax,00081000H00082000HC389H10000movax,000
6、21000H000B2000HEA66H00003. 再次體會(huì):數(shù)據(jù)和程序有區(qū)別嗎?如何確定存中的信息哪些是數(shù)據(jù),哪些是程序?答:(略)檢測(cè)點(diǎn)3.2(第66頁(yè))(1)movax,2000Hmovss,axmovsp,10Hmovax,1000Hmovss,axmovsp,0H實(shí)驗(yàn)2用機(jī)器指令和匯編指令編程(第70頁(yè))預(yù)備知識(shí):Debug的使用此部分略實(shí)驗(yàn)任務(wù)(1)使用Debug,將下面的程序段寫入存,逐條執(zhí)行,根據(jù)指令執(zhí)行后的實(shí)際運(yùn)行情況填空。從第一空開始依次如下:(2)仔細(xì)觀察圖3.19的實(shí)驗(yàn)過程,然后分析:為什么2000:02000:f中的容會(huì)發(fā)生改變?答:因?yàn)橛肨指令進(jìn)行調(diào)試時(shí),會(huì)產(chǎn)生中
7、斷。而為了保護(hù)現(xiàn)場(chǎng),CPU則先將標(biāo)志寄存器進(jìn)棧、再把1前CS的值進(jìn)棧,最后將IP的值進(jìn)棧。關(guān)于中斷的詳細(xì)容的討論不在此題圍第五章BX和loop指令實(shí)驗(yàn)4BX和loop的使用(第113頁(yè))(1)編程,向存0:2000:23F依次傳送數(shù)據(jù)063(3FH)。程序如下:assumecs:codesgcodesgsegmentmovax,0020hmovds,axmovbx,0movdl,0movcx,40hs:movbx,dlincdlincbxloopsmovax,4c00hcodesgendsend編程,向存0:2000:23F依次傳送數(shù)據(jù)063(3FH),程序中只能使用9條指令,9條指令中包括“
8、movax,4c00h”和“int21h”。程序如下:assumecs:codesgcodesgsegmentmovax,0020hmovds,axmovbl,0movcx,40hs:movbx,blincblloopsmovax,4c00h(3) int21hcodesgendsend下面的程序的功能是將"movax,4c00h”之前的指令復(fù)制到存0:200處,補(bǔ)全程序。上機(jī)調(diào)試,跟蹤運(yùn)行結(jié)果。assumecs:codecodesegmentmovax,code;code為所填寫的數(shù)據(jù)movds,axmovax,0020hmovcx,18h;18h為所填寫的數(shù)據(jù)s:moval,bx
9、moves:bx,alincbxloopsmovax,4c00hint21hcodeendsend提示:因?yàn)轭}目的要求是把代碼段的指令當(dāng)作數(shù)據(jù),復(fù)制到目的地址。所以,源數(shù)據(jù)段ds和代碼段cs相同,通過movax,code/movds,ax('/'符號(hào)是指兩條指令的分隔)來設(shè)置源數(shù)據(jù)段??梢韵燃僭O(shè)要復(fù)制8位1h0ffh數(shù)據(jù)(因?yàn)槲覀內(nèi)庋劬涂梢钥闯龃顺绦虻拈L(zhǎng)度不可能大于0ffh個(gè)字節(jié))的字節(jié)數(shù)(如:10h),把程序補(bǔ)全,以便通過編譯。這時(shí)我們以準(zhǔn)確的第一空所填容code與假想的第二空容10h將程序補(bǔ)充完整并將其編譯、連接、運(yùn)行,接著進(jìn)行DEBUG在DEBUGS我們可用R命令查看CX
10、的值,這時(shí)我們可以看到CX的值為1D,由此我們可以算出該程序的長(zhǎng)度1Dh-5h=18h,之所以減5是為了滿足題目的要求(因?yàn)閙ovax,4c00h/int21h這兩條指令的長(zhǎng)度等于5)第六章包含多個(gè)段的程序檢測(cè)點(diǎn)6.1(第119頁(yè))assumecs:codesgcodesgsegmentdw0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hmovds,axmovbx,0movcx,8s:movax,bxmovcs:bx,ax;此條指令為所填指令addbx,2loopsmovax,4c00hint21hcodesgendsendstartassumec
11、s:codesgcodesgsegmentdw0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hdw0,0,0,0,0start:movax,cs;cs為所填第一空movss,axmovsp,1ah;此條指令為所填第二空movax,0movds,axmovbx,0movcx,8s:pushbxpopcs:bx;此條指令為所填第三空addbx,2loopsmovax,4c00hint21hcodesgendsendstart實(shí)驗(yàn)5編寫、調(diào)試具有多個(gè)段的程序(第123頁(yè))保持不變<考慮不同機(jī)子環(huán)境不同,答案無法統(tǒng)一>X-2,X-1(2)保持不
12、變<考慮不同機(jī)子環(huán)境不同,答案無法統(tǒng)一>X-2,X-1(N/16+1)*16說明:N/16只取整數(shù)部分保持不變<考慮不同機(jī)子環(huán)境不同,答案無法統(tǒng)一>X+3,X+4答:第3個(gè)仍然可以正確執(zhí)行。因?yàn)槿绻裡nd指令后的標(biāo)號(hào)start去掉后,編譯器便會(huì)順序執(zhí)行程序。換句話說:當(dāng)未給編譯器預(yù)先的通知,要求其從哪開始執(zhí)行程序時(shí),編譯器就自動(dòng)以至上向下的順序進(jìn)行編譯執(zhí)行源程序。(5)完整程序如下:assumecs:codeasegmentdb1,2,3,4,5,6,7,8aendsbsegmentdb1,2,3,4,5,6,7,8bendscsegmentdb0,0,0,0,0,0
13、,0,0cendscodesegmentstart:movax,amoves,axmovax,cmovds,axmovbx,0movcx,8s1:movax,es:bxaddbx,axaddbx,2loops1movax,bmoves,axmovds,axmovbx,0movcx,8s2:movax,es:bxaddbx,axaddbx,2loops2movax,4c00hint21hcodeendsendstart(6)完整程序如下:assumecs:codeasegmentdw1,2,3,4,5,6,7,8aendsbsegmentdw0,0,0,0,0,0,0,0bendscodeseg
14、mentstart:movax,bmovsp,10hmovax,amovds,axmovbx,0movcx,8s:pushbxaddbx,2loopsmovax,4c00hint21hcodeendsendstart第七章更靈活的定位存地址的方法實(shí)驗(yàn)6實(shí)踐課程中的程序(第147頁(yè))編程:完成問題中的程序。問題7.9完整程序如下:assumecs:codesg,ss:stacksg,ds:datasgstacksgsegmentdw0,0,0,0,0,0,0,0stacksgendsdb'1.display'db'2.brows'db'3.replace&
15、#39;db'4.modify'datasgendscodesgsegmentstart:movax,stacksgmovss,axmovsp,16movax,datasgmovds,axmovbx,0movcx,4s:;夕卜循環(huán)pushcxmovsi,3movcx,4s0:;循環(huán)moval,bx+siandal,11011111bmovbx+si,alincsiloops0addbx,16datasgsegmentpopcxdw11542,14430,45257,17800loopsmovax,4c00hint21hcodesgendsendstart第八章數(shù)據(jù)處理的兩個(gè)基本
16、問題實(shí)驗(yàn)7尋址方式在結(jié)構(gòu)化數(shù)據(jù)訪問中的應(yīng)用(第160頁(yè))完整程序如下:assumecs:codesg,ds:data,es:tabledatasegmentdb'1975','1976','1977','1978','1979','1980','1981','1982','1983'db'1984','1985','1986','1987','1988','1989
17、','1990','1991','1992'db'1993','1994','1995'以上是表示21年的21個(gè)字符串dd16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514dd345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000;以上是表示21年公司總收的21個(gè)dword型數(shù)據(jù)dw3,7,9,13,28,38,130,220,476,7
18、78,1001,1442,2258,2793,4037,5635,8226;以上是表示21年公司雇員人數(shù)的21個(gè)word型數(shù)據(jù)dataendstablesegmentdb21dup('yearsummne?')tableendscodesgsegmentstart:movax,datamovds,axmovax,tablemoves,axmovbx,0movsi,0movdi,0movcx,21s:;進(jìn)入循環(huán)moval,bxmoves:di,almoval,bx+1moves:di+1,almoval,bx+2moves:di+2,almoval,bx+3moves:di+3,
19、al;以上8句的作用是存放年份movax,54hbx;第一個(gè)'年收入'的段基址為54Hmovdx,56hbxmoves:5hdi,axmoves:7hdi,dx;以上4句的作用是存放公司總收入movax,0A8hsi;第一個(gè)'人數(shù)'的段基址為0A8Hmoves:0Ahdi,ax;以上2句是存放公司的人數(shù)movax,54hbxdivwordptrds:0A8hsimoves:0dhdi,ax;以上3句是存放人均收入addbx,4addsi,2adddi,16;以上3句是為下一次循環(huán)時(shí)存放數(shù)據(jù)做準(zhǔn)備;3個(gè)寄存器遞增的速度決定了所要存取的數(shù)據(jù)的位置的偏移地址loops
20、;跳到標(biāo)號(hào)s處movax,4c00hint21hcodesgends程序說明:此程序雖然可以達(dá)到預(yù)期效果(讀者可以自行調(diào)試驗(yàn)證),但實(shí)現(xiàn)方法比較簡(jiǎn)單,讀者有興趣的話可以尋找一種更具結(jié)構(gòu)化的設(shè)計(jì)方法來完成。第九章轉(zhuǎn)移指令的原理檢測(cè)點(diǎn)9.1(第170頁(yè))若要使jmp指令執(zhí)行后,CS:IP指向程序的第一條指令,在data中中應(yīng)該定義哪些數(shù)據(jù)?完整程序如下:assumecs:code,ds:datadatasegmentdb0,0,0dataendscodesegmentstart:movax,datamovds,axmovbx,0jmpwordptrbx+1;段間接轉(zhuǎn)移codeendsendstar
21、t;解題理由:為了使IP的值經(jīng)跳轉(zhuǎn)后變?yōu)?,則需保證ds:bx+1處的字型單元數(shù)據(jù)為0000H,;所以定義3個(gè)字節(jié)型數(shù)據(jù)0就符合“應(yīng)該”的要求(2)補(bǔ)全程序,使jmp指令執(zhí)行后,CS:IP指向程序的第一條指令。endstart完整程序如下:assumecs:code,ds:datadatasegmentdd12345678hdataendscodesegmentstart:movax,datamovds,axmovbx,0movbx,bx;源操作數(shù)bx為所填容movbx+2,cs;源操作數(shù)cs為所填容jmpdwordptrds:0codeendsendstart用Debug查看存,結(jié)果如下:2
22、000:1000BE0006000000.則此時(shí),CPU行指令:movax,2000Hmoves,axjmpdwordptres:1000H后,(CS)=?,(IP)=?提示:為了使本機(jī)環(huán)境2000:1000至2000:1005中的數(shù)據(jù)與題目中所給出的數(shù)據(jù)一致,可以通過編寫程序來完成,完整程序如下:assumecs:codecodesegmentstart:movax,2000hmovds,axmovbx,1000hmovwordptrbx.0,0BEHmovwordptrbx.2,6hmovwordptrbx.4,0;運(yùn)行完上6句則使2000:1000-2000:1005中的數(shù)據(jù)依次為:BE
23、,00,06,00,00,00;以上6句則按題目中的數(shù)據(jù)進(jìn)行初始化,以便使運(yùn)行環(huán)境符合題目要求;movax,2000hmoves,axjmpdwordptres:1000hcodeendsendstart經(jīng)上機(jī)調(diào)試得出:CS=0006H,IP=00BEH檢測(cè)點(diǎn)9.2(第172頁(yè))從標(biāo)號(hào)s處開始所要填寫的四條指令依次如下:第一條指令:movcl,bx第二條指令:movch,0第三條指令:jcxzok第四條指令:incbx檢測(cè)點(diǎn)9.3(第173頁(yè))補(bǔ)全程序,利用loop指令,實(shí)現(xiàn)在存2000H段中查找第一個(gè)值為0的byte,找到后,將它的偏移地址存儲(chǔ)在dx中。assumecs:codecodese
24、gmentstart:movax,2000hmovds,axmovbx,0s:movcl,bxmovch,0inccx;此條指令為題目要求補(bǔ)全的指令incbxloopok:decbxmovdx,bxmovax,4c00hint21hcodeendsendstart解答提醒:此題可用假設(shè)法來完成(比如設(shè)2000:0000至2000:0003的容依次為:1E06000A)。此題要注意loop指令的使用規(guī)則,同時(shí)要注意區(qū)別存單元與存單元中的數(shù)據(jù)(或容)的不同。實(shí)驗(yàn)8分析一個(gè)奇怪的程序(第174頁(yè))分析下面的程序,在運(yùn)行前思考:這個(gè)程序可以正確返回嗎?運(yùn)行后再思考:為什么是這種結(jié)果?通過這個(gè)程序加深對(duì)
25、相關(guān)容的理解。assumecs:codesgcodesgsegmentmovax,4c00hint21hstart:movax,0s:nopnopmovdi,offsetsmovsi,offsets2movax,cs:simovcs:di,axs0:jmpshortss1:movax,0int21hmovax,0s2:jmpshorts1nop實(shí)驗(yàn)9根據(jù)材料編程(第175頁(yè))codesgendsendstart程序可以正常返回。詳細(xì)分析:在此題中較為深入地考察了段直接短轉(zhuǎn)移形如:jmpshort標(biāo)號(hào)的概念。我們知道程序中:movdi,offsetsmovsi,offsets2movax,cs:
26、simovcs:di,ax四條指令的作用是將標(biāo)號(hào)s2處的一條指令復(fù)制到標(biāo)號(hào)s處。這時(shí)我們應(yīng)該關(guān)心所復(fù)制的語(yǔ)句"jmpshorts1"對(duì)程序的影響:我們知道在段直接短轉(zhuǎn)移指令所對(duì)應(yīng)的機(jī)器碼中,并不包含轉(zhuǎn)移的目的地址,而包含的是轉(zhuǎn)移的位移量(如對(duì)此概念還不太熟悉,請(qǐng)查看書中第167頁(yè)的容)。也就是說,在源程序的編譯過程中,編譯器遇到段直接短轉(zhuǎn)移形如:jmpshort標(biāo)號(hào)時(shí)就會(huì)自動(dòng)算出其要跳轉(zhuǎn)的位移量,以便程序在執(zhí)行段直接短轉(zhuǎn)移的指令時(shí)就根據(jù)位移量進(jìn)行(向前或向后)跳轉(zhuǎn)。通過調(diào)試中的U命令我們可以看到指令s2:jmpshorts1'所對(duì)應(yīng)的機(jī)器碼是EBF6,F6h(-10
27、d的補(bǔ)碼)就是跳轉(zhuǎn)的位移量此位移量也可由指令's2:jmpshorts1'處的偏移地址18h減去指令's2:jmpshorts1'后一個(gè)字節(jié)的偏移地址22h得出。這時(shí)我們就知道了其實(shí)復(fù)制到標(biāo)號(hào)s處的指令所對(duì)應(yīng)的機(jī)器碼就是EBF6(剛好取代兩個(gè)nop所對(duì)應(yīng)的機(jī)器碼),它的作用就是將當(dāng)前IP向前移動(dòng)10個(gè)字節(jié)。當(dāng)程序執(zhí)行標(biāo)號(hào)s0處的指令后,程序便跳到標(biāo)號(hào)s處接著執(zhí)行標(biāo)號(hào)s處的指令。s處的指令的作用是向前跳10字節(jié),于是便跳到了代碼中的第一條指令,繼續(xù)執(zhí)行后便實(shí)現(xiàn)了程序的正常返回。注意:此程序不會(huì)也不可能執(zhí)行標(biāo)號(hào)s1處后的指令。assumecs:code,ds:dat
28、a,ss:stackdatasegmentdb'welcometomasm!'定義要顯示的字符串(共16字節(jié))db02h,24h,71h;定義三種顏色屬性dataendsstacksegmentdw8dup(0)stackendscodesegmentstart:movax,datamovds,axmovax,stackmovss,axmovsp,10hmovbx,0movdi,0movax,0b872h;算出屏幕第12行中間的顯存的段起始位置放入ax中movcx,3;外循環(huán)為3次,因?yàn)橐@示三個(gè)字符串s3:pushcx;三個(gè)進(jìn)棧操作為外循環(huán)s3保存相關(guān)寄存器的值pushax;
29、以防止它們的值在循環(huán)中被破壞pushdimoves,ax;此時(shí)es為屏幕第12行中間的顯存的段起始位置movsi,0movdi,0movcx,10h;循環(huán)為10h次,因?yàn)橐粋€(gè)字符串中含10h個(gè)字節(jié)s1:moval,ds:bx+simoves:bx+di,alincsiadddi,2loops1;此循環(huán)實(shí)現(xiàn)偶地址中存放字符movsi,1;si的值設(shè)為1,從而為在顯存奇地址中存放字符的顏色屬性做準(zhǔn)備popdi;將di的值恢復(fù)成進(jìn)入循環(huán)之前的時(shí)候的值moval,ds:10hbx+di;取顏色屬性源OP尋址方式:相對(duì)基址變址movcx,10h;第二個(gè)循環(huán)也為10h次s2:moves:bx+si,ala
30、ddsi,2loops2;此循環(huán)實(shí)現(xiàn)奇地址中存放字符的顏色屬性;以下4句為下一趟外循環(huán)做準(zhǔn)備incdipopaxaddax,0ah;將顯存的段起始地址設(shè)為當(dāng)前行的下一行;在段地址中加0ah,相當(dāng)于在偏移地址中加了0a0h(=160d)popcxloops3tmovax,4c00hint21hcodeendsendstart第十章call和ret指令檢測(cè)點(diǎn)10.1(第179頁(yè))第一空:1000h第二空:0提示:此題等效于把CS的值改為1000H,把IP的值改為0。因?yàn)閞etf指令進(jìn)行的操作是先將IP出棧,再將CS出棧,所以在進(jìn)棧時(shí)應(yīng)當(dāng)進(jìn)行相反的操作。檢測(cè)點(diǎn)10.2(第181頁(yè))ax=6提示:在執(zhí)
31、行指令"calls"時(shí),IP的值變?yōu)?,接著進(jìn)棧。此時(shí)程序直接執(zhí)行指令"s:popax",這就等于把棧中IP的值放入ax中。所以答案為6。關(guān)于更多的call指令的問題請(qǐng)看附注中的“錯(cuò)誤指出”中的第6條。檢測(cè)點(diǎn)10.3(第181頁(yè))ax=1010提示:1. 寄存器中存放的值為16進(jìn)制數(shù)關(guān)于更多的call指令的問題請(qǐng)看附注中的“錯(cuò)誤指出”中的第6條。檢測(cè)點(diǎn)10.4(第182頁(yè))提示:關(guān)于更多的call指令的問題請(qǐng)看附注中的“錯(cuò)誤指出”中的第6條。檢測(cè)點(diǎn)10.5(第183頁(yè))答:ax中的數(shù)值為3提示:不能利用T命令進(jìn)行調(diào)試,貝U改用U和G命令來調(diào)試??捎肬命令
32、先查看指令"movax,4c00h"處的偏移地址,然后用G命令直接執(zhí)行到指令”movax,4c00h"的偏移地址處。ax=1bx=0提示:關(guān)于更多的call指令的問題請(qǐng)看附注中的“錯(cuò)誤指出”中的第6條。實(shí)驗(yàn)10編寫子程序(第194頁(yè))1.顯示子程序完整程序如下:datasegmentdb'Welcometomasm!',0dataendscodesegmentassumecs:code,ds:datastart:movdh,1;dh裝行號(hào)(圍:1-25)movdl,1;dl裝列號(hào)(圍:1-80)注:每超過80等于行號(hào)自動(dòng)加1movcl,0cah;c
33、l中存放顏色屬性(0cah為紅底高亮閃爍綠色屬性)movds,axmovsi,0callshow_strmovax,4c00hint21hshow_str:;顯示字符串的子程序定義開始pushcxpushsimoval,0A0hdecdh;行號(hào)在顯存中下標(biāo)從0開始,所以減1muldhmovbx,axmoval,2muldlsubax,2;列號(hào)在顯存中下標(biāo)從0開始,又因?yàn)榕甲止?jié)存放字符,所以減2addbx,ax;此時(shí)bx中存放的是行與列號(hào)的偏移地址movax,0B800hmoves,ax;es中存放的是顯存的第0頁(yè)(共0-7頁(yè))的起始的段地址movdi,0moval,clmovch,0s:movcl,d
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代商業(yè)辦公空間的照明藝術(shù)
- 現(xiàn)代辦公設(shè)備與技術(shù)概覽
- 殘障者康復(fù)教育與社區(qū)資源的聯(lián)動(dòng)發(fā)展
- Module3 Unit1 What are they doing?(說課稿)-2024-2025學(xué)年外研版(三起)英語(yǔ)四年級(jí)上冊(cè)
- 7 我是班級(jí)值日生(說課稿)-2024-2025學(xué)年統(tǒng)編版道德與法治二年級(jí)上冊(cè)
- Unit 3 Its a colourful world!Part B Let's learn(說課稿)-2024-2025學(xué)年外研版(三起)(2024)英語(yǔ)三年級(jí)上冊(cè)
- 2023六年級(jí)數(shù)學(xué)上冊(cè) 二 分?jǐn)?shù)乘法第3課時(shí) 分?jǐn)?shù)與整數(shù)相乘說課稿 蘇教版
- 5《這些事我來做》(說課稿)-部編版道德與法治四年級(jí)上冊(cè)
- Unit5 My clothes Part A Lets talk (說課稿)-2023-2024學(xué)年人教PEP版英語(yǔ)四年級(jí)下冊(cè)001
- 《1 有余數(shù)的除法-第二課時(shí)》(說課稿)-2023-2024學(xué)年二年級(jí)下冊(cè)數(shù)學(xué)蘇教版001
- 2025長(zhǎng)江航道工程局招聘101人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年黑龍江哈爾濱市面向社會(huì)招聘社區(qū)工作者1598人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 執(zhí)行總經(jīng)理崗位職責(zé)
- 《妊娠期惡心嘔吐及妊娠劇吐管理指南(2024年)》解讀
- 《黑神話:悟空》跨文化傳播策略與路徑研究
- 《古希臘文明》課件
- 居家養(yǎng)老上門服務(wù)投標(biāo)文件
- 長(zhǎng)沙市公安局交通警察支隊(duì)招聘普通雇員筆試真題2023
- 2025年高考語(yǔ)文作文滿分范文6篇
- 零售業(yè)連鎖加盟合同
- 2025高考語(yǔ)文復(fù)習(xí)之60篇古詩(shī)文原文+翻譯+賞析+情景默寫
評(píng)論
0/150
提交評(píng)論