汇编8.docx
- 文档编号:26642336
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:19
- 大小:41.86KB
汇编8.docx
《汇编8.docx》由会员分享,可在线阅读,更多相关《汇编8.docx(19页珍藏版)》请在冰豆网上搜索。
汇编8
云南大学软件学院实验报告
姓名
年级
2013
班级
1
学号
专业
信息安全
序号
实验
名称
实验八
成绩
指导教师
(签名):
一.实验原理
二.实验结果
1.编写设计一个2,10,16进制的码制转换程序,要求:
①程序有友好的运行界面;
②输入任意类型进制的数据,转换为其余两种进制类型;
③要求程序有方便的输入输出功能;
④要求程序能够处理基本的错误信息;
⑤程序的基本结构采用子程序结构;
2.编写程序,实现表的处理:
内存单元中有一个ASCII码表,编写程序完成下面的功能:
①首先输出表的内容;
②插入一个数据,插入的数据和插入的位置从键盘输入;
③对表中的数据进行排序,按升顺或降顺排序可以进行选择;
④在表中查找某一个关键字,要查找的关键字从键盘输入;如果找到,输出查找的关键字并给出提示“find”,否则给出提示“nofind”;
⑤程序执行以后,输出表中的插入以后的内容和排序以后的内容;
⑥程序有友好的运行界面;
⑦要求程序能够处理基本的错误信息;
二进制:
十六进制:
十进制:
排序:
插入:
查找:
三.实验总结
源程序:
8-1:
PRINTMACROMS
LEADX,MS
MOVAH,9
INT21H
ENDM
INPUTMACRO
MOVAH,1
INT21H
ENDM
INPRINMACRO
MOVDL,0DH
MOVAH,2
INT21H
MOVDL,0AH
MOVAH,2
INT21H
ENDM
TKMACRO
CMPAL,1BH
JEEXIT
ENDM
TK1MACRO
LEADX,MS7
MOVAH,9
INT21H
MOVAH,1
INT21H
CMPAL,1BH
JEKS1
ENDM
DATASEGMENT
BGDB22DUP(20H),'ThisisaprogramtoturnB/D/Htoohers',0DH,0AH,'$'
BG1DB'PleaseenterawordforB/D/H',0DH,0AH
DB'YoucantypeESCtoshutdownthewindow',0DH,0AH,'$'
ERRORDB0DH,0AH,'Wrongword,Tryagain,orexit',0DH,0AH,'$'
MS1DB0DH,0AH,'Binary:
','$'
MS2DB0DH,0AH,'Decimal:
','$'
MS3DB0DH,0AH,'Hex:
','$'
MS4DB0DH,0AH,'Pleaseinputabinarynumber:
','$'
MS5DB0DH,0AH,'Pleaseinputadecimalnumber:
','$'
MS6DB0DH,0AH,'Pleaseinputahexnumber:
','$'
MS7DB0DH,0AH,'ESC:
returntomainmamu',0DH,0AH
DB'ESCESC(twice):
exit',0DH,0AH,'$'
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
PRINTBG
KS1:
PRINTBG1
KS:
INPUT
CMPAL,42H
JEBTO
CMPAL,44H
JEDTO
CMPAL,48H
JEHTO
TK
PRINTERROR
JMPKS
BTO:
PRINTMS4
CALLPB
PUSHBX
PRINTMS2
CALLDP
POPBX
PRINTMS3
CALLHP
INPRIN
TK1
DTO:
PRINTMS5
CALLPD
PUSHBX
PRINTMS1
CALLBP1
POPBX
PRINTMS3
CALLHP
INPRIN
TK1
HTO:
PRINTMS6
CALLPH
PUSHBX
PRINTMS1
CALLBP1
POPBX
PRINTMS2
CALLDP
INPRIN
TK1
PBPROC
MOVBX,0
MOVDL,0
ZH:
INCDL
CLC
INPUT
CMPAL,0DH
JEBEND
CMPAL,31H
JAEXIT
CMPAL,30H
JZZH1
STC
ZH1:
RCLBX,1
JMPZH
BEND:
RET
PBENDP
PDPROC
MOVBX,0
MOVCX,0
CHAR:
CMPCX,5
JNBDEND
INPUT
CMPAL,1BH
JZDEND
SUBAL,30H
JLDEND
CMPAL,9
JGDEND
CBW
INCCX
XCHGAX,BX
MOVDX,10
MULDX
XCHGAX,BX
ADDBX,AX
JMPCHAR
DEND:
RET
PDENDP
PHPROC
MOVBX,0
MOVDX,0
INH:
CMPDX,4
JNBHEND
INPUT
CMPAL,1BH
JZHEND
SUBAL,30H
JLHEND
CMPAL,0AH
JLZH2
SUBAL,7
CMPAL,10
JLHEND
CMPAL,10H
JLZH2
SUBAL,20H
CMPAL,0AH
JLHEND
CMPAL,10H
JGEHEND
ZH2:
MOVCL,4
SHLBX,CL
MOVAH,0
ADDBX,AX
INCDX
JMPINH
HEND:
RET
PHENDP
BP1PROC
MOVCX,10H
ZH3:
SHLBX,1
JCZH4
MOVDL,30H
MOVAH,2
INT21H
JMPZH5
ZH4:
MOVDL,31H
MOVAH,2
INT21H
ZH5:
DECCX
JNZZH3
RET
BP1ENDP
DPPROC
MOVCX,10000
CALLDIV1
MOVCX,1000
CALLDIV1
MOVCX,100
CALLDIV1
MOVCX,10
CALLDIV1
MOVCX,1
CALLDIV1
RET
DPENDP
DIV1PROC
MOVAX,BX
MOVDX,0
DIVCX
MOVBX,DX
MOVDL,AL
ADDDL,30H
MOVAH,2
INT21H
RET
DIV1ENDP
HPPROC
MOVCL,4
MOVCH,4
ZH6:
ROLBX,CL
MOVDL,BL
ANDDL,0FH
ADDDL,30H
CMPDL,3AH
JBZH7
ADDDL,7H
ZH7:
MOVAH,2
INT21H
DECCH
JNZZH6
RET
HPENDP
EXIT:
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
8-2
PRINTMACROMS
LEADX,MS
MOVAH,9
INT21H
ENDM
INPRINMACRO
MOVDL,0DH
MOVAH,2
INT21H
MOVDL,0AH
MOVAH,2
INT21H
ENDM
INPUTMACRO
MOVAH,1
INT21H
ENDM
DATASEGMENT
TABLEDB30H,35H,37H,32H,39H,38H,31H,33H,34H,36H
ORG20H
MESSAGE1DB'ThisisaprogrambasedonASCII,youcanseethetablebelow',0DH,0AH
DB'Chooseafunction,OrtypeESCtoexit',0DH,0AH
DB'1:
InsertingData',0DH,0AH
DB'2:
Datasorting',0DH,0AH
DB'3:
Searchkeyword',0DH,0AH,'$'
MESSAGE2DB0DH,0AH,'Pleasechooseakindofsorting:
',0DH,0AH
DB'1.Ascending',0DH,0AH
DB'2.Descending',0DH,0AH,'$'
MESSAGE3DB0DH,0AH,'Pleasechooseakindofinserting(0~9):
','$'
MESSAGE4DB'PLeaseinputthedata:
','$'
MESSAGE5DB0DH,0AH,'Pleaseinputthesearching:
','$'
MESSAGE6DB0DH,0AH,'Canbefindbelow!
',0DH,0AH,'$'
MESSAGE7DB0DH,0AH,'Cannotbefound!
',0DH,0AH,'$'
ERRORDB'Wrongwords','$'
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,ES:
DATA
START:
MOVAX,DATA
MOVDS,AX
BG:
CALLLTT
INPRIN
PRINTMESSAGE1
INPUT
CMPAL,31H
JEF1
CMPAL,32H
JEF2
CMPAL,33H
JEF3
CMPAL,1BH
JEEXIT
PRINTERROR
JMPBG
F1:
PRINTMESSAGE3
CALLABB
CALLLTT
INPRIN
JMPBG
F2:
PRINTMESSAGE2
INPUT
INPRIN
CMPAL,31H
JEFZ1
CMPAL,32H
JEFZ2
FZ1:
CALLOTT
CALLLTT
INPRIN
INPRIN
JMPBG
FZ2:
CALLOTT1
CALLLTT
INPRIN
INPRIN
JMPBG
F3:
PRINTMESSAGE5
CALLFNN
CALLLTT
INPRIN
INPRIN
JMPBG
EXIT:
MOVAH,4CH
INT21H
LTTPROC
MOVCX,LENGTHOFTABLE
MOVBX,OFFSETTABLE
XS:
MOVDL,[BX]
MOVAH,02
INT21H
MOVDL,20H
MOVAH,02
INT21H
DECCX
INCBX
CMPCX,0
JETC
JMPXS
TC:
RET
LTTENDP
ABBPROC
MOVBX,0
MOVAX,0
MOVAH,01H
INT21H
MOVAH,0
ANDAL,0FH
MOVDX,AX
ADDBX,DX
MOVAX,LENGTHOFTABLE
MOVCX,AX
SUBCX,BX
PUSHBX
MOVBX,AX
LP1:
DECBX
MOVAX,[BX]
MOV[BX+1],AX
DECCX
CMPCX,0
JELP2
JMPLP1
LP2:
INPRIN
MOVDX,OFFSETMESSAGE4
MOVAH,09
INT21H
MOVAH,01
INT21H
MOV[BX],AL
INPRIN
RET
ABBENDP
OTTPROC
MOVCX,LENGTHOFTABLE
DECCX
OUTP:
MOVDX,CX
MOVBX,OFFSETTABLE
INP:
MOVAL,[BX]
CMPAL,[BX+1]
JNANEXT
XCHGAL,[BX+1]
MOV[BX],AL
NEXT:
INCBX
DECDX
JNZINP
LOOPOUTP
OTTEND:
RET
OTTENDP
OTT1PROC
MOVCX,LENGTHOFTABLE
DECCX
OUTP:
MOVDX,CX
MOVBX,OFFSETTABLE
INP:
MOVAL,[BX]
CMPAL,[BX+1]
JNBNEXT
XCHGAL,[BX+1]
MOV[BX],AL
NEXT:
INCBX
DECDX
JNZINP
LOOPOUTP
OTTEND:
RET
OTT1ENDP
FNNPROC
MOVBX,OFFSETTABLE
MOVCX,10
MOVAH,01
INT21H
LL:
CMPAL,[BX]
JEFOUND
INCBX
DECCX
CMPCX,0
JENFOUND
JMPLL
FOUND:
INPRIN
MOVDX,[BX]
MOVAH,02
INT21H
PRINTMESSAGE6
JMPSEND
NFOUND:
PRINTMESSAGE7
SEND:
RET
FNNENDP
CODEENDS
ENDSTART
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编