天大计算机科学与技术学院—汇编语言—上机实验报告_第1页
天大计算机科学与技术学院—汇编语言—上机实验报告_第2页
天大计算机科学与技术学院—汇编语言—上机实验报告_第3页
天大计算机科学与技术学院—汇编语言—上机实验报告_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

天津大学计算机科学与技术学院实验报告 共 4 页 第 1 页 汇编语言汇编语言 实验报告 一 实验报告 一 年级 2011 班级 学号 姓名 一 一 实验题目实验题目 编制一汇编源程序 求出下列公式中的编制一汇编源程序 求出下列公式中的 Z 值 并放在值 并放在 RESULT 单元中 单元中 2 2 实验要求实验要求 定义两个单元定义两个单元 X YX Y 和一个单元和一个单元 RESULT RESULT 利用数据的传送和运算指令将公式的结果计算出来利用数据的传送和运算指令将公式的结果计算出来 并将结果并将结果 Z Z 放放 在在 RESULTRESULT 里里 3 程序设计说明程序设计说明 用来说明程序的功能 结构 包括 程序名 功能 原理及算法说明 程序及数据结构 主要符 号名的说明 程序框图等 程序的功能是对公式程序的功能是对公式 x y 8 x 2 x y 8 x 2 进行运算 得出结果 首先对程序的数据段和堆栈段进行定进行运算 得出结果 首先对程序的数据段和堆栈段进行定 义 数据段里定义义 数据段里定义 3 3 个数据 个数据 x yx y 和和 resultresult 堆栈段里定义一定长度的容量 实现程序对现场的保护 堆栈段里定义一定长度的容量 实现程序对现场的保护 和恢复 定义一个代码段 以过程成形式编制的程序 过程名为和恢复 定义一个代码段 以过程成形式编制的程序 过程名为 proc1proc1 首先对 首先对 3 3 个段进行寻址 在个段进行寻址 在 程序的开头给一个标号 给一个起始地址 在程序最后结束起始地址来实现对代码段的装入 程序的程序的开头给一个标号 给一个起始地址 在程序最后结束起始地址来实现对代码段的装入 程序的 开始 先保留进入程序前的开始 先保留进入程序前的 dsds 并将 并将 0 0 以以 1616 位形式压入堆栈 接着 装入数据段 将位形式压入堆栈 接着 装入数据段 将 x x 的数据传送的数据传送 到到 axax 中 利用中 利用 addadd 指令实现指令实现 x yx y 并利用移位的形式实现乘 并利用移位的形式实现乘 8 8 的操作 用的操作 用 subsub 运算再扣除运算再扣除 x x 接着移 接着移 位实现除位实现除 2 2 的操作 最后 用的操作 最后 用 movmov 指令将指令将 axax 的内容传送到的内容传送到 resultresult 里 里 X Y 8 X 2 Z 天津大学计算机科学与技术学院实验报告 共 4 页 第 2 页 4 4 程序调试说明 程序调试说明 包括 调试情况 如上机时遇到的问题及解决办法 观察到的寄存器 存储器的内容或状态及 其分析 对程序设计技巧的总结及分析等 程序的输出结果及对结果的分析 实验的心得体会 以及诸如调试日期 文件存放位置等需要记录的信息 起始堆栈指针起始堆栈指针 sp 0040h ds 13BE axsp 0040h ds 13BE ax 为为 0 0 在实现对 在实现对 dsds 的保留时 的保留时 sp 003C sp 003C 内容为内容为 13BE13BE 和和 00000000 在实现 在实现 dsds 的装入时 的装入时 ax 13CE ds 13CEax 13CE ds 13CE 接着 接着 ax 0006ax 0006 000D 0068 0062 0031000D 0068 0062 0031 执行 执行 resultresult 传送数据的语句时 传送数据的语句时 ds 0005 31ds 0005 31 符合预期的设想 调试成功 符合预期的设想 调试成功 在程序设计时 心中的想法应和设计的程序吻合 心中应对程序的步骤清晰无比 以便在程序出错在程序设计时 心中的想法应和设计的程序吻合 心中应对程序的步骤清晰无比 以便在程序出错 时能及时找到错误 并给予纠正 然后要谨记程序的格式 对指令的使用要十分的清楚 尽量减少病时能及时找到错误 并给予纠正 然后要谨记程序的格式 对指令的使用要十分的清楚 尽量减少病 句的产生 句的产生 4 实验结果与结论实验结果与结论 经调试正确的程序的运行结果 实验对公式 z x y 8 x 2 进行运算 在定义数据段时 已经对 x 和 y 赋值 分别为 6 和 7 经 计算结果 z 49 而实验结果 result 0031h 与其符合 实验成功 五 五 使用说明使用说明 包括 程序的使用方法 调用方式 操作步骤等 要求输入信息的类型及格式 出错信息的含义及 程序的适用范围等 程序对公式程序对公式 z x y 8 x 2z x y 8 x 2 进行运算 只需在数据段定义时 修改进行运算 只需在数据段定义时 修改 x x 和和 y y 的值便可得到用户想要的结的值便可得到用户想要的结 果 程序的子程序果 程序的子程序 proc1proc1 可被指令可被指令 callcall 调用 调用 6 6 实验中遇到的问题及解决方法实验中遇到的问题及解决方法 试验过程中对移位指令试验过程中对移位指令 shlshl 的使用错误 直接用了的使用错误 直接用了 shlshl ax 3ax 3 使程序出错 在修正后 使程序出错 在修正后 movmov cl 3cl 3 ShlShl ax clax cl 后 程序可执行 后 程序可执行 天津大学计算机科学与技术学院实验报告 共 4 页 第 3 页 7 7 程序源代码程序源代码 datadata segmentsegment x x dwdw 6 6 y y dwdw 7 7 resultresult dwdw datadata endsends stackstack segmentsegment parapara stackstack dwdw 20h20h dup 0 dup 0 stackstack endsends codecode segmentsegment proc1proc1 procproc farfar assumeassume ds data cs code ss stackds data cs code ss stack start start pushpush dsds xorxor ax axax ax pushpush axax movmov ax dataax data movmov ds axds ax movmov ax xax x addadd ax yax y movmov cl 3cl 3 shlshl ax clax cl subsub ax xax x 天津大学计算机科学与技术学院实验

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论