实验一汇编语言程序设计一.ppt_第1页
实验一汇编语言程序设计一.ppt_第2页
实验一汇编语言程序设计一.ppt_第3页
实验一汇编语言程序设计一.ppt_第4页
实验一汇编语言程序设计一.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

实验一汇编语言程序设计 上课时间:2011年12月05日 指导教师:朱华贵 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 2 实验准备:实验准备: 用用DEBUGDEBUG验证程序段验证程序段 通常汇编教学中,汇编程序结构会在指令系统后 面讲,学生在学习指令系统时由于没有讲汇编程 序结构而无法编写汇编程序来加深对汇编指令的 理解,因此,在这里我们通过2个例子,介绍使用 DEBUG调试工具编写程序段来学习汇编指令。 有关DEBUG的常用命令的用法请参看相关资料和 课件。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 3 题目:非压缩BCD码的减法运算,做68-9 mov ax, 0608h mov bl, 09h sub al, bl aas 运行debug 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 4 首先用A命令输入程序 Debug中只使用16进制数 ,且无需加H后缀 直接用回车退出汇编编辑状态 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 5 使用T命令跟踪执行 第一个T命令要带上程序首地址 后面的T命令无需地址 标志位 当前指令执行后的当前指令执行后的 各寄存器的结果各寄存器的结果 这是还未执行这是还未执行 的下一条指令的下一条指令 的反汇编的反汇编 这是还未执行的下这是还未执行的下 一条指令的地址和一条指令的地址和 指令码指令码 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 6 下面给出DEBUG中标志位状态符号的含义。 标志为1时为0时 溢出OF 方向DF 中断IF 符号SF 零位ZF 辅助AF 奇偶PF 进位CF OV DN EI NG ZR AC PE CY NV UP DI PL NZ NA PO NC 调试完后用Q命令退出DEBUG。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 7 再举一个有访存操作的例子 MOV SI, 0050H ; (DS)=2000H MOV DI, 0100H ; (ES)=3000H MOV CX, 5 CLD REP MOVSBREP MOVSB 1)先用A命令输入程序 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 8 2)用R命令修改DS和ES寄存器到约定值 DS的原始值 输入的修改值 3)用D命令查看源数据区和目标数据区 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 9 4)用E命令初始化源数据区后再用D命令检查源数据 区和目的数据区 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 10 5)单步跟踪执行程序 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 11 6)执行后检查源数据区和目标数据区 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 12 注意,用A命令输入指令时,如果输入错误debug会立 即指出错误和位置。地址不会变化,以便用户修正指 令。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 13 附加附加2 2 汇编语言上机过程汇编语言上机过程 用用MASM 5.0MASM 5.0上机过程上机过程 第一步编辑: 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 14 第二步汇编: 可以不输入,用回车回应 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 15 修改好后再汇编: 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 16 第三步连接并执行: 可以直接用回车回应 执行 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 17 用DEBUG调试程序: 段值段值 偏移偏移 指令码指令码 反汇编的源码反汇编的源码 1)用U命令查看程序和目标码及指令地址 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 18 2)用T命令单步跟踪,逐条执行看中间结果,DEBUG 将显示每个寄存器以及各标志位的当前值 这是还未执行的下 一条指令这是MOV BX,SI的执行结果 标志位 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 19 3)对于系统功能调用,可以用G命令设置断点执行, 也可以用P命令跳过过程与系统功能服务程序。 设断点执行,断点设在INT 21H的后一句 INT 21H输出的一个字符 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 20 注意:DEBUG只支持16位汇编调试,如果要编写32位 汇编程序,需要用MASM 6.11汇编和连接,用 CodeView软件查看执行代码。但MASM 6.11中带的 CodeView 4.01可以查看32位程序的执行代码,不能进 行单步调试。要调试可以考虑使用SoftICE软件。 另外,VC嵌入汇编可以支持80486的所有指令,也支 持32位汇编。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 21 用VC6.0实现C+中嵌入汇编 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 22 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 23 建立源程序asmsample.cpp 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 24 将下列程序输入到asmsample.cpp中 #include int power2(int, int); void main(void) cout“2的6次方乘5等于:t“; coutpower2(5,6)endl; int power2(int num, int power) _asm mov eax, num ; 取第一个参数 mov ecx, power ; 取第二个参数 shl eax, cl ; 计算EAX=EAX(2CL) / 返回值存于EAX 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 25 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 26 编译执行后看结果 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 27 实验一 汇编语言程序设计(一) u实验1.1 汇编语言程序的调试与运行 u实验1.2 分支程序设计(一) 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 28 实验1.1 汇编语言程序的调试与运行 一实验目的 1学习数据传送和算术运算指令的用法 2熟悉在PC机上编辑、汇编、连接、调 试和运行汇编语言程序的过程。 二实验内容 将两个多位十进制数相加,要求被加数和 加数均以ASCII码形式各自顺序存放在 DATA1和DATA2为首的5个内存单元中,结 果送回DATA1处。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 29 三程序框图 主程序 子程序 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 30 四、参考程序 见实验指导书 五、调试步骤 1编辑源程序,建立一个以后缀为 ASM的文件. 2汇编源程序,检查程序有否错误,有错时回到编 辑状态,修改程序中错误行。无错时继续第3步 。 3.连接目标程序,产生可执行程序。 4.DEBUG调试可执行程序,记录数据段DS:0DS:10 的内容。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 31 4.DEBUG调试结果分析: 进入DEBUG程序后: 执行程序至星号处DS:0HDS:0AH 的内容 (CS:000FH) (CS:0076H) (CS:0086H) (CS:0090H) 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 32 n六思考题 n将上述程序改为5位数相加,结果为6位数的加法程序 。(需考虑进位) n简单叙述上机步骤和调试方法。 5.在操作系统状态下,运行程序,并记 录屏幕显示内容。 被 加 数加 数屏 幕 显 示 内 容 1273206815 1073243691 6508717631 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 33 实验1.2 分支程序设计(一) n一实验目的 掌握分支结构程序的编制方法。 n二实验内容与要求 编制程序实现如下操作: 设有10个学生成绩,分别统计低于60分 、6069分、7079分、8089分、90 99分及100分的人数,并存放于S5、 S6、S7、S8、S9、S10单元中。 彭虎,微机原理与接口技术(第二版),电子工业出版社,2008 34 实验

温馨提示

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

评论

0/150

提交评论