微機軟件實驗習題與答案(完整版)_第1頁
微機軟件實驗習題與答案(完整版)_第2頁
微機軟件實驗習題與答案(完整版)_第3頁
微機軟件實驗習題與答案(完整版)_第4頁
微機軟件實驗習題與答案(完整版)_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

./微機原理軟件實驗實驗1 兩個多位十進制數(shù)相加的實驗實驗容:將兩個多位十進制數(shù)相加,要求加數(shù)和被加數(shù)均以ASCII碼形式各自順序存放以DATA1和DATA2為首的5個存單元中〔低位在前,結(jié)果送回DATA1處。完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB'inputthefirstnumber:','$'STRING2DB13,10,'inputthesecondnumber:','$'STRING3DB13,10,'theoutputis:','$'DATA1DB6DUP<00H>,'$'DATA2DB6DUP<00H>,'$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼LEASI,DATA1LEADI,DATA2L0:LEADX,STRING1;打印字符串STRING1MOVAH,09INT21HINPUT1:;輸入第一個數(shù)MOVAH,01;輸入字符至AL中INT21HCMPAL,'/'JEL1MOV[SI],ALINCSIJMPINPUT1L1:LEADX,STRING2;打印字符串STRING2MOVAH,09INT21HINPUT2:;輸入第二個數(shù)MOVAH,01;輸入字符至ALINT21HCMPAL,'/'JEL2MOV[DI],ALINCDIJMPINPUT2L2:MOVSI,0CLC;清空進位標志位CFMOVCX,6PLUSE:;相加;SUBDATA1[SI],30H;SUBDATA2[SI],30H;這里不能使用這兩條指令,因為如果DATA1[5]=00H,00H-30H需要借位相減,使CF=1MOVAL,DATA1[SI]ADCAL,DATA2[SI]AAA;加法調(diào)整指令,可使兩個ASCII數(shù)直接相加MOVDATA1[SI],AL;和賦給DATA1[SI]INCSILOOPPLUSEL3:LEADX,STRING3;打印字符串STRING3MOVAH,09INT21HMOVCX,6MOVSI,6SHOW:DECSICMPDATA1[SI],00HJESHOWSHOW2:MOVDL,DATA1[SI]ADDDL,30HMOVAH,02INT21HCMPSI,0JEL4DECSIJMPSHOW2L4:MOVAH,4CHINT21HCODESENDSENDSTART運行結(jié)果如下:輸入為低位在前,即輸入1234和99999相加實際上是4321和99999相加〔即:4321+99999=104320實驗2 兩個數(shù)相乘的實驗〔無符號數(shù)相乘實驗容:實現(xiàn)十進制數(shù)的乘法。要求被乘數(shù)和乘數(shù)均以ASCII碼形式各自順序存放在存中,乘積在屏幕上顯示出來。完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB'theoutputis:','$'DATA1DB31H,32H,33HDATA2DB35H,36HDATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼MOVDL,10MOVAL,DATA1[0];AL=31HSUBAL,30H;AL=01HMULDL;乘10;AL=10ADDAL,DATA1[1];AL=10+32HSUBAL,30H;AL=10+32H-30H=12MULDL;AL=120ADDAL,DATA1[2];AL=120+33HSUBAL,30H;AL=120+33H-30H=123MOVBL,AL;BL=AL;MOVAL,DATA2[0];AL=35HSUBAL,30H;AL=5MULDL;乘10;AL=50ADDAL,DATA2[1];AL=50+36HSUBAL,30H;AL=50+36H-30H=56MULBL;AX=123x56=6888SUBDX,DX;DX清零MOVBX,1000DIVBX;<DX,AX>/1000,商6在AX中,余數(shù)888在DX中PUSHDXMOVDL,ALADDDL,30HMOVAH,02;打印最高位6INT21HPOPDXMOVBL,100MOVAX,DX;888賦給AXDIVBL;AX/100,商放在AL中,余數(shù)88放在AH中MOVDL,ALMOVCL,AH;?。?!這里千萬不能把AH直接賦給AL,因為經(jīng)過INT21H指令后AL,AH會改變ADDDL,30HMOVAH,02;打印第二位INT21HMOVBL,10MOVAL,CLSUBAH,AH;清空AHDIVBL;AX/10,商放在AL中,余數(shù)8放在AH中MOVDL,ALMOVCL,AHADDDL,30HMOVAH,02;打印第三位INT21HMOVDL,CLADDDL,30HMOVAH,02;打印第四位INT21HCODESENDSENDSTART運行結(jié)果為:實驗3 字符串匹配實驗實驗容:編寫程序?qū)崿F(xiàn)兩個字符串比較。如果相同,則屏幕顯示"match",否則屏幕顯示"nomatch" ,完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼PRINT1DB'inputthefirststring:','$'PRINT2DB13,10,'inputthesecondstring:','$'PRINT3DB'match','$'PRINT4DB'nomatch','$'PRINT5DB13,10,'output:','$'STRING1DB30DUP<00H>,13,10,'$'STRING2DB30DUP<00H>,13,10,'$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKS,ES:DATASSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼LEADX,PRINT1;打印字符串PRINT1MOVAH,09INT21HLEASI,STRING1;STRING1地址賦給SILEADI,STRING2;STRING2地址賦給DIINPUT1:MOVAH,01;輸入字符至ALINT21HCMPAL,'/';輸入字符串以‘/’結(jié)束,轉(zhuǎn)L0JEL0MOV[SI],ALINCSIJMPINPUT1L0:LEADX,PRINT2;打印字符串PRINT2MOVAH,09INT21HINPUT2:MOVAH,01;輸入字符至ALINT21HCMPAL,'/'JEL1MOV[DI],ALINCDIJMPINPUT2L1:MOVCX,30;CX=30代表比較30次MOVSI,00HCOMPARE:;字符串一個一個比較MOVAL,STRING1[SI];取STRING1存儲單位中的第SI個字符賦給ALCMPAL,STRING2[SI];AL與STRING2存儲單位中的第SI個字符比較JNENOMATCHINCSILOOPCOMPAREJMPMATCHNOMATCH:;打印output:nomatchLEADX,PRINT5MOVAH,09INT21HLEADX,PRINT4MOVAH,09INT21HJMPL2MATCH:;打印output:matchLEADX,PRINT5MOVAH,09INT21HLEADX,PRINT3MOVAH,09INT21HL2:MOVAH,4CHINT21HCODESENDSENDSTART運行結(jié)果:實驗4 從鍵盤輸入數(shù)據(jù)并顯示的實驗實驗容:將鍵盤輸入的2位十六進制數(shù)轉(zhuǎn)換為等值的二進制數(shù),并在屏幕上顯示。列如:鍵入f2,則顯示11110010.完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB'pleaseinputastring:','$'STRING2DB13,10,'theoutputis:','$'STRING3DB13,10,'inputerror',13,10,'$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼L0:LEADX,STRING1;打印字符串STRING1MOVAH,09INT21HMOVAH,01;輸入第一個字符至AL中INT21HCMPAL,'0'JBERROR1CMPAL,'9'JBEENTER1CMPAL,'A'JBERROR1CMPAL,'F'JBEENTER1CMPAL,'a'JBERROR1CMPAL,'f'JBEENTER1ERROR1:LEADX,STRING3;打印字符串STRING3MOVAH,09INT21HJMPL0ENTER1:CALLASC2BCD;把ASCII碼轉(zhuǎn)化成十進制數(shù)BCD碼MOVCL,4ROLAL,CLMOVBL,AL;把高四位放到BL寄存器中;輸入第二個字符MOVAH,01;輸入第二個字符至AL中INT21HCMPAL,'0'JBERROR1CMPAL,'9'JBEENTER2CMPAL,'A'JBERROR1CMPAL,'F'JBEENTER2CMPAL,'a'JBERROR1CMPAL,'f'JBEENTER2ENTER2:CALLASC2BCD;把ASCII碼轉(zhuǎn)化成十進制數(shù)BCD碼ADDBL,ALLEADX,STRING2;打印字符串STRING2MOVAH,09INT21HMOVCX,9CLC;清空標志位SHOW:;顯示BL中的二進制數(shù)DECCXCMPCX,0JENEXT;輸出完八位之后返回DOSROLBL,1;循環(huán)左移一位,若溢出為1,則CF=1JCM1JMPM2M1:MOVDL,'1';若CF=1,轉(zhuǎn)至M1打印‘1’MOVAH,02INT21HJMPSHOWM2:MOVDL,'0';若CF=0,轉(zhuǎn)至M1打印‘0’MOVAH,02INT21HJMPSHOWNEXT:MOVAH,4CHINT21HASC2BCDPROCCMPAL,'9'JBEL1;若AL≤9,轉(zhuǎn)L1SUBAL,07H;若輸入的數(shù)為A~F,或者a~f,則減7,A接在39H后面,A~F=3AH~3FH,a~f=5AH~5FHL1:SUBAL,30H;減30HANDAL,0FH;濾除高位,保留低位,因為a~f恰好比A~F大20H,這樣a~f就和A~F的數(shù)值一樣了RETASC2BCDENDPCODESENDSENDSTART輸出結(jié)果為:〔若輸出不在0~9,A~F,a~f,則重新輸入實驗5 字符和數(shù)據(jù)計算的實驗實驗容:先在屏幕上顯示"inputstring,",輸入字符串;再顯示"result="。如為0~9的數(shù)字,則計數(shù)器加1,如為非數(shù)字,則直接顯示,但不計數(shù)。完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB'inputstring:','$'STRING2DB13,10,'result=','$'STRING3DB13,10,'zifu:','$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼LEADX,STRING1;打印字符串1MOVAH,09INT21HMOVCX,0MOVBX,0INPUT:MOVAH,01;輸入字符至ALINT21HCMPAL,'/';輸入/后轉(zhuǎn)L0JEL0CMPAL,'0';下溢出轉(zhuǎn)RUZHANJBRUZHANCMPAL,'9';上溢出轉(zhuǎn)RUZHANJARUZHANINCCL;若為數(shù)字則計數(shù)器+1JMPINPUTRUZHAN:;非數(shù)字字符入棧PUSHAXADDBL,1;BL代表入棧的字符個數(shù),方便待會輸出JMPINPUTL0:LEADX,STRING3;打印字符串3MOVAH,09INT21HCHUZHAN:POPAXMOVDX,AXMOVAH,02INT21HSUBBL,1CMPBL,0;入了多少個棧,出多少棧JNECHUZHANOUTPUT:;輸出數(shù)字的個數(shù)LEADX,STRING2;打印字符串2MOVAH,09INT21HMOVDL,CLADDDL,30HMOVAH,02INT21HMOVAH,4CHINT21HCODESENDSENDSTART輸出結(jié)果為:〔這里非數(shù)字字符輸出順序與輸入順序相反實驗6改變年月日的實驗實驗容:先在屏幕上顯示"whatisthedate<mm/dd/yy>?"從鍵盤輸入的月日年能把計算機的系統(tǒng)日期改為你鍵入的值。完整代碼如下:DATASSEGMENT S1DB0AH,0DH,"whatisthedate<mm/dd/yy>?:",'$'DATASENDSSTACKSSEGMENTSTACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AXMOVDX,OFFSETS1MOVAH,09H;打印字符串"whatisthedate<mm/dd/yy>?:"INT21HMOVDX,0H;DX=CH=0MOVCH,0;MOVSI,0AHKAISHI:MOVCL,0;用來壓縮移位SHURU:MOVAH,01H;輸入字符存入AL中INT21HMOVAH,0AH;10賦給AHCMPAL,0DH;AL=13則結(jié)束,設(shè)置日期JEGENGGAICMPAL,'/';計算來判斷是年,月,日JEZIZENGANDAL,0FHCMPCH,0;等于0則轉(zhuǎn)月JEYUECMPCH,1;等于1則轉(zhuǎn)日JERICMPCH,2;等于2則轉(zhuǎn)年JENIANZIZENG:INCCHJMPSHURU;無條件轉(zhuǎn)移至SHURUYUE:ADDDH,ALCMPCL,0JNZKAISHIINCCLMOVAL,DHMULAHMOVDH,ALJMPSHURU;無條件轉(zhuǎn)移至SHURURI:ADDDL,ALCMPCL,0JNZKAISHIINCCLMOVAL,DLMULAHMOVDL,ALJMPSHURU;無條件轉(zhuǎn)移至SHURUNIAN:CMPCL,0JNZXIABUADDBL,ALMOVCL,03H;3賦給CLJMPSHURU;無條件轉(zhuǎn)移至SHURUXIABU:MOVAH,0;清空AHMOVSI,BX;SI=BXSHLBX,CL;BX左移三位,乘以8SHLSI,1;SI左移一位,乘以2ADDBX,SI;兩個相加,即乘以10ADDBX,AX;BX加上新輸入的數(shù)字JMPSHURUGENGGAI:MOVCX,BXMOVAH,2BH;設(shè)置日期INT21HMOVAH,4CHINT21HCODESENDSENDSTART輸出結(jié)果為:〔設(shè)置20XX12月3日,注意如果要設(shè)置好系統(tǒng),否則可能計算機的日期改變不了實驗7 將小寫字母轉(zhuǎn)換為大寫字母的實驗實驗容:接收鍵入字符〔以Ctrl-c為結(jié)束,將小寫字母變?yōu)榇髮懽帜?并在屏幕上顯示。完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB13,10,'pleaseinputastring:','$'STRING2DB13,10,'theoutputstringis:','$'DATADB100DUP<00H>,'$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼M:LEASI,DATALEADX,STRING1;打印字符串1MOVAH,09INT21HINPUT:MOVAH,01;輸入字符CINT21HCMPAL,03HJEOUTPUTCMPAL,'a'JBMCMPAL,'z'JAMSUBAL,20H;減20H變小寫MOV[SI],ALINCSIJMPINPUTOUTPUT:LEADX,STRING2;打印字符串2MOVAH,09INT21HLEASI,DATAL1:MOVDL,[SI]CMPDL,00HJEENDINGMOVAH,02INT21HINCSIJMPL1ENDING:MOVAH,4CHINT21HCODESENDSENDSTART運行結(jié)果為:〔如果輸入的不在a~f中,則重新輸入實驗8 排序?qū)嶒?lt;0~9>實驗容:從首地址為1000H開始存放10個數(shù),將這些數(shù)按降序排列.完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼STRING1DB'pleaseinput10numbers:','$'STRING2DB13,10,'thesortednumbersare:','$'ORG1000HDATADB10DUP<00H>,'$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼LEADX,STRING1;輸入提示語'pleseinput10numbers:'MOVAH,09INT21HMOVCX,10LEASI,DATAINPUT:MOVAH,01;輸入字符至ALINT21HMOV[SI],AL;把AL賦給偏移地址為SI指向的單元INCSILOOPINPUTMOVBL,0L0:MOVCX,9LEASI,DATAL1:;比較第SI個數(shù)和第SI+1個數(shù)的大小MOVAL,[SI]INCSICMPAL,[SI]JBCHANGE;若小于則轉(zhuǎn)CHANGEL2:LOOPL1;小循環(huán)〔CX自動減1,若CX=0則結(jié)束L3:INCBLCMPBL,10JBL0;若大循環(huán)有10次了,則轉(zhuǎn)OUTPUTJMPOUTPUTCHANGE:;交換兩個數(shù)XCHGAL,[SI];交換,MOV[SI-1],AL;賦給SI-1JMPL2OUTPUT:LEADX,STRING2;輸入提示語'thesortednumbersare:'MOVAH,09INT21HMOVCX,10LEASI,DATAL4:;循環(huán)輸出MOVDL,[SI]MOVAH,02INT21HINCSILOOPL4MOVAH,4CHINT21HCODESENDSENDSTART輸出結(jié)果為:實驗8 排序?qū)嶒?lt;多位數(shù)排序>實驗容:從首地址為1000H開始存放10個數(shù),將這些數(shù)按降序排列.完整代碼如下:DATASEGMENT;CHANGE函數(shù)DI,SI為入口函數(shù),交換SI,DI的值,SI,DI值已經(jīng)大變BUFFERDB100DB?DB100DUP<?>DB"$"ORG1000HNEQU10STOREDATADB110DUP<30H>;每個數(shù)最大為10位TEMP1DB12DUP<24H>;中間變量TEMP2DB12DUP<24H>;中間變量TEMP3DB12DUP<24H>;中間變量DATAENDSSTACKSEGMENTPARASTACKDW60HDUP<0>STACKENDSCODESEGMENTASSUMEDS:DATA,CS:CODE,SS:STACKSTART:MOVAX,DATAMOVDS,AX;MOVAX,STACK;MOVSS,AX;可以有可以無,因為其已經(jīng)默認為SS了MOVDX,OFFSETBUFFERMOVAH,0AHINT21HCALLTURNLINELEASI,BUFFERLEADI,STOREDATACALLBUFFERTOSTORECALLTURNLINELEASI,STOREDATACALLCOMPAREGO:MOVSI,OFFSETSTOREDATAMOVCL,110PRINT:MOVDL,[SI]CMPDL,30HJNEPRINT1CMPAL,1JEPRINT1;打印該有的0INCSILOOPPRINTPRINT1:CMPDL,2CHJEPRINT0JIXU:MOVAH,02HINT21HCMPDL,2CHJNEGOON5MOVAL,0JMPGOON6PRINT0:CMPAL,0JNEJIXUMOVDL,30HMOVAH,02HINT21HMOVDL,2CHJMPJIXUGOON5:MOVAL,1GOON6:INCSILOOPPRINTMOVAH,01HINT21HMOVAH,4CHINT21HCOMPAREPROC;以SI為入口傳遞MOVBX,SI;LEADI,TEMP2;GETLAST:;CALLTEMPSAVE;INCDL;CMPDL,N;JEGOON1;LEADI,TEMP2;JMPGETLAST;TEMP2始終指向當前最后一個數(shù);GOON1:MOVCL,NCOMPARE1:MOVSI,BXLEADI,TEMP1CALLTEMPSAVE;TEMP1指向第一個數(shù),錯啦,為什么呢,因為那樣比不會進行變化MOVSI,BXMOVDH,1LEADI,TEMP1PUSHSICOMPARE2:LODSBMOVAH,[DI]CMPAL,2CHJEEQUALCMPAL,AHJBBELOWCMPAL,AHJAABOVEINCDIJMPCOMPARE2BELOW:INCDHPOPSIPUSHSILEADI,TEMP1CALLTEMPSAVE;使TEMP1存入當前最小,因為TEMP1當前元已經(jīng)存在了;不可以再轉(zhuǎn)存,否則出錯POPSIADDSI,NINCSIPUSHSICMPDH,CLJAGOON2LEADI,TEMP1JMPCOMPARE2EQUAL:INCDH;不交換POPSIADDSI,NINCSIPUSHSICMPDH,CLJAGOON2;比較CL次LEADI,TEMP1JMPCOMPARE2ABOVE:;TEMP1始終指向當前最小,若當前值大于時最小時前移;此時TEMP1不便,只需前移就好,交換前后兩個數(shù)的大小INCDHPOPSIPUSHSISUBSI,NSUBSI,1MOVDI,SIPOPSIPUSHSICALLCHANGEPOPSIADDSI,NINCSIPUSHSICMPDH,CLJAGOON2;比較CL次LEADI,TEMP1JMPCOMPARE2GOON2:LOOPCOMPARE1JMPGORETCOMPAREENDP;存儲函數(shù)思路:從最后一位開始存,首位均置零,最高10位BUFFERTOSTOREPROCMOVCL,10ADDSI,2;SUBDI,3STORE:MOVAL,[SI]CMPAL,2CH;直到SI指向,<結(jié)束一個數(shù)>,再進行存儲JESTORE2INCSIJMPSTORESTORE2:MOVBX,SI;存儲SISTOREIN:ADDDI,N;ADDDI,3MOVDX,DI;存儲DISTOREIN1:MOVAL,[SI]MOV[DI],ALDECSIDECDILEAAX,BUFFERADDAX,1;注意邊界要取好,因其也有值CMPSI,AXJEJMP1MOVAL,[SI]CMPAL,2CHJEJMP1JMPSTOREIN1;條件控制循環(huán)JMP1:MOVSI,BXINCSI;進行存儲下個數(shù)INCDX;使DI加1因為前幾位已經(jīng)用了MOVDI,DXLOOPSTORE;MOVAL,"$";INCDI;MOV[DI],ALRETBUFFERTOSTOREENDPCHANGEPROCPUSHDIPUSHSILEADI,TEMP3CALLTEMPSAVE;TEMP3存放SI當前值POPDI;往SI存入值POPSIPUSHSICALLTEMPSAVE;******把DI的值存入SI中POPDILEASI,TEMP3CALLTEMPSAVE;*******把SI的值存入DI中RETCHANGEENDPTEMPSAVEPROC;存儲中間變量的函數(shù),以DI,SI,為入口,以,標志位結(jié)束STEMP:LODSBMOV[DI],ALINCDICMPAL,2CHJENEXTJMPSTEMPNEXT:RETTEMPSAVEENDPTURNLINEPROCMOVDL,0AHMOVAH,02HINT21HRETTURNLINEENDPCODEENDSENDSTART輸出結(jié)果為:實驗9 設(shè)置光標的實驗實驗容:設(shè)置光標,起始位置為第5行第6列,結(jié)束位置為第8行第6列。完整代碼如下:DATASSEGMENT;此處輸入數(shù)據(jù)段代碼DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此處輸入代碼段代碼MOVAH,08;輸入無回顯INT21HMOVDH,5;設(shè)置行MOVDL,6;設(shè)置列MOVBH,0;設(shè)置頁MOVAH,02INT10HMOVAH,08;輸入無回顯INT21HMOVDH,8;設(shè)置行MOVDL,6;設(shè)置列MOVBH,0;設(shè)置頁MOVAH,02INT10HMOVAH,08;輸入無回顯INT21HMOVAH,4CHINT21HCODESENDSENDSTART輸出結(jié)果為:〔任意輸入一個字符,光標跳到5行6列,再任意輸入一個字符,光標跳到8行6列這里光標截圖后是看不到的,所以就不截圖了實驗10 計算N!的實驗實驗容:在鍵盤輸入數(shù)字,結(jié)果顯示在屏幕上。DATASSEGMENT;段定義〔結(jié)構(gòu);此處輸入數(shù)據(jù)段代碼P1DB'inputthenumber<0-6>:','$'p2DB13,10,'theresultis:','$'DATASENDSSTACKSSEGMENT;此處輸入堆棧段代碼ST1DW40HDUP<0>STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKS;段分配〔結(jié)構(gòu)START:MOVAX,DATAS;設(shè)置段地址〔結(jié)構(gòu)MOVDS,AXMOVAX,STACKSMOVSS,AX;此處輸入代碼段代碼LEADX,P1;顯示提示字符串'inputthenumber:'MOVAH,09INT21HMOVAH,01;鍵入N到A

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論