




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄
1、請任意輸入一個字符串,將該串倒序后在屏幕上顯示。...........................2
2、請任意輸入一個字符串,統(tǒng)計其中空格和A的個數(shù),并將結(jié)果顯示在屏幕上。.....3
3、請任意輸入一個字符串,將其中的空格全部刪除,并將結(jié)果顯示在屏幕上。........5
4、請任意輸入一個字符串,將其中A換成CC,并將結(jié)果顯示在屏幕上。.............6
5、請任意輸入一個字符串,將其中大寫字母換成小寫字母,并將結(jié)果顯示在屏幕上。..…8
6、請任意輸入一個字符串,將其中的英文字母全部刪除,并將結(jié)果顯示在屏幕上?!?…10
7>現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程序從鍵盤輸入
4個字符的字符串,若存在將其修改為disk,并將結(jié)果在顯示器上顯示。..............11
8、現(xiàn)有一組字符串為ram,yes,red,the,get,for,and,key,not,may,請編寫程序?qū)⑺麄儼碅SCII大
小排序,并在顯示器上顯示。.....................................................14
9^現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程序從鍵盤輸入
4個字符的字符串,若存在將其刪除,并在顯示器上顯示。...........................16
10、現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程序?qū)⑸鲜鲎?/p>
符串排序(升序)并插入disk使其人仍然有序,并在顯示器上顯示。.................18
11、鍵盤輸入一個十進(jìn)制數(shù)(字類型),以十六進(jìn)制的形式輸出。....................22
12、鍵盤輸入一個十進(jìn)制數(shù)(字類型),以二進(jìn)制的形式輸出。......................24
13、鍵盤輸入一個二進(jìn)制數(shù)(字類型),以十六進(jìn)制的形式輸出。....................25
14、鍵盤輸入一個二進(jìn)制數(shù)(字類型),以十進(jìn)制的形式輸出。......................27
15、鍵盤輸入一個十六進(jìn)制數(shù)(字類型),以十進(jìn)制的形式輸出。....................29
16、鍵盤輸入一個十六進(jìn)制數(shù)(字類型),以二進(jìn)制的形式輸出。....................31
17、將一組有符號數(shù)中的負(fù)數(shù)求和,并統(tǒng)計負(fù)數(shù)的個數(shù),并在屏幕上以十進(jìn)制的形式顯示結(jié)
果。............................................................................33
18、鍵盤輸入十個數(shù),分別統(tǒng)計0到9,10到99,100以上的數(shù)的個數(shù),并顯示結(jié)果。.35
19、鍵盤輸入兩組數(shù)743216、527864,按BCD碼求和,并將結(jié)果顯示在屏幕上。.....36
20、鍵盤輸入下列兩組十進(jìn)制數(shù),求其和,并將結(jié)果顯示在屏幕上..................38
21、鍵盤輸入一串二進(jìn)制數(shù)lah,7ch,Obah,3ah,45h,63h求其和,并將結(jié)果顯示在屏
幕上。.........................................................................40
22、從鍵盤輸入串可顯示字符(以回車符結(jié)束),并按字母、數(shù)字、空格分類計數(shù),然后
顯示出這三類統(tǒng)計的結(jié)果。.......................................................42
23、編寫程序,將十個字的有符號數(shù)中最大、最小值求出,并在顯示器上輸出。......44
24、鍵盤輸入10個字節(jié)數(shù)(無符號數(shù)),求出最大、最小值,并在顯示器上輸出。47
25、一個有符號字?jǐn)?shù)組以0為結(jié)束標(biāo)志,編程求這個數(shù)組的最大值、最小值、平均值。.50
26、在BUFFER中定義了的十個帶符號字,將其中的負(fù)數(shù)變成絕對值,并以十進(jìn)制方式輸
出。...........................................................................56
27、已知數(shù)組A包含20個互不相等的字型整數(shù),數(shù)組B包含30個互不相等的字型整數(shù),
試編制一程序把在A中而不在B中出現(xiàn)的整數(shù)放于數(shù)組C中。......................58
28、已知數(shù)組A包含20個互不相等的字型整數(shù),數(shù)組B包含30個互不相等的字型整數(shù),
試編制一程序把既在A中又在B中出現(xiàn)的數(shù)存放于數(shù)組C中。......................62
29、設(shè)有4個學(xué)生參加5門考試,請計算每個學(xué)生的平均成績和每門課的平均分成績,并在
顯示器上顯示,輸出格式如下:..................................................67
Chglchg2chg3chg4chg5meam.....................................................................................67
SI78855510097.....................................................................................67
S26796437984..........................................67
S39255769265..........................................67
S44395828975..........................................67
Aver............................................................................67
不計小數(shù)。.....................................................................67
30、編程計算從2開始的N(N<50)個偶數(shù)之和(2+4+6+...),主程序從鍵盤輸入整數(shù)N,
調(diào)用子程序求出N個偶數(shù)之和,由主程序顯示結(jié)果。嘗試分別使用以下3種方法編寫完整
程序。.........................................................................69
(1)利用寄存器傳遞參數(shù)........................................................69
(2)利用公共數(shù)據(jù)段變量傳遞參數(shù)................................................69
(3)利用堆棧傳遞參數(shù)..........................................................69
31、多模塊程序設(shè)計.............................................................72
(1)設(shè)計一個包括:鍵盤輸入、顯示、排序、轉(zhuǎn)換、退出程序的主菜單。(2)從鍵盤輸入
10個字型帶符號數(shù).(3)把10個帶符號十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)。(4)把10個二進(jìn)制數(shù)
按從小到大順序排列。(5)把10個帶符號二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)。(6)把最大數(shù)用十進(jìn)
制數(shù)的形式顯示在屏幕上要求:(1)整個程序用四個模塊組成:主菜單,排序子模塊,轉(zhuǎn)換
子模塊,其它。(2)鍵盤輸入與顯示功能分別用宏指令實(shí)現(xiàn)。(3)排序及轉(zhuǎn)換功能分別用子
程序?qū)崿F(xiàn)。......................................................................72
32、將兩個磁盤文件合并成一個新的文件。........................................72
33、將一磁盤文件F.TXT'讀入內(nèi)存2000:OOOOh中,并將文件以反序形式(頭尾對應(yīng)字
符互換)仍以相同路徑存入磁盤中。...............................................74
34、在多模塊設(shè)計中,主模塊中調(diào)用內(nèi)部模塊BUF1,BUF2,BUF3,BUF4。主模塊根據(jù)鍵
盤輸入的指令(如:A,B,C,D)調(diào)用上述對應(yīng)的子程序,每個子程序的任務(wù)是顯示其入口地
址。調(diào)用后繼續(xù)等待調(diào)用,若輸入ESC鍵(ASCII碼為1BH)則結(jié)束程序的執(zhí)行。請編寫
完成該任務(wù)的程序。.............................................................75
35、現(xiàn)有一控制程序共5個工序,要求輸入0-4的序號,分別執(zhí)行各工序的子程序,每個子
程序的任務(wù)是顯示其入口地址。調(diào)用后繼續(xù)等待調(diào)用,按回車則結(jié)束程序的執(zhí)行。………77
36、從鍵盤輸入一個兩位卜進(jìn)制數(shù)的月份,然后顯示出相應(yīng)的英文名,要求顯示月份的功能
用子程序?qū)崿F(xiàn)。.................................................................80
37、現(xiàn)有一組參量按16位編碼,各字段的長度如下:BIT1=6,BIT2=4,BIT3=3,BIT4=3,
BIT1位于高位,BIT4位于低位。設(shè)BIT1=52,BIT2=13,BIT3=5,BIT4=3請用程序編
碼將這些字段編碼組合成一個字,按二進(jìn)制的形式在屏幕上輸出。...................83
1、請任意輸入?個字符串,將該串倒序后在屏幕上顯示。
DATASSEGMENT
BUFDB30
DB?
DB30DUP(?)
BUF1DBODH,OAH,30DUP(?)
DATASENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS
START:
MOVAX,DATAS
MOVDS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
LEADI,BUF1
ADDDI,2
MOVBL,BUF+1
XORBH,BH
ADDSI,BX
MOVCL,BUF+1
AGAIN:
DECSI
MOVAL,[SI]
MOV[DI],AL
INCDI
LOOPAGAIN
MOVBYTEPTR[DI],'$'
LEADX,BUF1
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
2、請任意輸入一個字符串,統(tǒng)計其中空格和A的個數(shù),并將結(jié)果顯示在屏幕上。
DATASEGMENT
BUFDBOFFH
DB?
DBOFFHDUP(?)
STROUTDBODH,OAH,'A=000'
DBODH,OAH,'SPACE=OOO','
DATAENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA
START:
MOVAX,DATA
MOVDS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF[2]
MOVCL,BUF[1]
XORCH,CH
AGAIN:
CMPBYTEPTR[SI],'A'
JNENOTA
CMPSTROUT[10],'9'
JEATEN
INCSTROUT[10]
JMPNEXT
ATEN:
CMPSTR0UT[9],'9'
JEAHUN
MOVSTR0UT[10],,0,
INCSTROUT[9]
JMPNEXT
AHUN:
MOVSTROUT[10],'O'
MOVSTROUT[9],'0)
INCSTROUT[8]
JMPNEXT
NOTA:
CMPBYTEPTR[SI],''
JNENOTSPACE
CMPSTROUT[21],'9'
JESPACETEN
INCSTROUT[21]
JMPNEXT
SPACETEN:
CMPSTROUT[20],'9'
JESPACEHUN
MOVSTROUT[21],'O'
INCSTROUT[20]
JMPNEXT
SPACEHUN:
MOVSTROUT[21],'O'
MOVSTR0UT[20],'0'
INCSTROUT[19]
NOTSPACE:
NEXT:
INCSI
LOOPAGAIN
LEADX,STROUT
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
3、請任意輸入一個字符串,將其中的空格全部刪除,并將結(jié)果顯示在屏幕上。
DATASSEGMENT
BUFDB50
DB?
DB50DUP(?)
POSITIONDB1
NEWLINEDBOAH,ODH,'$'
DATASENDS
STACKSSEGMENT
SAVEDW100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS
START:
MOVAX,DATAS
MOVDS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
MOVCL,BUF+1
XORCH,CH
NEXT:
MOVAL,[SI]
CMPAL,''
JEDELATE
INCPOSITION
INCSI
DECCX
CMPCX,0
JNENEXT
JMPOUTPUT
DELATE:
PUSHSI
PUSHCX
PUSHAX
MOVAX,SI
INCAX
MOVDI,AX
MOVAL,POSITION
MOVCL,BUF+1
SUBCL,AL
XORCH,CH
AGAIN:
MOVAL,[DI]
MOV[SI],AL
INCSI
INCDI
LOOPAGAIN
POPAX
POPCX
POPSI
DECCX
JMPNEXT
OUTPUT:
MOVAL,'$'
MOV[SI],AL
LEADX,NEWLINE
MOVAH,09H
INT21H
LEADX,BUF+2
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
4、請任意輸入?個字符串,將其中A換成CC,并將結(jié)果顯示在屏幕上。
DATASSEGMENT
BUFDB50
DB?
DB50DUP(?)
DATASENDS
STACKSSEGMENT
SAVEDB100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,SS:STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,STACKS
MOVSS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
MOVCL,BUF+1
XORCH,CH
NEXT:
MOVAL,[SI]
CMPAL,'A'
JEMOVE
INCSI
DECCX
CMPCX,0
JNENEXT
JMPOUTPUT
MOVE:
PUSHSI
PUSHCX
MOVBX,SI
LEASI,BUF+2
MOVAL,BUF+1
XORAH,AH
ADDSI,AX
MOVAX,SI
INCAX
MOVDI,AX
DECAX
SUBAX,BX
MOVCX,AX
AGAIN:
MOVAL,[SI]
MOV[DI],AL
DECSI
DECDI
LOOPAGAIN
POPCX
POPSI
JMPTIHUAN
TIHUAN:
MOVAL,'C'
MOV[SI],AL
MOV[SI+1],AL
INCBUF+1
INCSI
INCSI
DECCX
CMPCX,0
JNENEXT
JMPOUTPUT
OUTPUT:
MOVAL,'$'
MOV[SI],AL
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
LEADX,BUF+2
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
5、請任意輸入一個字符串,將其中大寫字母換成小寫字母,并將結(jié)果顯示在屏
幕上。
DATASSEGMENT
BUFDB30
DB?
DB30DUP(?)
DATASENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS
START:
MOVAX,DATAS
MOVDS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
MOVCL,BUF+1
NEXT:
MOVAL,[SI]
CMPAL,*A'
JBCONTINUE
CMPAL,'Z'
JBETIHUAN
JMPCONTINUE
TIHUAN:
ADDAL,20H
MOV[SI],AL
CONTINUE:
INCSI
DECCX
CMPCX,0
JZOUTPUT
JMPNEXT
OUTPUT:
MOVAL,'$'
MOV[SI],AL
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
LEADX,BUF+2
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
6、請任意輸入?個字符串,將其中的英文字母全部刪除,并將結(jié)果顯示在屏幕
±0
DATASSEGMENT
BUFDB50
DB?
DB50DUP(?)
DATASENDS
STACKSSEGMENT
SAVEDB100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,SS:STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,STACKS
MOVSS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
MOVCL,BUF+1
XORCH,CH
NEXT:
MOVAL,[SI]
CMPAL,'A'
JBNEXT1
CMPAL,'Z'
JBEDELATE
CMPAL,'a'
JBNEXT1
CMPAL,'z'
JBEDELATE
NEXT1:
DECCX
INCSI
CMPCX,0
JZOUTPUT
JMPNEXT
DELATE:
PUSHSI
PUSHCX
CMPCX,1
JEOUTPUT
MOVAX,SI
INCAX
MOVDI,AX
AGAIN:
MOVAL,[DI]
MOV[SI],AL
INCSI
INCDI
LOOPAGAIN
POPCX
POPSI
DECBUF+1
DECCX
JMPNEXT
OUTPUT:
MOVAL,'$'
MOV[SI],AL
MOVDL,OAH
MOVAH,O2H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
LEADX,BUF+2
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
7、現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程序
四鍵盤輸入4個字符的字符串,若存在將其修改為disk,并將結(jié)果在顯示器上顯
/J''o
DATASSEGMENT
STRINGODBdata),OAH,ODH
STRING1DBname),OAH,ODH
STRING2DBtime),OAH,ODH
STRINGSDBfile),OAH,ODH
STRING4DBcode),OAH,ODH
STRINGS:DB'path',OAH,ODH
STRING6DB'user',OAH,ODH
STRING7DB'exit',0AH,ODH
STRINGS:DB'quit",OAH,ODH
STRING9D:B'text",'
BUFDB5
DB?
DB5DUP(?)
DATASENDS
EXTRASEGMENT
STRINGDB7DUP(?)
EXTRAENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,ES:EXTRA
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,EXTRA
MOVES,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
LEADI,STRING
MOVCX,4
REPMOVSB
LEASI,STRINGO
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING1
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING2
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRINGS
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING4
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRINGS
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING6
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING7
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING8
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
LEASI,STRING9
LEADI,STRING
CLD
MOVCX,4
REPECMPSB
CMPCX,0
JETIHUAN
JMPSHUCHU
TIHUAN:
SUBSI,4
MOVAL,'d'
MOV[SI],AL
MOVAL,'i'
MOV[SI+1],AL
MOVAL,'s'
MOV[SI+2],AL
MOVAL,'k'
MOV[SI+3],AL
SHUCHU:
LEADX,STRINGO
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
8、現(xiàn)有一組字符串為ram,yes,red,the,get,for,and,key,not,may,請編寫程序?qū)⑺麄?/p>
按ASCII大小排序,并在顯示器上顯示。
DATASSEGMENT
STRODB'ram',OAH,ODH
STR1DB'yes",OAH,ODH
STR2DB'red",OAH,ODH
STR3DB'the',OAH,ODH
STR4DB'get',OAH,ODH
STR5DB'for,OAH,ODH
STR6DB'and',OAH,ODH
STR7DB'key',OAH,ODH
STR8DB'not',OAH,ODH
STR9DB'may$'
DATASENDS
STACKSSEGMENT
SAVEDB100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,SS:STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,STACKS
MOVSS,AX
LEASI,STRO
LEADI,STR1
MOVCX,9
AGAIN1:
PUSHCX
PUSHSI
PUSHDI
AGAIN:
MOVAL,[SI]
MOVBL,[DI]
CMPAL,BL
JACHANGE
JEEQUEL1
NEXT:
ADDSI,5
ADDDI,5
LOOPAGAIN
POPDI
POPSI
POPCX
LOOPAGAIN1
JMPOUTPUT
EQUEL1:
MOVAL,[SI+1]
MOVBL,[DI+1]
CMPAL,BL
JACHANGE
JEEQUEL2
JMPNEXT
EQUEL2:
MOVAL,[SI+2]
MOVBL,[DI+2]
CMPAL,BL
JACHANGE
JENEXT
CHANGE:
MOVAL,[SI]
MOVBL,[DI]
MOV[SI],BL
MOV[DI],AL
MOVAL,[SI+1]
MOVBL,[DI+1]
MOV[SI+1],BL
MOV[DI+1],AL
MOVAL,[SI+2]
MOVBL,[DI+2]
MOV[SI+2],BL
MOV[DI+2],AL
JMPNEXT
OUTPUT:
LEADX,STRO
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
9、現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程序
從鍵盤輸入4個字符的字符串,若存在將其刪除,并在顯示器上顯示。
DATASSEGMENT
STRODB'data',OAH,ODH
STR1DB'name",OAH,ODH
STR2DB'time'.OAH,ODH
STR3DB'file\OAH,ODH
STR4DB'code',OAH,ODH
STR5DB'path",OAH,ODH
STR6DB'user',OAH,ODH
STR7DB'exit',0AH,ODH
STR8DB'quit',OAH,ODH
STR9DB'text',OAH,ODH,'$'
LEAGTHEQU$-STRO
BUFDB5
DB?
DB5DUP(?)
DATASENDS
EXTRASEGMENT
COPYDB5DUP(?)
EXTRAENDS
STACKSSEGMENT
SAVEDB100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,SS:STACKS,ES:EXTRA
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,EXTRA
MOVES,AX
MOVAX,STACKS
MOVSS,AX
LEADX,BUF
MOVAH,OAH
INT21H
LEASI,BUF+2
LEADI,COPY
MOVCL,BUF+1
XORCH,CH
CLD
REPMOVSB
LEASI,STRO
LEADI,COPY
MOVCX,OAH
NEXT:
PUSHCX
CMPCX,1
JZTEXT
MOVCL,BUF+1
XORCH,CH
CLD
REPECMPSB
CMPCX,0
JZDELATE
ADDSI,5
DECDI
POPex
DECCX
CMPCX,0
JNENEXT
JMPOUTPUT
DELATE:
MOVCL,LEAGTH
XORCH,CH
ADDSI,2
SUBCX,SI
MOVAX,SI
SUBAX,6
MOVDI,AX
AGAIN1:
MOVAL,[SI]
MOV[DI],AL
INCSI
INCDI
LOOPAGAIN1
JMPOUTPUT
TEXT:
MOVAL,'$'
MOV[SI-1],AL
OUTPUT:
LEADX,STRO
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
1O>現(xiàn)有一組字符串為data,name,time,file,code,path,user,exit,quit,text,請編寫程
序?qū)⑸鲜鲎址判颍ㄉ颍┎⒉迦雂isk使其人仍然有序,并在顯示器上顯示。
DATASSEGMENT
STRODB'data,OAH,ODH
STR1DB'name',OAH,ODH
STR2DB'time',OAH,ODH
STR3DB'file".OAH,ODH
STR4DB'code",OAH,ODH
STR5DB'path',OAH,ODH
STR6DB'user",OAH,ODH
STR7DB'exit'.OAH,ODH
STR8DB*quit*,OAH,ODH
STR9DB'text',OAH,ODH
STR10DB'$$$$$$$'
LEAGTHEQU$-STRO
BUFDB5
DB?
DB5DUP(?)
DATASENDS
STACKSSEGMENT
SAVEDB100DUP(?)
STACKSENDS
CODESSEGMENT
ASSUMECS:CODES,DS:DATAS,SS:STACKS
START:
MOVAX,DATAS
MOVDS,AX
MOVAX,STACKS
MOVSS,AX
LEASI,STRO
LEADI.STR1
MOVCX,9
AGAIN1:
PUSHCX
PUSHSI
PUSHDI
AGAIN:
MOVAL,[SI]
MOVBL,[DI]
CMPAL,BL
JACHANGE
JEEQUEL1
NEXT:
ADDSI,6
ADDDI,6
LOOPAGAIN
POPDI
POPSI
POPCX
LOOPAGAIN1
JMPOUTPUT
EQUEL1:
MOVAL,[SI+1]
MOVBL,[DI+1]
CMPAL,BL
JACHANGE
JEEQUEL2
JMPNEXT
EQUEL2:
MOVAL,[SI+2]
MOVBL,[DI+2]
CMPAL,BL
JACHANGE
JEEQUEL3
JMPNEXT
EQUEL3:
MOVAL,[SI+3]
MOVBL,[DI+3]
CMPAL,BL
JACHANGE
JENEXT
CHANGE:
MOVAL,[SI]
MOVBL,[DI]
MOV[SI],BL
MOV[DI],AL
MOVAL,[SI+1]
MOVBL,[DI+1]
MOV[SI+1],BL
MOV[DI+1],AL
MOVAL,[SI+2]
MOVBL,[DI+2]
MOV[SI+2],BL
MOV[DI+2],AL
MOVAL,[SI+3]
MOVBL,[DI+3]
MOV[SI+3],BL
MOV[DI+3],AL
JMPNEXT
OUTPUT:
LEADX,STRO
MOVAH,09H
INT21H
LEADX,BUF
MOVAH,OAH
INT21H
MOVDL,OAH
MOVAH,O2H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
LEASI,STRO
LEADI,BUF+2
MOVCX,OAH
CONTINUE:
MOVAL,[SI]
MOVBL,[DI]
CMPAL,BL
JEEQUAL
JAINSERT
ADDSI,6
DECCX
CMPCX,0
JNZCONTINUE
JMPLAST
EQUAL:
MOVAL,[SI+1]
MOVBL,[DI+1]
CMPAL,BL
JAINSERT
ADDSI,6
DECCX
CMPCX,0
JNZCONTINUE
JMPLAST
INSERT:
MOVCX,LEAGTH
MOVDI,CX
DECDI
DECDI
SUBCX,SI
SUBCX,7
MOVAX,DI
SUBAX,6
MOVSI,AX
AGAIN2:
MOVAL,[SI]
MOV[DI],AL
DECSI
DECDI
LOOPAGAIN2
MOVCX,4
INCSI
LEADI,BUF+2
JMPAGAIN3
LAST:
MOVCX,4
LEADI,BUF+2
AGAIN3:
MOVAL,[DI]
MOV[SI],AL
INCSI
INCDI
LOOPAGAIN3
LEADX,STRO
MOVAH,09H
INT21H
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
11、鍵盤輸入?個十進(jìn)制數(shù)(字類型),以十六進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,01H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'O'
JBEXIT
CMPAX,'9'
JAEXIT
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
XCHGAX,BX
SUBBX,30H
MOVCX,10
MULCX
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTPROCNEAR
MOVDH,4
MOVCL,4
CONTINUE:
ROLBX,CL
MOVAL,BL
ANDAL,OFH
CMPAL,9
JAZIMU
ADDAL,30H
JMPSHUCHU
ZIMU:
ADDAL,37H
SHUCHU:
MOVDL,AL
MOVAH,02H
INT21H
DECDH
CMPDH,0
JNECONTINUE
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
RET
OUTPUTENDP
EXIT:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
12、鍵盤輸入一個十進(jìn)制數(shù)(字類型),以二進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,01H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'O'
JBEXIT
CMPAX,’9'
JAEXIT
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
XCHGAX,BX
SUBBX,30H
MOVCL,10
MULCL
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTPROCNEAR
MOVCX,16
CONTINUE:
ROLBX,1
MOVAL,BL
ANDAL,00000001H
ADDAL,30H
SHUCHU:
MOVDL,AL
MOVAH,02H
INT21H
DECCX
CMPCX,0
JNECONTINUE
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
RET
OUTPUTENDP
EXIT:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
13、鍵盤輸入一個二進(jìn)制數(shù)(字類型),以十六進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,O1H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'O'
JBEXIT
CMPAX,*r
JAEXIT
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
XCHGAX,BX
SUBBX,30H
MOVCX,2
MULCX
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTPROCNEAR
MOVDH,4
MOVCL,4
CONTINUE:
ROLBX,CL
MOVAL,BL
ANDAL,OFH
CMPAL,9
JAZIMU
ADDAL,30H
JMPSHUCHU
ZIMU:
ADDAL,37H
SHUCHU:
MOVDL,AL
MOVAH,O2H
INT21H
DECDH
CMPDH,0
JNECONTINUE
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
RET
OUTPUTENDP
EXIT:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
14、鍵盤輸入一個二進(jìn)制數(shù)(字類型),以十進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,01H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'0'
JBEXIT
CMPAX,(r
JAEXIT
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
XCHGAX,BX
SUBBX,30H
MOVCX,2
MULCX
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTPROCNEAR
MOVAX,BX
MOVCX,10000
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,3OH
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,1000
MOVDX,0
DIVex
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,100
MOVDX,0
DIVex
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,10
MOVDX,0
DIVex
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,1
MOVDX,0
DIVex
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,O2H
INT21H
RET
OUTPUTENDP
EXIT:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
15、鍵盤輸入一個十六進(jìn)制數(shù)(字類型),以十進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,01H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'O'
JBEXIT
CMPAX,’9'
JAZIMU
JMPCHENGGONG
ZIMU:
CMPAX,'A'
JBEXIT
CMPAX,'F'
JAEXIT
CHENGGONG:
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
CMPAX,39H
JBESHUZI
JMPZIMU1
SHUZI:
SUBAX,30H
JMPKAISHI
ZIMU1:
SUBAX,37H
KAISHI:
XCHGAX,BX
MOVCX,16
MULCX
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTPROCNEAR
MOVAX,BX
MOVCX,10000
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,1000
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,100
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,10
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,3OH
MOVDL,AL
MOVAH,02H
INT21H
MOVAX,BX
MOVCX,1
MOVDX,0
DIVCX
MOVBX,DX
ADDAL,30H
MOVDL,AL
MOVAH,02H
INT21H
MOVDL,OAH
MOVAH,02H
INT21H
MOVDL,ODH
MOVAH,02H
INT21H
RET
OUTPUTENDP
EXIT:
MOVAH,4CH
INT21H
CODESENDS
ENDSTART
16、鍵盤輸入?個十六進(jìn)制數(shù)(字類型),以二進(jìn)制的形式輸出。
CODESSEGMENT
ASSUMECS:CODES
START:
NEXT:
MOVBX,0
CALLINPUT
CALLOUTPUT
JMPNEXT
INPUTPROCNEAR
SHURU:
MOVAH,O1H
INT21H
CBW
CMPAX,ODH
JERETURN
CMPAX,'O'
JBEXIT
CMPAX,'9'
JAZIMU
JMPCHENGGONG
ZIMU:
CMPAX,'A'
JBEXIT
CMPAX,'F'
JAEXIT
CHENGGONG:
CALLTRANSFORM
JMPSHURU
RETURN:
RET
INPUTENDP
TRANSFORMPROCNEAR
CMPAX,39H
JBESHUZI
JMPZIMU1
SHUZI:
SUBAX,30H
JMPKAISHI
ZIMU1:
SUBAX,37H
KAISHI:
XCHGAX,BX
MOVCX,16
MULCX
ADDAX,BX
XCHGAX,BX
RET
TRANSFORMENDP
OUTPUTP
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程居間合同范本
- 上海供貨服裝合同范例
- 廚師績效合同范本
- 合同范例作廢文本
- 代課教師聘用合同范例
- 合同范本打賭
- 廠區(qū)勞務(wù)合同范例
- 合同范本修訂調(diào)研方案
- 北京官方合同范本
- 報社發(fā)布廣告合同范本
- Linux系統(tǒng)管理與服務(wù)器配置-基于CentOS 7(第2版) 課件 第1章CentOS Linux 7系統(tǒng)的安裝與介紹
- 新目標(biāo)英語中考一輪教材梳理復(fù)習(xí)教案
- 2022新教材蘇教版科學(xué)5五年級下冊全冊教學(xué)設(shè)計
- 光伏電氣設(shè)備試驗(yàn)方案
- 2024-2025學(xué)年全國中學(xué)生天文知識競賽考試題庫(含答案)
- 2024至2030年中國非標(biāo)自動化行業(yè)需求領(lǐng)域與供需平衡預(yù)測分析報告
- 2024年重慶市高考生物試卷(含答案解析)
- 2024年(學(xué)習(xí)強(qiáng)國)思想政治理論知識考試題庫與答案
- PS技能試題(帶素材)
- DL∕T 540-2013 氣體繼電器檢驗(yàn)規(guī)程
- CJT 362-2011 城鎮(zhèn)污水處理廠污泥處置 林地用泥質(zhì)
評論
0/150
提交評論