黑龙江大学软件学院汇编实验报告实验十.docx
- 文档编号:14825236
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:24
- 大小:568.64KB
黑龙江大学软件学院汇编实验报告实验十.docx
《黑龙江大学软件学院汇编实验报告实验十.docx》由会员分享,可在线阅读,更多相关《黑龙江大学软件学院汇编实验报告实验十.docx(24页珍藏版)》请在冰点文库上搜索。
黑龙江大学软件学院汇编实验报告实验十
实验报告
课程名称
汇编语言
实验项目名称
汇编语言上机
实验时间
(日期及节次)
2012.6.4,两节
专业
软件工程
学生所在学院
软件学院
年级
大一
学号
20113311
姓名
杜常数
指导教师
史新奕
实验室名称
第三实验室
实验成绩
预习情况
操作技术
实验报告
附加:
综合创新能力
实验
综合成绩
教师签字
黑龙江大学教务处
汇编语言
实验报告
黑龙江大学软件学院
2012年4月
实验名称:
多模块程序设计
实验目的
练习多模块程序设计的方法。
实验类型
实验环境
硬件环境:
IBM-PC及其系列机
内存256KB以上
外存:
硬盘或至少一个软驱
CPU:
80586以上
显示器:
单色或彩色显示器
键盘:
标准ASCII码键盘
软件环境:
编缉器:
EDIT.COM或其它编缉器
汇编程序:
MASM.EXE
连接程序:
LINK.EXE
调试程序:
DEBUG.EXE
主要设计思想与算法
;主程序如下所示
PUBLICCRLF
EXTRNINPUT:
FAR,ENCRYPT:
FAR,DECRYPT:
FAR
CODESEGMENT
ASSUMECS:
CODE
MAINPROCFAR
START:
CALLINPUT
CALLNEARPTRCRLF
CALLENCRYPT
CALLNEARPTRCRLF
CALLDECRYPT
MOVAH,4CH
INT21H
MAINENDP
CRLFPROCNEAR
MOVDL,0DH
MOVAH,2H
INT21H
MOVDL,0AH
MOVAH,2H
INT21H
RET
CRLFENDP
CODEENDS
ENDSTART
;子模块一实现输入信息和输入密文的功能的程序如下
PUBLICINPUT
EXTRNCRLF:
FAR
DATASEGMENTCOMMON
TABLEDB'ASDFGHJKLPOIUYTREWQZXCVBNM3698521470abcdefghijklmnopqrstuvwxyz'
LISTDB100DUP('$')
LIST1DB'qingshuru:
$'
LIST2DB'miwenshi:
$'
LIST3DB'mingwenshi:
$'
DATAENDS
CODE1SEGMENT
INPUTPROCFAR
ASSUMECS:
CODE1,DS:
DATA
MOVAX,DATA
MOVDS,AX
LEADX,LIST1
MOVAH,9
INT21H
XORBX,BX
REPEAT1:
MOVAH,01H
INT21H
CMPAL,0DH
JZNEXT1
MOVLIST[BX],AL
INCBX
JMPREPEAT1
CALLCRLF
NEXT1:
LEADX,LIST3
MOVAH,09H
INT21H
LEADX,LIST
MOVAH,09H
INT21H
RET
INPUTENDP
CODE1ENDS
END
;子模块二实现子模块二实现加密并显示密文的功能程序如下
PUBLICENCRYPT
DATASEGMENTCOMMON
TABLEDB'ASDFGHJKLPOIUYTREWQZXCVBNM3698521470_abcdefghijklmnopqrstuvwxyz'
LISTDB100DUP('$')
LIST1DB'qingshuru:
$'
LIST2DB'miwenshi:
$'
LIST3DB'mingwenshi:
$'
DATAENDS
CODE2SEGMENT
ENCRYPTPROCFAR
ASSUMECS:
CODE2,DS:
DATA,ES:
DATA
MOVAX,DATA
MOVDS,AX
MOVAX,DATA
MOVES,AX
MOVCX,0
MOVBX,0
REPEAT2:
MOVAL,LIST[BX]
LEADI,TABLE
CLD
MOVCL,63D
REPNZSCASB
MOVAL,62D
SUBAL,CL
MOVLIST[BX],AL
INCBX
CMPLIST[BX],'$'
JNZREPEAT2
LEADX,LIST2
MOVAH,09H
INT21H
LEADX,LIST
MOVAH,09H
INT21H
RET
ENCRYPTENDP
CODE2ENDS
END
;子模块三实现解密并显示明文的功能的程序如下所示
PUBLICDECRYPT
DATASEGMENTCOMMON
TABLEDB'ASDFGHJKLPOIUYTREWQZXCVBNM3698521470abcdefghijklmnopqrstuvwxyz'
LISTDB100DUP('$')
LIST1DB'qingshuru:
$'
LIST2DB'miwenshi:
$'
LIST3DB'mingwenshi:
$'
DATAENDS
CODE3SEGMENT
DECRYPTPROCFAR
ASSUMECS:
CODE3,DS:
DATA,ES:
DATA
MOVAX,DATA
MOVDS,AX
MOVAX,DATA
MOVES,AX
LEASI,LIST
LEABX,TABLE
LEADI,LIST
REPEAT3:
LODSB
CMPAL,'$'
JZNEXT3
XLAT
STOSB
JMPREPEAT3
NEXT3:
LEADX,LIST3
MOVAH,09H
INT21H
LEADX,LIST
MOVAH,09H
INT21H
RET
DECRYPTENDP
CODE3ENDS
END
实验结果(测试用例、实验结果)
先对HB10.ASM文件进行汇编,如下截图所示
然后依次对模块一,模块二和模块三源文件进行汇编,如下截图所示:
对生成的HB10.OBJ,HB101.OBJ,HB102.OBJ,HB103.OBJ一块进行连接
运行HB10.EXE,输入SUCCESS,如下图
输入SUCCESS后,分别输出明文,密文,和解密后的明文
对HB10.EXE文件进行调试
利用-T分步执行调试:
输出字符串提示输入文字
求得字母A的相对TABLE偏移量为0,保存至LIST字符数组中
同样,求得B的为17并保存,如下图
用-D查看数据段中的值
用-D命令查看数据段中值的情况看到LIST中存的前三个已转换成ABC
程序正常退出。
实验总结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黑龙江 大学 软件 学院 汇编 实验 报告