福建农林大学 - 汇编实验四 - 子程序设计
更新时间:2023-10-09 13:14:01 阅读量: 综合文库 文档下载
- 福建农林大学推荐度:
- 相关推荐
福建农林大学计算机与信息学院实验报告
系: 计算机 专业: 计算机科学与技术 年级: 2014 姓名 学号: 实验室号__ 计算机号
实验时间:2016-10-29指导教师签字: 刘庆连 成绩:
实验四 子程序设计
1.实验目的
(1)学习子程序的编写,主子程序的调用; (2)不同模块间程序的调用和调试。
2.实验内容
1)数据段中的3个字符,调用子程序将其逐个显示出来。子程序的功能是显示一个字符。单步执行,对CALL语句和RET语句观察SP,IP的变化,并用D命令查看栈顶的内容。
DATA MAG DATA CODE
SEGMENT DB ‘ABC’ ENDS SEGMENT ASSUME
CS: CODE, DS: DATA
START: MOV
MOV MOV MOV
AX, DATA DS, AX SI, 0 CX, 3
LL:
MOV DL, MAG[SI] CALL MADD INC LOOP MOV INT
SI LL AH, 4CH 21H
MADD PROC
MOV AH, 02H INT RET
21H
MADD ENDP CODE
ENDS END
START
2)阅读S31.ASM和S32.ASM两个模块中的程序,并分别汇编,然后连接成一个可执行文件S31.EXE。 具体步骤如下:
MASM S31.ASM(分别汇编) MASM S32.ASM
LINK S31 S32 (将两个文件连接成为一个文件名为S31) S31.EXE (运行)
3)编程:利用主程序调用子程序,比较BUF1和BUF2缓冲区中不相等的字符,并将不相等的字符显示出来。(也可以将找到的不相等字符逐个显示,用INT 21H的02功能调用)
4)编程:子程序搜索指定字符缓冲区中是否有N,如果有用Y替代。调用子程序将BUF1,BUF2,BUF3中的N全部用Y替代。
附源程序: NAME S31.ASM
不同模块间的段间调用。从键盘输入2位非压缩BCD数,存入AX寄存器中。为了将
其转换为二进制数,编写一个子程序TRAN。显示子程序DISP完成将16进制数转换为对应的ASCII码并显示该字符,显示子程序在另一模块S32中。输入数据为00时结束。
EXTRN DISP: FAR CODE
SEGMENT ASSUME
PARA ‘CODE’ CS: CODE
START: MOV
INT MOV INT MOV MOV CMP JE CALL CALL JMP
AH, 01H 21H BL, AL 21H AH, AL AL, BL AX, 3030H EXIT
NEAR PTR TRAN FAR PTR disp START
EXIT:
MOV AH, 4CH INT PROC AND
21H
NEAR ;将输入的ASCII码转换成2进制数 AX, 0F0FH ;将ASCII码转换成非压缩BCD码,
;高位在AL中
TRAN
MOV MOV MUL ADD RET ENDP ENDS END
BL, AH CL, 10D CL AL, BL
TRAN CODE
START
NAME S32.ASM PUBLIC DISP CODE1 SEGMENT
ASSUME
PARA ‘CODE’ CS: CODE1
DISP PROC FAR
MOV MOV MOV
BL, AL BH, 00 CH, 4 CL, 4 BX, CL DL, BL DL, 0FH DL, 9 NEXT1 DL, 07H DL, 30H AH, 02H 21H CH ROLL
ROLL: MOV
ROL MOV AND CMP JBE ADD
NEXT1: ADD
MOV INT DEC JNZ RET
DISP ENDP
CODE1 ENDS
END
5)编一个子程序:输入一个字符,显示出来。 6)编一个子程序:输入一个字符串,显示出来。
4.算法描述及实验步骤
题1:依题输入相应的代码如下,运行->调试->单步执行,对CALL语句和RET语句观察SP,IP的变化,并用D命令查看栈顶的内容。
题3及4,5,6按要求编写即可
5.调试过程 无 6. 实验结果
【题一】 实验结果如下
有上图可知,当程序运行到call语句之前,SP一直保持0000不变,而IP则一直在增加。继续单步执行程序
由上图,当程序在RET语句之前运行时,SP、IP每次都是分别按2和1递增,当运行到RET语句时,SP还是按照2来递增,而IP出现了变化,这次却减少了很多,说明指针
正在阅读:
2018-2023年中国饲用敌敌畏产业市场运营规模现状与未来发展趋势预测报告(目录)08-27
酸碱罐检修施工方案06-25
社会实践报告03-31
中华会计网校2014年广东省《初级会计电算化》模拟试题及答案解析03-13
招教学习资料(小)12-14
护士考试100题最新05-11
2018教科版一年级科学上册教案:2.6做一个测量纸带07-11
认识空气 说课稿03-30
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 福建农林大学
- 子程序
- 汇编
- 实验
- 设计
- 中华风景名胜赏析
- 幼小衔接研究报告
- 第2讲:长方体直观图的画法(教案)
- 新闻采编员实习鉴定
- 实验一 Matlab - 图像处理基本操作
- 创业实训试题练习
- 2019年中级会计财务管理章节练习三
- 第一次《C语言》课内实验报告
- 九年级数学试题满分150分,考试时间120分
- 八下科学第二章第四节学案
- 恒大地产集团防渗漏施工(最新版) - 图文
- 电阻炉温度控制系统设计
- 2018春季高中语文(省)0027高中语文(入学测试卷)阶段性测验(答案)
- 08新疆油田公司挖掘作业许可管理实施细则
- 新时代中小学生食品安全知识竞赛试题
- 西交14秋《管理学原理》在线作业
- 数字电路实验讲义
- 二、招警公安基础知识考试资料复习重点2
- 21 线性赋范空间
- 商品引进及淘汰管理制度