汇编实验报告汇总汇编实报告汇总.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编实验报告汇总汇编实报告汇总

湖北工程学院 计算机与信息科学学院 实验报告 2013—2014学年第 二 学期 课程名称: 汇编语言程序设计 班 级: 1217142 学 号: 012301714208 姓 名: 雷震 任课教师: 叶从欢 实验一:顺序结构 一、实验目的: 1.加深对汇编的理解;? 2.掌握汇编程序的设计方法;? 3.学会使用顺序结构。 二、实验内容: 定义变量A、 B、 C、 D,编写程序实现:(a * b + c - 70) / a。并将最后的商保存在D中,余数保存在D+2中。本实验中: a = 15, b = 75, c = 70。 程序中,定义字型变量A、B、C、D。A、B、C分别保存算数表达式中的数值a、b、c,D保存算数运算的最终结果。 程序开始,先将变量A、B、C赋初值,计算A乘以B的值,将结果保存在DX、AX中,然后逐步计算A*B+C, A*B+C-70和(A*B+C-70)/A。最后计算结果的商保存在AX中,余数保存在DX中,最终将AX赋值给D,DX赋值给D+2。程序运行完毕,程序返回。 三、实验步骤 1.程序设计流程图 开始 A→15,B→75,C→70 A*B→DX, AX AX → CX, DX → BX 将数C转换成双精度数 → DX, AX A*B+C→DX, AX A*B+C-70→DX, AX (A*B+C-70)/A→AX(商)、DX(余数) AX → D DX → D+2 结束 2.调试与运行 (1)首先进入DOS系统,进入目标文件所在的系统盘和文件夹; (2)输入“MASM TEST”,此命令是调用宏汇编程序MASM对源文件TEST.ASM进行编译,TEST是文件的名称,生成目标文件TEST.OBJ; (3)若汇编无错误,则用命令“LINK TEST”进行连接,生成可执行文件TEST.EXE; (4)若连接成功,则用命令“TEST”运行。 四.总结与体会 通过这次实验,我初步了解了汇编程序设计的基本方法和步骤,掌握了汇编程序设计的顺序结构。顺序结构是其他结构的基础,学好顺序结构对进一步学习汇编的好处不言而喻。 在本程序中,主要分为加法,减法,乘法,除法,本程序基本实现了四则运算的功能,该程序所完成的运算式为: (a * b + c - 70)/ a。并将运算结果存入变量D中,而余数存入D+2中。改程序的不足之处是还没能实现除法运算中不能运算较大的数,会产生溢出现象。 完成了这次实???后,对汇编产生了兴趣,而且拥有的信心,以后的学习会再接再厉! 指导教师: 叶从欢_ __ 实验二:分支结构 实验目的 熟悉汇编语言程序设计结构; 2.了解汇编语言循环程序设计的基本流程;? 3. 熟悉汇编语言循环基本指令的使用方法;? 4.掌握利用汇编语言实现分支程序设计方法; 5.熟悉汇编语言分支程序基本指令的使用方法;? 6.掌握利用汇编语言的循环指令完成循环程序设计方法。 二、实验内容: 根据X的正、负、零来实现分支结构,最终分别输出不同的结果。 1.当X为正数时,将字符串变量Y中的内容“NAME~leizhen$”全部以大写字母输出; 2.当X为负数时,将字符串变量Y中的内容“NAME~leizhen$”全部以小写字母输出; 3.当X为0时,将字符串变量BUF中的内容“X:0!$”输出。 程序中,当X小于零时,转到A1标记,A1、A2、A3处理将Y中内容小写输出;当X大于等于0时,转到B1标记,在B1处判断X大于0还是等于0;当X等于0时,输出BUF中的内容;当X大于0时,程序跳转到C1标记,C1、C2、C3处理将Y中的内容大写输出。 三、实验步骤 开始 1.程序设计流程图 X 0 X = 0 Y Y N SI指向Y的首位偏移地址 SI指向Y的首位偏移地址 DS:[SI]为小写 DS:[SI]为大写 N Y N DS:[SI] - 20H → DS:[SI] DS:[SI] + 20H → DS:[SI] SI + 1 → SI, CX - 1 → CX SI + 1 → SI, CX - 1 → CX N CX 为0 CX 为0 输出“Y” 输出“BUF” 输出“Y” 结束 2.调试与运行 编译运行文件test2.asm: (1)将X的值设为正数,运行程序后,Y中“NAME~leizhen$”所有小写字母变为大写; (2)将X的值设为负数,运行程序后,Y中“NAME~leizhen$”所有大写字母变为小写: (3)将X的值设为0,运行

文档评论(0)

zyongwxiaj8 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档